Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
以下安全吗?
x = [1, 2, 3, 4] x = [y+5 for y in x]
列表理解是否首先评估,创建一个新列表,然后将该新列表分配给 x?有人告诉我,在迭代列表时更改列表是不安全的操作。
您在迭代列表时不会更改列表,而是在创建一个全新的列表,然后在对其进行评估后,将其绑定到名称x,因此一切都是安全的。
x
是的,很安全。
正如您所暗示的,首先评估右侧,然后将其结果(一个全新的列表)分配给 name x。您是对的,在迭代列表时更改列表是不安全的,但这不会发生在您的代码示例中,所以不用担心。