> > > > > def find(strng, ch, start, step=1): > > > > > index = start > > > > The problem lies here, if you do a print on index, it never gets past > > > > the first index of the number, so > > > > your while loop below goes into an infinite loop. > > > > > > > > For example: > > > > find('starfruit','t',0) <- First time will return 1 > > > > find('starfruit','t',1) <- Still returns 1. Infinite loop > > > > > > > > > while 0 <= index < len(strng): > > > > > if strng[index] == ch: > > > > > return index > > > > > index += step > > > > > return -1
Why are you returning -1 here? -1 is a valid list index. And with your last change, it makes your main condition valid. > > > > > > > > > > fruit="" > > > > > letter="" > > > > > fruit= raw_input("Enter a sort of fruit: ") > > > > > letter = raw_input("Enter the character which must be counted: ") > > > > > start=0 > > > > > aantal=0 > > > > > while 0 <=start < len(fruit): > > > > > x=find (fruit,letter, start) > > > > > aantal +=1 > > > > > start=x > > > > > print "De letter", letter , "komt", aantal , "maal voor in het > > > > > woord", fruit > > > > > > > > > > > > > HTH, > > > > Tino > > > > > > Hello, > > > > > > Your right. index get never past 1 > > > But in my opinion when something is found then x will be the place where > > > the character is be found. > > > After that the counter is increased and start gets the value of x. > > > So start should change. > > > > > > Now finding out why this is not happening. > > > > You're including the previous found index; so it will just find the > > character at that same index again. You need to start the next search one > > index further down the word. > > > Hello Evert. > > Stupid mistake. > I change start=x to start=x+1 > But still it's not working properly. > > I can see that on this example. > > Fruit : banaan > letter : a > > That a is being found at 2,4,5 which is correct but the programm don't end. > So there's another error somewhere, > > Roelof > > > > > > > > > > > But thanks for the help. > > > > > > Roelof > > > > > > _______________________________________________ > > > Tutor maillist - Tutor@python.org > > > To unsubscribe or change subscription options: > > > http://mail.python.org/mailman/listinfo/tutor > > > > _______________________________________________ > Tutor maillist - Tutor@python.org > To unsubscribe or change subscription options: > http://mail.python.org/mailman/listinfo/tutor _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor