python中for循环,使用列表解析,报错
问题描述:
a=[1,2,3]
以下分别用3条语句运行,其中第1、2条都可以,但第3条报错,想不明白为啥……
[print(a[i]) for i in range(0,3)]#正确运行
a=[333 for i in range(0,3)]#正确运行
[a[i]=333 for i in range(0,3)]#报错
答
列表解析式中迭代元素不能用赋值表达式,用赋值的形式修改列表元素就要用for循环结构:
for i in range(0, 3):
a[i] = 333
print(a)
#[333, 333, 333]
答
是不是要写成[(a[i]=333) for i in range(0,3)]
答
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632