其他答案已经为您提供了使用while
循环(或for
循环)迭代字符串所需的代码,但我认为解释两种类型的循环之间的区别可能很有用。
while
循环重复一些代码,直到满足某个条件。例如:
import random
sum = 0
while sum < 100:
sum += random.randint(0,100) #add a random number between 0 and 100 to the sum
print sum
此代码将继续添加 0 到 100 之间的随机数,直到总数大于或等于 100。重要的是,此循环可以只运行一次(如果第一个随机数是 100)或者它可以永远运行(如果它保持选择 0 作为随机数)。在完成之前,我们无法预测循环将运行多少次。
for
循环基本上只是 while 循环,但是当我们希望循环运行预设次数时会使用它们。Javafor
循环通常使用某种计数器变量(下面我使用i
),并且通常使while
和for
循环之间的相似性更加明确。
for (int i=0; i < 10; i++) { //starting from 0, until i is 10, adding 1 each iteration
System.out.println(i);
}
这个循环将运行 10 次。这只是一个更好的写法:
int i = 0;
while (i < 10) { //until i is 10
System.out.println(i);
i++; //add one to i
}
for 循环最常见的用法是遍历一个列表(或一个字符串),Python 很容易做到这一点:
for item in myList:
print item
或者
for character in myString:
print character
但是,您不想使用for
循环。在这种情况下,您需要使用其索引查看每个字符。像这样:
print myString[0] #print the first character
print myString[len(myString) - 1] # print the last character.
知道可以for
只使用循环和计数器来创建循环,并且知道可以通过索引访问单个字符,现在应该很容易使用循环while
一次访问每个字符。while
但是,通常在这种情况下您会使用for
循环,因为它更易于阅读。