Я использовал это кодирование в функции пузырьковой сортировки для пошагового расчета, сделанного для сортировки
def bubble(self):
def bubble_sort ( array ) :
swap_test = False
for i in range ( 0, len ( array ) - 1 ):
for j in range ( 0, len ( array ) - i - 1 ):
if array[j] > array[j + 1] :
array[j], array[j + 1] = array[j + 1], array[j]#elegentan way of swap
swap_test = True
self.textbox()
else:
self.sortingend()
break
#if swap_test == False:
#else:
#self.create_label()
#print('bubble to be implemented')
bubble_sort(self.nums)
return self.nums
и для двух функций sortingend () и textbox () я использовал эти два кода
def sortingend(self):
self.label21 = Label(self, text="Sorting Finish", width=25, height=2)
self.label21.grid(row=7, column=1, sticky=N)
def textbox(self):
count=0
count +=1
self.label1 = Label(self, text="Step: %i " % count, width=25, height=2)
self.label1.grid(row=6, column=1, sticky=N)
но почему-то это не работает, и я получаю только ошибку для count + = 1, который не определен, но если я добавлю count = o в sortingend (), то каждый раз счетчик будет начинаться с o.
Также, когда я запускаю пузырьковую сортировку на первом шаге, она показывает, что сортировка завершена. как это исправить.