Funktion mit jedem zweiten Buchstaben groß
-
- User
- Beiträge: 31
- Registriert: Donnerstag 2. April 2020, 11:08
Die version 3 meine ich!
-
- User
- Beiträge: 31
- Registriert: Donnerstag 2. April 2020, 11:08
Es sit Version 3!
- __blackjack__
- User
- Beiträge: 13137
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
Zählen? Modulo? Unsinn! Ich biete:
Code: Alles auswählen
from itertools import cycle
text = "ich nehme gerade in der schule das thema python durch und habe mich da etwas ausprobiert"
print("".join(f(c) for f, c in zip(cycle([str.lower, str.upper]), text)))
“There will always be things we wish to say in our programs that in all known languages can only be said poorly.” — Alan J. Perlis
-
- User
- Beiträge: 31
- Registriert: Donnerstag 2. April 2020, 11:08
Vielen dank. Das hat mir sehr geholfen!
-
- User
- Beiträge: 31
- Registriert: Donnerstag 2. April 2020, 11:08
Das stimmt, beide Lösungen haben mir geholfen! Vielen Dank
@pythonkid: Denk aber bitte daran, wenn du Lösungen aus dem Internet verwendest die Quelle anzugeben. Außerdem ist es sinnvoll nur Code abzugeben den man auch selber versteht, denn der Lehrer könnte auch nachfragen was genau der Codeschnipsel macht.
-
- User
- Beiträge: 31
- Registriert: Donnerstag 2. April 2020, 11:08
Das werde ich tun ich habe diesen Code jedoch sehr gut verstanden!!
Oder wenn man nicht für jeden Buchstaben die lower() bzw upper() Methode aufrufen will:__blackjack__ hat geschrieben: ↑Donnerstag 2. April 2020, 14:08 Zählen? Modulo? Unsinn! Ich biete:Code: Alles auswählen
from itertools import cycle text = "ich nehme gerade in der schule das thema python durch und habe mich da etwas ausprobiert" print("".join(f(c) for f, c in zip(cycle([str.lower, str.upper]), text)))
Code: Alles auswählen
from itertools import chain
text = "ich nehme gerade in der schule das thema python durch und habe mich da etwas ausprobiert"
result = chain.from_iterable(zip(text[::2].lower(), text[1::2].upper()))
print("".join(result))