2016-03-03 3 views
-2

Я не понимаю, почему интерпретатор python не принимает мою матрицу. Я попытался изменить его с помощью различных типов деклараций, но это не сработало.NameError: name 'vote' не определен

x=1 

vote[1][2] 

for i in range(x): 
    for j in range(2**x): 
     vote[i][j]=False 

for i in range(x): 
     j=0 
     state=False 
     while j<2**x: 
      if j%2**(i): 
       state=not(state) 
      vote[i][j]=state 
      j=j+1 

for i in range(x): 
     j=0 
     while j<2**x: 
      print(vote[i][j], end=' ') 
      j=j+1 
     print('\n') 
+4

Так что вы ожидаете 'голос [1] [2]' сделать? Это просто * ссылки * имя, оно ничего не создает, если это то, что вы ожидали. –

ответ

3
vote[1][2] 

Здесь вы пытаетесь получить доступ к элементу из списка, но вы еще не создали список. Вам нужно создать объекты списка и присвоить его имени vote.

Например:

vote = [] 
for i in range(2): 
    vote.append([None]*3) 
print(vote) 
Смежные вопросы