0
私たちの先生は、ユーザーが要素のシンボルを入力できるようにするためのプログラムを作成することに挑戦し、プログラムはその要素に関する情報を出力する必要があります。辞書のキーから特定の値をプリントする方法は?
これを行うには、辞書を使用する必要があります。現在、私はこれを持っています:
elements = {"Li": "Lithium" " 12" " Alkali Metal"}
element = input("Enter an elemental symbol: ")
print (elements[element])
これは、Liに関連するすべてのものを印刷します。
Liと関連するすべてのものではなく、Alkali Metalと言うだけの出力しかできないのでしょうか? (はい、私は12がリチウムの原子番号ではないことを知っています)
を私はあなたの辞書がされるべきだと思います。現在、すべての値は単一のキーの中にあります –
@MoinuddinQuadri:おそらく '{" Li ":(" Lithium "、" 12 "、" Alkali Metal ")}'(または、 ":(" Lithium "、12、" Alkali Metal ")})、それぞれのキーはそれに関連する3つの離散データを持つように見えますが、OPは文字列リテラル連結ルールを理解せず、そのキーに複数の 'str'を関連付けます。または、匿名の 'tuple'の代わりに、' 'collections.namedtuple'(https://docs.python.org/3/library/collections.html#collections.namedtuple)を使用して値をアクセスすることができます名前付き属性。 – ShadowRanger
@PadraicCunningham:ええ、OPはどの情報をどのように出力するかを決定する方法について非常に明確ではありません。ルックアップするフィールドが一度設定され、繰り返し使用される場合、 'operator.attrgetter'が便利かもしれませんが、要素と属性の両方が変更されていないと仮定します。 – ShadowRanger