Python错误集锦:list赋值时提示can only assign an iterable

原文链接:http://www.juzicode.com/python-error-list-can-only-assign-an-iterable

错误提示:

list赋值时提示can only assign an iterable

#juzicode.com/vx:桔子code
l = [0,1,2,3,4,5,6,7,8,9]
l[2:] = 21
print(l)
==========运行结果:
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-2-04888e1f27c8> in <module>
      1 #juzicode.com/vx:桔子code
      2 l = [0,1,2,3,4,5,6,7,8,9]
----> 3 l[2:] = 21
      4 print(l)

TypeError: can only assign an iterable

错误原因:

1、如果是对单个元素赋值,比如l[2]=21这种形式只对下标为2的元素做修改时,赋值对象可以是单个数值,但是当使用切片方式时l[2:],赋值的对象必须是可迭代的对象,比如list,tuple等。

解决方法:

1、赋值对象改成可迭代的list形式:

#juzicode.com/vx:桔子code
l = [0,1,2,3,4,5,6,7,8,9]
l[2:] = [21]
print(l)
==========运行结果:
[0, 1, 21]

扩展内容:

  1. Python基础教程2c–数据类型-list(列表)


如果本文还没有完全解决你的疑惑,你也可以在微信公众号“桔子code”后台给我留言,欢迎一起探讨交流。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注