2011-01-29 7 views
6

テストプログラムでは、NFLのシンプルなモデルを作っています。辞書に値としてチームに記録(勝敗)を割り当てたいのですか?それは可能ですか?例えばPythonディクショナリの値に2つの値を指定できますか?

:レイブンズは13勝3は、それらの値の両方のために、できる辞書のアカウントを失う

afcNorth = ["Baltimore Ravens", "Pittsburgh Steelers", "Cleveland Browns", "Cincinatti Bengals"] 

を持っていた場合?もしそうなら、どうですか?辞書に

+2

あなたが投稿したコードは、文字列のリストではない辞書です。 –

答えて

16

確認、単にリストやタプル値を作る:

afc = {'Baltimore Ravens': (10,3), 'Pb Steelers': (3,4)} 

複雑になる場合は、タプルよりも複雑な構造を作成することができます。たとえば、辞書が好きな場合は辞書を辞書に入れ、辞書を辞書に入れて辞書を作成できます。

afc = {'Baltimore Ravens': {'wins':10,'losses': 3}, 'Pb Steelers': {'wins': 3,'losses': 4}} 

しかし、最終的にあなたがクラスに上に移動することがあります...

3

値は、この場合には、多分、より良いタプルであるか、またはすることができ、リスト:

d = {"Baltimore Ravens": [13, 3]} 
d["Baltimore Ravens"][0] += 1 
print d 
# {"Baltimore Ravens": [14, 3]} 
1

さて、あなたはタプル(またはリスト)を使用することができます。

records = {} 
records["Baltimore Ravens"] = (13, 3) 

かあなたは空想的で、Record.winsrecord.lossesでクラスを作ることができますが、それはおそらく過剰です。

(別の答えが指摘するように、リストを使用すると、あなたが役に立つかもしれない値、上の算術演算を行うことができますことを意味します。)

+0

任意の値に対して算術演算を行うことができます。リストやタプルを持つことで**値を簡単に**反復することができます。 (そしておそらく、あなたのために繰り返しを行う 'sum()'のようなものを使って数学をするでしょう)。 –

関連する問題