2016-09-19 3 views
1

Hallo, ich bin neu in Python und ich habe Probleme mit dem Wörterbuch zu drucken.Python Wie Wörterbuch in einer Zeile drucken?

Ich habe ein Wörterbuch wie unten gezeigt.

dictionary = {a:1,b:1,c:2} 

Wie kann ich Wörterbuch in einer Zeile wie unten gezeigt drucken?

a1b1c2 

Ich mag Schlüssel und Werte in einer Zeile drucken, konnte aber von mir nicht herausgefunden.

Ich würde Ihren Ratschlag schätzen!

+1

'd = {'a': 1, 'b': 1, 'c': 2}; "" .join ([k + str (v) für k, v in d.items()]) '? – alvas

+3

Bitte zeigen Sie Ihren Code versuchen und erklären, welche Schwierigkeiten Sie haben – idjaw

+0

a, b und c sind Variablen? – sisanared

Antwort

3

Mit einem Wörterbuch, z.B.

dictionary = {'a':1,'b':1,'c':2} 

Sie könnten versuchen:

print ''.join(['{0}{1}'.format(k, v) for k,v in dictionary.iteritems()]) 

in

Resultierende

a1c2b1

Wenn Angelegenheiten bestellen, versuchen, eine Verwendung von this Post beschrieben.

2

Wenn Sie eine Zeichenfolge wollen die Antwort enthalten, könnten Sie dies tun:

>>> dictionary = {'a':1,'b':1,'c':2} 
>>> result = "".join(str(key) + str(value) for key, value in dictionary.items()) 
>>> print(result) 
c2b1a1 

Diese verwendet die Join-Methode auf einer leeren Zeichenfolge. Diktate sind nicht geordnet, daher kann die Reihenfolge der Ausgabe variieren.

+0

Das funktioniert super! Danke Brad! – yusuke0426

+0

Beachten Sie, dass in Python 3.6 dicts jetzt geordnet sind (es sei denn, Sie haben viel damit zu tun), so dass die Reihenfolge der Ausgabe in 3.6+ deterministisch sein wird. –

+0

Wenn dies hilfreich war, bitte akzeptieren Sie die Antwort. –

Verwandte Themen