Функция не видит переменную-массив python
в результате выполнения кода возникает ошибка NameError
не видит массив numbers. пробовала через global (как в коде), но не помогает.
Если прописать просто методы без класса - работает. но в этом случае нужен класс
class MyWin(QtWidgets.QMainWindow):
...
numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'A', 'B', 'C', 'D', 'E', 'F']
def checking(self):
def changeEnable(firstIndex = 0, param = False):
global numbers
for i in range(firstIndex, len(numbers)):
getattr(self.ui, "pb_%s" %(numbers[i])).setEnabled(param)
changeEnable(0, True)
...
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
Попробуйте так:
class MyWin(QtWidgets.QMainWindow):
...
self.numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'A', 'B', 'C', 'D', 'E', 'F']
def checking(self):
def changeEnable(firstIndex = 0, param = False):
# global numbers
for i in range(firstIndex, len(self.numbers)):
getattr(self.ui, "pb_%s" %(self.numbers[i])).setEnabled(param)
changeEnable(0, True)
...