Python 3.8
Win 7
День добрый. После выполнения следующего кода в выходном массиве появляется от 2 до 3 лишних элементов. Кто-нибудь может найти ошибку?
Пока поставил заглушку, но всё-таки интересно, что приводит к появлению бага. Теоретически, длина clast должна равняться длине х, а получается + 2-3
Win 7
День добрый. После выполнения следующего кода в выходном массиве появляется от 2 до 3 лишних элементов. Кто-нибудь может найти ошибку?
Python:
mis = []
sint = []
i =0
clast = []
x = name_var.data_to_sint[self.axix_x.currentText()].tolist()#срез с использованием панд по столбцу, выбранному в выпадающем списке.
dtp = name_var.data_to_sint[self.axix_y.currentText()].tolist()
while i < len(x):
j = 0
sint.clear()
while j < self.tbl_layer.rowCount():#количество строк в таблице соответствует количеству слоев, описываемых параметрами, указанными в столбцах.
lay = l[j]
sint.append(self.calc_zal(lay[0], lay[1], lay[2], x[i]))#тут передаются в формулу значения коэфициентов.
j += 1
k = 0
mis.clear()
while k < len(sint):
mis.append(float(dtp[i]) - sint[k])#вычисляется разница между замеренным значением и расчетным
k += 1
for q, g in enumerate(mis):#присваивается номер слоя, с минимальной ошибкой
if g == min(mis, key=abs):
clast.append(q)
i += 1
print(clast)