Re: [问题] 函数的问题

楼主: zerof (猫橘毛发呆雕像)   2015-10-30 00:02:46
: zipcode = {"台北市": {"中正区": 100, "大同区": 103, "中山区": 104},"新北市": {"万里区":
: 207, "金山区": 208, "板桥区": 220, "汐止区": 221}}
: 当输入台北市的时候
: 就会印出台北市内所有区的邮递区号
: def fun (city):
: n=input('type city:')
: for n in city :
: print value for value in zipcode.get(city).values()
这里有几个明显的 bug:
1. 如果我用 city='台北市' 去 call fun(), 里面的 for 会变成迭代字串
2. 如果 city 不存在于 zipcode 里面,zipcode.get() 会抓不到东西;
而你没有给默认值,会 raise TypeError
: city=("台北市","新北市")
: 不知道要怎么改 还请各位高手帮忙!!谢谢
> q1. 有一个简单的解法,用 isinstance 去判断传进来(fun())的 city 再
> 决定是否要迭代
> q2. 简单解法是给默认值 {} (空字典)

Links booklink

Contact Us: admin [ a t ] ucptt.com