Seite 2 von 2
Re: Ergebnisse einer Funktion in einer nachfolgenden verwenden?
Verfasst: Freitag 15. März 2019, 20:10
von c.burkes
also ist hier
Code: Alles auswählen
print(password_generator(username_generator("Abe", "Simpson")))
gefragt und es gibt keine Moeglichkeit, auf den usernamen zuzugreifen *facepalm* got it .... hast Du mir ja jetzt auch zum dritten mal gesagt.

check
Re: Ergebnisse einer Funktion in einer nachfolgenden verwenden?
Verfasst: Freitag 15. März 2019, 20:12
von c.burkes
Danke fuer Eure Geduld!!
@blackjack ... auch fuer diese Aufklaerung thx

Re: Ergebnisse einer Funktion in einer nachfolgenden verwenden?
Verfasst: Freitag 15. März 2019, 20:17
von Sirius3
Wenn Du auf den username zugeifen willst, dann mußt Du halt das Ergebnis von `username_generator` an eine Variable binden.
Re: Ergebnisse einer Funktion in einer nachfolgenden verwenden?
Verfasst: Freitag 15. März 2019, 20:19
von Perlchamp
@ c.burkes:
in Anlehnung an deinem Code kannst du die if-Kontrollstruktur weglassen, wie Sirius3 bereits geschrieben hat:
Code: Alles auswählen
def username_generator(first_name, last_name):
username = first_name[:3] + last_name[:4]
return username
print(username_generator('Abe', 'Simpson'))
print()
def password_generator(username):
password = list()
password.append(username[-1] + username[1:])
return password
print(password_generator(username_generator('Abe', 'Simpson')))
Re: Ergebnisse einer Funktion in einer nachfolgenden verwenden?
Verfasst: Freitag 15. März 2019, 20:28
von c.burkes
@Sirius @Perlchamp ... gerade getestet .... das ist ja auch richtig nice

Python erkennt also "zu wenig" Buchstaben selbstaendig dennoch als relevanten Inhalt. Nice. Danke dafuer!!
Re: Ergebnisse einer Funktion in einer nachfolgenden verwenden?
Verfasst: Freitag 15. März 2019, 20:43
von Sirius3
Wenn klar ist, wie viele Elemente eine Liste enthält, schreibt man das am besten mit Eckigen Klammern:
Code: Alles auswählen
def password_generator(username):
password = [username[-1] + username[1:]]
return password
so dass man die Variable auch einsparen kann:
Code: Alles auswählen
def password_generator(username):
return [username[-1] + username[1:]]
Jetzt ist aber eine Liste, die immer exakt ein Element hat, nicht wirklich sinnvoll:
Code: Alles auswählen
def password_generator(username):
return username[-1] + username[1:]
Re: Ergebnisse einer Funktion in einer nachfolgenden verwenden?
Verfasst: Freitag 15. März 2019, 21:02
von __blackjack__
Und auch wenn es natürlich offensichtlich sein sollte: Das Passwort taugt natürlich nichts, das sollte man durch etwas sinnvolleres ersetzen.