辞書にあるすべての使用可能なキーを印刷したいと思います。辞書のすべてのキーをPythonで1つ以上の値で印刷するには
d = {'a': 1, 'c': 1, 'o': 1, 'r': 2, 't': 1}
print(d.keys())
>>> dict_keys(['a', 'c', 'o', 'r', 't'])
しかし、あなたが本当にacorrt印刷したい場合は2 R だけでなくa, c, o, r, t
辞書にあるすべての使用可能なキーを印刷したいと思います。辞書のすべてのキーをPythonで1つ以上の値で印刷するには
d = {'a': 1, 'c': 1, 'o': 1, 'r': 2, 't': 1}
print(d.keys())
>>> dict_keys(['a', 'c', 'o', 'r', 't'])
しかし、あなたが本当にacorrt印刷したい場合は2 R だけでなくa, c, o, r, t
があるので、私はすべてのキーa, c, o, r, r, t
、 をプリントアウトしたい:
for key, value in d.items() :
for x in range (0, value):
print(key)
ない理由を確認してくださいあなたはそれをしたいと思うでしょう。上記のコメント作成者が指摘するように、キーは一意であり、変更するだけの値です。
itertools
を用いて変異体:値として
from itertools import repeat, chain
d = {'a': 1, 'c': 1, 'o': 1, 'r': 2, 't': 1}
lst = list(chain.from_iterable(repeat(letter, times)
for letter, times in d.items()))
print(lst) # ['r', 'r', 't', 'a', 'c', 'o']
すべてのキー(letter
)辞書にはrepeat
EDで何度でも(times
)を示唆しています。結果はchain
となり、リストコンストラクターで使用されます。 (代わりにtimes * [letter]
付き)
またはrepeat
なし:
from itertools import chain
lst = list(chain.from_iterable(times * [letter] for letter, times in d.items()))
あなたの答えをありがとう。そしてその説明。非常に威圧的ですが、あなたの説明は、コーディングの意味を理解するのに役立ちます。 – user8283740
脅迫はあなたのコードをもっと詰めるでしょう! ['chain.from_iterable(listOfLists)'](https://docs.python.org/3/library/itertools.html#itertools-recipes)は、ネストされたリストを平坦化するための標準的な方法です。 'itertools'はちょっと知りたい非常に貴重なツールセットです。がんばろう! –
は、誰かが答えを掲示し、私はそれをtweekすることができました、ありがとうございます。それはゲームのためのものであり、利用可能なすべての手紙を出しなければならない。
for k,v in d.items():
print(k, end = " ")
if v > 1:
print(k, end=" ")
ありがとうございました!あなたの知識を共有してください。
混乱を避けるために、 'd'に_2個の' r'があります。 '' r''は値 '2'に関連付けられます。テキストやその他のオブジェクトを含む他の値と関連付けることができます。 –