anfängerfrage

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.
mephisto23
User
Beiträge: 18
Registriert: Montag 10. September 2007, 13:47

anfängerfrage

Beitragvon mephisto23 » Montag 10. September 2007, 13:51

hi leute ich bin noch python neuling. und hab mich mal an einem script versucht.
[code=]
def countletters(n, m):
count = 0
for char in n:
if char == m:
count = count + 1
return count


print "bitte zu suchenden buchstaben eingeben: "
m = raw_input()

print "bitte zu durchsuchende zeichenkette eingeben: "
n = raw_input()


print countletters(n, m)


[/code]

es funktioiert aber leider nicht.
ich glaube es liegt an der if anweisung. aber ich komm nicht dahinter wie ich das beheben kann.
besten dank für eure hilfe.
mfG
mephisto23
Benutzeravatar
tromai
User
Beiträge: 92
Registriert: Mittwoch 26. April 2006, 11:20

Beitragvon tromai » Montag 10. September 2007, 14:10

Also dein Script läuft bei mir einwandfrei.
Was für eine Meldung bekommst du denn?
Benutzeravatar
Mawilo
User
Beiträge: 446
Registriert: Sonntag 22. Februar 2004, 10:58
Wohnort: Sachsen
Kontaktdaten:

Beitragvon Mawilo » Montag 10. September 2007, 14:13

Das Skript zählt, wie oft ein Buchstabe in einer Zeichenkette vorkommt. Hat bei mir funktioniert.

Mawilo


Herzlich willkommen im Forum.
mephisto23
User
Beiträge: 18
Registriert: Montag 10. September 2007, 13:47

Beitragvon mephisto23 » Montag 10. September 2007, 14:18

also ich bekomm immer eine 0 zurück.
Benutzeravatar
Mawilo
User
Beiträge: 446
Registriert: Sonntag 22. Februar 2004, 10:58
Wohnort: Sachsen
Kontaktdaten:

Beitragvon Mawilo » Montag 10. September 2007, 14:28

Code: Alles auswählen

def countletters(n, m):
    count = 0
    for char in n:
        if char == m:
            count = count + 1
    return count
           
print "bitte zu suchenden buchstaben eingeben: "
#m = raw_input()
m = 'u'

print "bitte zu durchsuchende zeichenkette eingeben: "
#n = raw_input()
n = 'uuuuu'

print countletters(n, m)


Ich bekomme da eine 5 zurück. Sollte eigentlich bei Dir auch so sein.
mephisto23
User
Beiträge: 18
Registriert: Montag 10. September 2007, 13:47

Beitragvon mephisto23 » Montag 10. September 2007, 14:34

ok. wenn ich die eingabe weglasse funktionierts.
hast du eine idee warum es mit dem raw:input nicht klappt?
BlackJack

Beitragvon BlackJack » Montag 10. September 2007, 14:53

Kleiner Tip: Zeichenketten haben eine `count()`-Methode.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder