亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python字典報錯

Python字典報錯

慕神8560373 2016-12-28 14:14:13
#?coding=utf-8 def?init(data): ????data['first']?=?{} ????data['middle']?=?{} ????data['last']?=?{} def?lookup(data,?label,?name): ????return?data[label].get(name) def?store(data,?full_name): ????names?=?full_name.split() ????if?len(names)?==?2:?names.insert(1,?'') ????labels?=?'first',?'middle',?'last' ????for?name,?label?in?zip(labels,?names): ????????people?=?lookup(data,?label,?name) ????????if?people: ????????????people.append(full_name) ????????else: ????????????data[label][name]?=?[full_name] MyNames?=?{} init(MyNames) print?MyNames print?MyNames['first'].get('liang')??# store(MyNames,?'liang?bing?hui')'''C:\Python27\python.exe D:/liangbh/F/Lython/test7.pyTraceback (most recent call last):{'middle': {}, 'last': {}, 'first': {}}? File "D:/liangbh/F/Lython/test7.py", line 30, in <module>None? ? store(MyNames,'liang bing hui')? File "D:/liangbh/F/Lython/test7.py", line 19, in store? ? people = lookup(data, label, name)? File "D:/liangbh/F/Lython/test7.py", line 11, in lookup? ? return data[label].get(name)KeyError: 'liang''''
查看完整描述

3 回答

?
angie

TA貢獻56條經驗 獲得超8個贊

你在 get('liang')的時候,這個鍵還沒定義呢,當然 get 失敗呀,失敗了就拋出 KeyError 異???/p>

查看完整回答
反對 回復 2017-01-31
  • 3 回答
  • 0 關注
  • 1614 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號