我正在参加MIT 6 Programming with Python课程以及解决问题的每个人,包括教学,写下他们的for循环:
s="whataboutbob"
for char in range(len(s)):
不一样:
s="whataboutbob"
for char in s:
如果你可以使用变量,为什么有人会使用range和len函数?我错过了什么?我会问他们但是我正在单独做这个课程而论坛是空的。感谢。
答案 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