Sre*_*ree 4 python list python-3.x
鉴于value = [],以下代码片段之间有什么区别?
摘录1:
for i in range(t):
value[i] = 'yes'
Run Code Online (Sandbox Code Playgroud)
摘录2:
value += input.split()
Run Code Online (Sandbox Code Playgroud)
在第一种情况下,我收到一个错误"IndexError:列表赋值索引超出范围"
第二种情况似乎没有任何错误正常工作.
在第一个示例中,您尝试'yes'在列表中插入它没有的索引.(因为空列表无法插入任何内容.)
在第二个示例中,您将使用可迭代input.split()1的元素扩展列表,因为
my_list += iterable
Run Code Online (Sandbox Code Playgroud)
相当于
my_list.extend(iterable)
Run Code Online (Sandbox Code Playgroud)
演示:
>>> my_list = []
>>> my_list.extend('Hi Sree'.split())
>>> my_list
['Hi', 'Sree']
>>>
>>> my_list = []
>>> my_list += 'Hi Sree'.split()
>>> my_list
['Hi', 'Sree']
Run Code Online (Sandbox Code Playgroud)
1 input已经是内置函数的名称.使用其他名称,以免影响bultin.
| 归档时间: |
|
| 查看次数: |
45 次 |
| 最近记录: |