Ich möchte ein List-Element ausgeben, jedoch "direkt", d.H. die einzelnen Inhalte sollen direkt aneinandergereiht sein. Leider habe ich auch keine Ahnung wie man sowas nennt, weshalb ich euch um hilfe bitte
![Wink ;)](./images/smilies/icon_wink.gif)
gruß
Code: Alles auswählen
>>> print ''.join(['x','y','z'])
xyz
Code: Alles auswählen
File "/home/karsten/Desktop/test.py", line 53, in generate_pw
line = join(passwort)
NameError: global name 'join' is not defined
Code: Alles auswählen
passwort = [0]
Code: Alles auswählen
line = "".join(passwort)
Code: Alles auswählen
import Tkinter as tk
import random as rd
horizontal = "horizontal"
fontvar = "Waree"
passwort = [0]
def generate_pw():
counter = 0
string = ">"
# soll nachher das Passwort generieren
wert = bar.get()
for i in range(wert):
zahl = rd.randrange(9) # Zahl generieren, zufaellig
zufall = rd.randrange(2) #Zufaelige Zahl, fuer Buchstabenersetzung
if zufall == 1:
if zahl == 0:
passwort.append("O")
if zahl == 1:
passwort.append("i")
if zahl == 2:
passwort.append("z")
if zahl == 3:
passwort.append("e")
if zahl == 4:
passwort.append("a")
if zahl == 5:
passwort.append("s")
if zahl == 6:
passwort.append("G")
if zahl == 7:
passwort.append("L")
if zahl == 8:
passwort.append("B")
if zahl == 9:
passwort.append("G")
else:
passwort.append(zahl)
root = tk.Tk()
tk.Label(root, text="Dieses Programm generiert ihnen ein sicheres Passwort.", font=fontvar).pack()
tk.Label(root, text="Bitte geben Sie die Anzahl der zu verwendenen Stellen an!", font=fontvar).pack()
button = tk.Button(text="Generieren", command=generate_pw)
bar = tk.Scale(root, from_=0, to=200, orient=horizontal)
bar.pack()
button.pack()
root.mainloop()
Ja also dass mit der [0] ist um 'passwort' zu erstellen, sonst meckert er bei passwort.append nachher rum. Wusste nicht wie ich es sonst erstellen soll.2. Was soll das denn für ein "passwort" sein: [0] ? Eine Liste mit einem Element und das ist 0?
Wie heisst der Befehl? Kenne von C# nur foobar.ConvertToString, bloß wie er hier heisst weiss ich nichtMusst du vorher also noch umwandeln ...
karsten k hat geschrieben:Wie heisst der Befehl? Kenne von C# nur foobar.ConvertToString, bloß wie er hier heisst weiss ich nicht
Code: Alles auswählen
>>> str(7)
'7'
Code: Alles auswählen
from random import choice
pw = []
chars = "01234abcdefgh"
# die 8 kann man ja auch noch variieren ;-)
for i in xrange(8):
pw.append(choice(chars))
Code: Alles auswählen
dummy = ["a", "b"]
print "".join(dummy)
Code: Alles auswählen
passwort.append("OizeasGLBG"[zahl])
Code: Alles auswählen
>>> from string import letters, digits
>>> from random import choice
>>> from itertools import imap, repeat
>>> ''.join(imap(choice, repeat(letters + digits, 10)))
'vkv26kVKOV'
Geht. Aber Du hast ja auch Integers drin, dann klappt es natürlich nicht. Da wüßte ich auch keine Methode, außer eben eine eigene Funktion zu schreiben.
Code: Alles auswählen
print "".join(map(str, range(20)))
so doof bin ich nun auch wieder nichtaudax hat geschrieben:Nicht das von Galileo, oder? :/
ach ich lese dass z.Z. wenn ich morgens in der Bahn zur Schule sitze oder in ńer Freistunde - dafür haben sich die 10€ schon gelohntLeonidas hat geschrieben:Vom Kurz & gut habe ich zwei im Regal und schaue da nie rein, weil da nicht mehr steht als auch Online in aktueller und umfassender verfügbar.