Skip to main content
 首页 » 编程设计

python之如何在赋值运算符的左侧使用列表理解

2025年05月04日14dyllove98

我的代码部分是:

v=[7,0,2,5,1]               # list with any numbers 
x={2,0,4}                   # set of indexes (where element of x < len(v) has been provided) 
for i in x:                 # this for loop is working 
    v[i]-=10 
print(v)                    # good result 
[-3, 0, -8, 5, -9] 

我的问题是如何用列表理解或其他更紧凑的表达式替换上面的 for 循环? 注意:打印仅显示 v 的新值 但任务将只修改原始 v 列表的某些元素。

请您参考如下方法:

这并不能完全回答问题,但除非您正在尝试参加一些代码高尔夫比赛,否则我希望您只看下面的内容。它简单明了 - 仅仅因为代码适合一行并不能使它变得更好。

for i in x:  
    v[i] -= 10