本の「Learn Python the hard way」ページの演習をしようとしています: 106. 例は以下のとおりです:
cities = {'CA': 'San Francisco', 'MI': 'Detroit', 'FL': 'Jacksonville'}
cities['NY'] = 'New York'
cities['OR'] = 'Portland'
def find_city(themap, state):
if state in themap:
return themap[state]
else:
return "Not found."
# ok pay attention!
cities['_find'] = find_city
while True:
print "State? (ENTER to quit)",
state = raw_input("> ")
if not state: break
# this line is the most important ever! study!
city_found = cities['_find'](cities, state)
print city_found
私は何を理解してcities['_find'] = find_city
いないのですか?とは_find
? 特に、なぜアンダースコアなのですか? 同様に、何が何をするのかわかりcity_found = cities['_find'](cities, state)
ません。同じ質問に関する同様の投稿を見たことがあります:
Learn python the hard way practice 40 help
これは基本的cities['_find'] = find_city
に、関数 find_city を辞書に追加すると言っていますが、何が機能するのかまだわかりcity_found = cities['_find'](cities, state)
ません(?)
誰かが上記の2行を説明してくれたら本当にありがたいです. 御時間ありがとうございます。