Python_异常处理:TypeError: can only assign an iterable

TypeError: can only assign an iterable

说明:

在python中,用List[0:3] = ‘XXX’,不会产生错误,使下标为0,1,2的元素赋值为‘xxxx’;这是因为String字符串本身在python里就是一个字符数组,是可以进行迭代操作的。

而List[0:2] = 1中,就会产生错误:TypeError: can only assign an iterable

这是因为整型1,不具有迭代能力,它就是一个值。未达到目的,写成List[0:2] = (1,)即可

 

 

 


 

实例:[6,2,11,1,4,9,5,7,8,20]将所有比6小的数字放到它的左边,大的放到6的右边。

s = [6,2,11,1,4,9,5,7,8,20]
result = []
for i in s:
    if i >= 6:
        result.append(i)
    else:
        result[:0] = (i,)

print(result)

结果:

[5, 4, 1, 2, 6, 11, 9, 7, 8, 20]

 

posted @ 2018-10-01 22:05  翻滚的小强  阅读(2525)  评论(0编辑  收藏  举报