2017-06-01 9 views
1

辞書をきれいにプリントアウトしようとしていますが、その方法はわかりません。キーとリストを含む辞書を印刷する

私は辞書を持っている場合は

mydict = {'Jackson' :['One', 'Two', 'Three'], 'Jeffery' :['Four', 'Five', 'Six']} 

私はこのようにそれをプリントアウトする方法を:

Jackson One Two Three 

Jeffery Four Five Six 

イムだけ印刷する方法を見つけ出すのに苦労し、私はforループを使用する必要が推測リストコンポーネントを取り出します。

+1

'for'ループは次のようになります追求して良いアイデアを持って、あなたが特定の問題に戻って苦労した場合は、行くとしています。注意: 'str.join()'もあなたの将来にあるかもしれません。 – AChampion

+0

私はdownvoteを理解していますが、元に戻ってしまうと、これがdupでない限り有用なQ/Aになるようです。ちょっと標準的なようだ。 –

+0

あなたは何か特定のものがあなたの進歩を妨げるかどうか試してみるべきです –

答えて

1

この問題を解決するための別の方法は、

def printDictionary(mydict): 
    for i in mydict.keys(): 
     print(i + " " + (" ".join(mydict[i]))) 

mydict = mydict = {'Jackson' :['One', 'Two', 'Three'], 'Jeffery' :['Four', 'Five', 'Six']} 
printDictionary(mydict) 
0

Python3.6では、あなたはキーでフォーマットを使用することができ、3.xの古いバージョンのf文字列

>>> mydict = { 
...  'Jackson' :['One', 'Two', 'Three'], 
...  'Jeffery' :['Four','Five', 'Six'] 
... } 

>>> for k,v in mydict.items(): 
...  print(f"{k} {' '.join(v)}") 
... 
Jackson One Two Three 
Jeffery Four Five Six 

を使用することができます

>>> for k,v in mydict.items(): 
...  print("{k} {vstr}".format(k=k, vstr=" ".join(v))) 
... 
Jackson One Two Three 
Jeffery Four Five Six 

又は位置

>>> for k,v in mydict.items(): 
...  print("{} {}".format(k, " ".join(v))) 
... 
Jackson One Two Three 
Jeffery Four Five Six 

あなたが簡潔になりたい場合は、あなたもちょうど開梱タプルを使用することができます(ただし、出力形式を変更する必要がある場合、それはかなり柔軟性がないのですが)

>>> for k, v in mydict.items(): 
...  print(k, *v) 
... 
Jackson One Two Three 
Jeffery Four Five Six 
0
for key in mydict: 
    print(key,end=' ') 
    for i in mydict[key]: 
     print(i,end='') 
    print("\n") 
関連する問題