列表理解不应该限制变量范围。
user = <user1>
project.users = [<user1>, <user2>, <user3>, <user4>]
project_usernames = [user.username for user in project.users]
我正在使用 project.users 上的列表理解生成列表 project_usernames。但它正在修改<user4>
之前的用户<user1>
。
我在我的一个项目中使用了上述流程,但由于这个错误,它无法正常工作。
后来当我在列表理解中更改变量“用户”时,它工作正常。
内的实体<>
是指<object>
我知道解释器逐行工作,但是列表理解中使用的变量范围不应该在迭代结束后消失吗?