7.3并且想知道为什么在下面的例子中字符串“racecar”被视为int类型。 在此先感谢您的任何帮助
>>> s = "racecar"
>>> for i in len(s):
print(s[i])
Traceback (most recent call last):
File "<pyshell#9>", line 1, in <module>
for i in len(s):
TypeError: 'int' object is not iterable
答案 0 :(得分:8)
因为您需要使用range(len(s))
来获取要迭代的整数列表(或Python 2.x中的xrange
)。
或者,您可以使用enumerate()
:
for i, val in enumerate(s):
print(i)
print(val) # equivalent to s[i]
或者首先不使用索引:
for c in s:
print(c)
答案 1 :(得分:4)
你应该这样做:
for i in xrange(len(s)):