Lassen Sie uns sagen, dass ich so etwas wie dieses:generieren String aus einem Wörterbuch
counts = {"chuck" : 1 , "annie" : 42, "jan" : 100}
lst = list(counts.keys())
lst.sort()
for key in lst:
print(key, counts[key])
Der Ausgang
chuck 1
annie 42
jan 100
wäre, wenn ich diesen Effekt mit einer Schnur erreichen wollte, würde die Zeichenfolge dargestellt werden als
"chuck 1\nannie 42\njan 100\n"
Nun, wenn ich diese Zeichenfolge erreichen wollte ich so etwas wie versuchen könnte:
for key, value in counts.items():
if value == 1:
counts[key] = "1\n"
elif value == 42:
counts[key] = "42\n"
elif value == 100:
counts[key] = "100\n"
temp = list(counts.items())
temp.sort()
myStr = str(temp)
for char in myStr:
if char in "[(',)]":
myStr = myStr.replace(char,'')
finalStr = "" + myStr[0:19] + "" + myStr[20:37] + "" + myStr[38:53] + ""
Aber yeah, ich denke, ich bin überkompliziert Dinge ... Was wäre ein besserer und einfacher Weg?
Danke!
Können Sie versuchen zu erklären, was Sie in der menschlichen Sprache suchen, so müssen wir nicht als Python-Interpreter handeln, um Ihre Frage zu verstehen? – arekolek
Ich möchte die obige Zeichenfolge generieren. – Riggs
Möchten Sie nach Schlüssel oder nach Wert sortieren? Die anfängliche Schleife zeigt Ihnen die Sortierung nach Schlüssel, aber die Ausgabe, die Sie anzeigen, wird stattdessen nach Wert sortiert. – Blckknght