出于某种原因,此代码似乎无法在解释器中运行。当我碰到F5时,什么也没有发生,即使调试器似乎也没有认出它。我认为它与课程有关,因为当解释器被移除时似乎认识到其余的代码。请告诉我我做错了什么。 编辑:我已经多次重新启动解释器,我试图加载的任何其他代码运行良好,只是这个有问题。Python初学者无法运行代码
编辑:删除了初始打印语句 编辑:修改了邮政编码中的缩进。 编辑:我已经更新了以下注释中提到的修补程序的代码;然而,当我尝试运行代码时,空闲仍然没有做任何事情。顺便说一句,我正在使用python 3.1.1。
class sorting_class:
def __init__(self):
self.globali = 0
self.order = ['a', 'b', 'c', 'd']
self.orderi = 0
self.sortedlist = []
def sort(self, array):
carry, leave = []
for arrayi in array:
print ('run', arrayi)
if self.order[self.orderi] == arrayi[self.globali]:
carry.append(arrayi)
else:
if self.globali != 0:
leave.append(arrayi)
return carry, leave
def srt(self, array):
globalii = 0
carry, leave = my.sort(array)
while len(self.sortedlist) != len(array):
if len(carry) == 1:
self.sortedlist.append(carry)
arrayt = leave
self.globali = 1
self.orderi = 0
carry, leave = my.sort(arrayt)
elif len(carry) == 0:
if len(leave) != 0:
arrayt = leave
self.globali = 1
self.orderi = 1
my.sort(arrayt)
else:
self.arrayt
globalii += 1
self.orderi = globalii
self.globali = 0
my.sort(arrayt)
self.orderi = 0
else:
arrayt = carry
carry = []
self.globali += 1
carry, leave += my.sort(arrayt)
my = sorting_class()
x = ['ac', 'bc' ,'ab', 'da']
prin = my.srt(x)
print (prin)
我会建议不要在你的班级内调用my.sort()。只需使用self.sort()。 – 2010-03-15 05:31:20
'carry,leave = []'应该做什么?还'携带,离开+ = my.sort(arrayt)'? – 2010-03-15 05:46:13
进位,leave = []定义进位并保留为空列表。 – Pax 2010-03-15 05:57:43