【发布时间】:2021-04-15 05:39:05
【问题描述】:
x = 2
y = 3
mylist = [ [x,y] for x in range(x+1) for y in range(y+1)]
print(mylist)
UnboundLocalError Traceback(最近调用 最后)在 3 4 ----> 5 mylist = [ [x,y] for x in range(x+1) for y in range(y+1)] 6 7 打印(我的列表)
在 (.0) 3 4 ----> 5 mylist = [ [x,y] for x in range(x+1) for y in range(y+1)] 6 7 打印(我的列表)
UnboundLocalError: 在赋值之前引用了局部变量 'y'
我不明白这里出了什么问题以及如何纠正它。
【问题讨论】:
-
万一您在下面的正确答案中看不到它,问题是您将变量
x和y用于两个相互冲突的目的:循环输入和循环变量。 Python 无法理顺它们。 -
这是一个关于作用域如何用于理解的有趣示例
标签: python python-3.x list list-comprehension