PYTHON Variable um 1 erhöhen

Finlay

Cadet 2nd Year
Registriert
Mai 2017
Beiträge
30
Guten Abend, die for-Schleife soll den Buchstaben A oder a im String zählen. Also in diesem Fall "Autobahn" zweimal. Doch als Ergebnis erhalte ich immer 8? Wäre nett, könntet ihr mir helfen! :)

Code:
wort = "Autobahn"
zaehler = 0
for i in wort:
	if i == "a" or "A":
		zaehler = zaehler + 1
print(zaehler)
 
Code:
if i == "a" or "A":

Der Vergleich ist nicht vollständig und die Bedingung immer erfüllt. Richtig ist
Code:
if i == "a" or i == "A":

bzw kann man das auch etwas pythonischer ausdrücken:
Code:
if i in ["a","A"]:
 
Noch eine Frage: gibt es eine elegantere Möglichkeit, einen Integer um eins zu erhöhen, ohne:
Code:
int = int + 1
zu verwenden?
 
Finlay schrieb:
Möglichkeit, einen Integer um eins zu erhöhen, ohne:
Code:
int = int + 1
zu verwenden?

Ach ja, die guten alten Zeiten. Früher, als wir noch jung waren, haben wir in Perl geschrieben:
Code:
++$zaehler
und für das gesamte Problem:
Code:
print 'Autobahn' =~ y/Aa//;
Ist etwas off topic, aber die Jugend soll ja auch mal sehen, wie das früher gemacht wurde ;)
Ergänzung ()

Sturm91 schrieb:
Code:
string.count()
​Wäre vll. noch etwas einfacher
Kann string.count() Regex? Er hat ja verschiedene Buchstaben zu finden.
 
Zuletzt bearbeitet:
@blöderidiot:
print 'Autobahn' =~ y/Aa//;
Jetzt weißt Du auch, warum Perl so ziemlich ausgestorben ist... ist zwar eine gute Sprache, um Dinge in Verbindung mit der OS-Pflege zu erledigen, aber Programmiererfreundlich ist anders. :D

Fachlich ist ja zum Problem des Threadstarters alles gesagt. ^^

Regards, Bigfoot29
 
Zurück
Oben