霍格沃茨学院新学期伊始,邓布利多教授打算拜访格兰芬多的新晋魔法师。他得到了每个魔法师的住 址,例如
"432 Main Long Road St. Louisville OH 43071"
作为一个名单。基本的邮政编码格式通常由两个大写字母、一个空格和五个数字组成。要访问的客户列表是由所有地址组成的字符串,每个地址之间用逗号分隔,例如:
"123 Main Street St. Louisville OH 43071,432 Main Long Road St. Louisville OH 43071,786 High Street Pollocksville NY 56432"
任务
亲爱的魔法师让我们来编写一个函数,按邮政编码对列表进行分组吧,以便邓布利多教授的旅行。
函数 travel 将采用两个参数 r (表示所有客户端的地址列表作为字符串)和 zipcode(表示邮编),并返回以下格式的字符串:
zipcode:street and town,street and town,.../house number,house number,...
街道号码必须与它们所属的街道的顺序相同。如果给定的邮政编码不存在于客户端地址列表中,则返回“邮政编码:/”
示例
r = "123 Main Street St. Louisville OH 43071,432 Main Long Road St. Louisville OH 43071,786 High Street Pollocksville NY 56432"
travel(r, "OH 43071") 返回--> "OH 43071:Main Street St. Louisville,Main Long Road St. Louisville/123,432"
travel(r, "NY 56432") 返回--> "NY 56432:High Street Pollocksville/786"
travel(r, "NY 5643") 返回--> "NY 5643:/"
题目难度:简单
题目来源:codewars
def travel(address, zipcode):
pass
ad = "123 Main Street St. Louisville OH 43071,432 Main Long Road St. Louisville OH 43071,786 High Street Pollocksville NY 56432"
assert travel(ad, "OH 43071") == "OH 43071:Main Street St. Louisville,Main Long Road St. Louisville/123,432"
assert travel(ad, "NY 56432") == "NY 56432:High Street Pollocksville/786"
assert travel(ad, "NY 5643") == "NY 5643:/"