У меня есть следующий код, использующий полный список:
x = int ( input())
y = int ( input())
z = int ( input())
n = int ( input())
ret_list = [ (x,y,z) for x in range(x+1) for y in range(y+1) for z in
range(z+1) if x+y+z!=n ]
print(ret_list)
в python2 работает как положено.Однако в python3 я получаю следующую ошибку:
print([ (x,y,z) for x in range(x+1) for y in range(y+1) for z in range(z+1) if
x+y+z!=n ])
File "tester.py", line 16, in <listcomp>
print([ (x,y,z) for x in range(x+1) for y in range(y+1) for z in range(z+1) if
x+y+z!=n ])
UnboundLocalError: local variable 'y' referenced before assignment
Мне просто интересно, что я делаю неправильно.Я мог бы что-то упустить в Python3, хотя это прекрасно работает в Python2.Спасибо.