Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
from random import shuffle
liste = "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Ä Ö Ü ẞ \
a b c d e f g h i j k l m n o p q r s t u v w x y z ä ö ü ß \
1 2 3 4 5 6 7 8 9 0 \
° ^ ! " "§" "$" "%" "&" "/" "{" "}" "(" ")" "[" "]" "=" "?" "\" ` ´ + * ~ # ' , ; . : - _ < > | ".upper().split()
shuffle(liste)
for länge in range(2):
el1=liste.pop()
print("{}".format(el1))
Mein Problem ist jetzt, dass wenn ich diesen Code ausführe, die Buchstaben/Zahlen in mehreren Zeilen ausgegeben werden und nicht in einer. Woran liegt das?
Was genau hast du denn vor? Du hast einen String der durch split() zu einer Liste mit einzelnen Elementen wird. Mit pop() entfernst du immer ein Element dieser Liste und weist es einer Variablen zu, die du im Anschluss ausgibst. Ich vermute, du möchtest den String durchmischen und wieder so ausgeben? Dann musst du aus der Liste wieder einen String machen, den du dann printen kannst.
Machen kannst du das mit " ".join(liste)
When we say computer, we mean the electronic computer.
@Vinz12: Brauchst Du danach `liste` noch? Falls nicht, sieht mir das eher nach einem Fall für `random.sample()` aus.
Und Dir ist klar, das die Wahrscheinlichkeit für Buchstaben höher ist, weil die effektiv alle zweimal vorkommen‽ Und es können natürlich auch zwei gleiche Buchstaben als Ergebnis heraus kommen. Soll das so?
“It is easier to optimize correct code than to correct optimized code.” — Bill Harlan