为了账号安全,请及时绑定邮箱和手机立即绑定

python 的keyerror问题

python 的keyerror问题

慕姐4208626 2019-02-23 18:16:33
我在敲《笨办法学python》这本书时遇到的问题,习题38。 我的代码如下: # create a mapping of state to abbreviation states = { 'Oregon': 'OR', 'Florida': 'FL', 'California': 'CA', 'New York': 'NY', 'Michigan': 'MI' } #create a basic set of states and some cites in them cities = { 'CA': 'San Francisco', 'MI': 'Detroit', 'Fl': 'Jacksonville' } # add some more cities cities['NY'] = 'New York' cities['OR'] = 'Portland' # print out some cities print '-' * 10 print "NY State has: ", cities['NY'] print "OR State has: ", cities['OR'] # print some states print '-' * 10 print "Michigan's abbreviation is: ", states['Michigan'] print "Florida's abbreviation is: ", states['Florida'] # do it by using the state then cities dict print '-' * 10 print "Michigan has: ", cities[states['Michigan']] print "Florida has: ", cities[states['Florida']] # print evert state abbreviation print '-' * 10 for state, abbrev in states.items(): print "%s is abbreviated %s" % (state, abbrev) # now do both at the same time print '-' * 10 for state, abbrev in states.items(): print "%s state is abbreviated %s has city %s" % ( state, abbrev, cities[abbrev]) print '-' * 10 # safely get a abbreviation by states might not be there state = states.get('Texas', None) if not state: print "Sorry, no Texas." # get a city with a default value city = cities.get('TX', 'Does Not Exist') print "The city for the state 'TX' is: %s " % city 命令行的信息如下: ---------- NY State has: New York OR State has: Portland ---------- Michigan's abbreviation is: MI Florida's abbreviation is: FL ---------- Michigan has: Detroit Florida has: Traceback (most recent call last): File "python_day1.py", line 34, in <module> print "Florida has: ", cities[states['Florida']] KeyError: 'FL' 为什么会出现Keyerror呢?
查看完整描述

1 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

请注意大小写

python#create a basic set of states and some cites in them
cities = {
    'CA': 'San Francisco',
    'MI': 'Detroit',
    'Fl': 'Jacksonville'  # l 是小写, 请改为 'FL'
}
查看完整回答
反对 回复 2019-03-01
  • 1 回答
  • 0 关注
  • 1525 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信