對於一個測試程序,我正在製作一個簡單的NFL模型。我想爲一個團隊分配一個記錄(勝利和失敗)作爲字典中的一個值?那可能嗎?Python字典中的值是否可以有兩個值?
例如:
afcNorth = ["Baltimore Ravens", "Pittsburgh Steelers", "Cleveland Browns", "Cincinatti Bengals"]
如果烏鴉了13勝3敗,可以在字典中佔這兩個值嗎?如果是這樣,怎麼樣?
對於一個測試程序,我正在製作一個簡單的NFL模型。我想爲一個團隊分配一個記錄(勝利和失敗)作爲字典中的一個值?那可能嗎?Python字典中的值是否可以有兩個值?
例如:
afcNorth = ["Baltimore Ravens", "Pittsburgh Steelers", "Cleveland Browns", "Cincinatti Bengals"]
如果烏鴉了13勝3敗,可以在字典中佔這兩個值嗎?如果是這樣,怎麼樣?
肯定,只是使值列表或元組:
afc = {'Baltimore Ravens': (10,3), 'Pb Steelers': (3,4)}
如果它變得更加複雜,您可能想要製作比元組更復雜的結構 - 例如,如果您喜歡字典,可以在字典中放置字典,以便在字典中添加字典。
afc = {'Baltimore Ravens': {'wins':10,'losses': 3}, 'Pb Steelers': {'wins': 3,'losses': 4}}
但最終你可能想向上移動到類...
在字典中的值可以是元組或者,也許在這種情況下更好,列表:
d = {"Baltimore Ravens": [13, 3]}
d["Baltimore Ravens"][0] += 1
print d
# {"Baltimore Ravens": [14, 3]}
那麼,你可以使用一個元組(或列表):
records = {}
records["Baltimore Ravens"] = (13, 3)
或者你可能會喜歡,並Record
類與Record.wins
和record.losses
,但這可能是矯枉過正。
(作爲另一個答案指出,使用列表意味着,你可以在值,這可能是有用的做算術題。)
您可以對任何值進行算術運算。擁有一個列表或元組可以讓您輕鬆**迭代**值。 (也許,用像sum()這樣的東西爲你做迭代的算術。) – 2011-01-30 00:11:54
你已經發布的代碼是一個字符串列表,而不是一本字典。 – 2011-01-29 23:58:45