zki*_*and 3 python loops while-loop
我已经阅读了很多关于while循环的主题,我找不到一个告诉我自己的代码错误.我正在努力学习Python,我编写了这段代码,以满足练习练习33的练习练习#1.我无法弄清楚当我输入原始数据时循环不会终止的原因.
numbers = []
def number_uno(z):
i = 0
while i < z:
print "At the top i is %d" % i
numbers.append(i)
i += 1
print "Numbers now: ", numbers
print "At the bottom i is %d" % i
print "Pick a random number: "
z = raw_input("> ")
number_uno(z)
print "Done"
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?它只是不断向"i"添加1并且不会停止打印.
谢谢,扎克
raw_input
返回一个字符串.当你将它传递给你的函数时,你要比较一个整数和一个字符串.请注意,python3.x中不推荐使用此行为.你不能用这种方式将整数与python 3.x中的字符串进行比较.(它会提出一个TypeError
).
你可以很容易地解决这个问题:
number_uno(int(z))
Run Code Online (Sandbox Code Playgroud)
应该运行正常.