用于noob的Python for循环

时间:2017-07-14 18:38:07

标签: python

我正在参加MIT 6 Programming with Python课程以及解决问题的每个人,包括教学,写下他们的for循环:

s="whataboutbob"
for char in range(len(s)):

不一样:

s="whataboutbob"
 for char in s: 

如果你可以使用变量,为什么有人会使用range和len函数?我错过了什么?我会问他们但是我正在单独做这个课程而论坛是空的。感谢。

5 个答案:

答案 0 :(得分:2)

他们不是一回事。

for char in s:
    print(char)

将在s中打印字符。我是'w','h','a'等等。

for n in range(len(s)):
    print(n)

将打印数字 0,1,2等

答案 1 :(得分:2)

如果你需要在python中使用列表或字符串的索引进行某种操作,那么你将使用range函数。从这个意义上说,迭代范围可以提供更大的灵活性。

使用for循环时的另一种选择是使用enumerate函数。如果你要写

s="whataboutbob"
for n, char in enumerate(s):

然后在你的循环中你可以使用变量n来引用字符串中的索引,使用变量char来引用该索引处的实际字符。

答案 2 :(得分:0)

对于范围内的char(len(s)):迭代从0到字符串长度的数字,另一个循环迭代字符串的字符:w,h,a,t,...它不相同。< / p>

答案 3 :(得分:0)

len()函数从0开始获取当前使用的字符数。例如,在apple中, a 将为0, > p 将为1,等等。

另一方面

for char in (variable):
    print char

将打印该变量中的每个字母,就像 a-p-p-l-e

答案 4 :(得分:0)

是同一件事:

s="whataboutbob"
for char in s:
    print(char)

请给我们一个结果

w
h
a
t
a
b
o
u
t
b
o
b

白痴

s="whataboutbob"
for char in range(len(s)):
    print(char)

会给我们这个结果:

0
1
2
3
4
5
6
7
8
9
10
11