为了账号安全,请及时绑定邮箱和手机立即绑定

Python List 澄清:直接赋值是不可能的

Python List 澄清:直接赋值是不可能的

幕布斯6054654 2021-09-11 16:42:34
鉴于value = [],以下代码片段之间有什么区别?片段1:for i in range(t):    value[i] = 'yes'片段2:value += input.split()在第一种情况下,我收到错误“IndexError:列表分配索引超出范围”第二种情况似乎工作正常,没有任何错误。
查看完整描述

2 回答

?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

您的第一个示例尝试访问i列表的第 th 个元素并将其设置为一个值。由于您的列表是一个空列表,因此该元素不存在,因此您会收到错误消息。


要使第一个片段起作用,您必须设置以下append值:


values = []

for i in range(t):

    values.append(i)

第二个示例使用的事实是,当添加两个列表时,+您会创建一个新列表,第二个列表的所有元素都在末尾。通过使用+=这个新列表被values再次分配。


第二个片段也可以使用extend:


values.extend(input.split())


查看完整回答
反对 回复 2021-09-11
  • 2 回答
  • 0 关注
  • 199 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信