3
我已经阅读了很多关于while循环的主题,但是我找不到一个告诉我我的代码有什么问题。我正在学习Python的难题,我编写了这段代码,以便满足练习33的练习#1。我不知道为什么当我输入原始数据时循环不会终止。Python:虽然循环不会终止
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"
任何想法?它只是加1到“我”,并不会停止打印。
感谢, 扎克
我想知道为什么它甚至允许在Python2中,结果的含义是什么。 –
@LevLevitsky - 在python2中,排序由对象类型决定,但依赖于实现。换句话说,'1>“foo”'会给出与'100>“栏”'相同的结果,但实际得到的结果没有很好的定义。 – mgilson
在CPython 2.x中,比较不同类型对象时的默认行为是将它们的类型作为字符串进行比较。因此,所有整数都小于所有字符串,因为'“int”<“str”'。这是为了按类型分类对象,同时对包含各种类型的列表进行排序,但我不相信其他Python实现也必须这样做。 – kindall