我需要在Python的切片表示法上有一个很好的解释(引用是一个加号).
对我来说,这种符号需要一点点提升.
它看起来非常强大,但我还没有完全了解它.
Python doc说切片列表会返回一个新列表.现在,如果返回"新"列表,我有以下与"分配给切片"有关的疑问
a = [1, 2, 3]
a[0:2] = [4, 5]
print a
Run Code Online (Sandbox Code Playgroud)
现在输出将是:
[4, 5, 3]
Run Code Online (Sandbox Code Playgroud)
如果我有一个词典列表,请说:
[{'id': 1, 'name': 'paul'},
{'id': 2, 'name': 'john'}]
Run Code Online (Sandbox Code Playgroud)
我想删除id2(或名称john)的字典,这是以编程方式进行此操作的最有效方法(也就是说,我不知道列表中条目的索引,所以它可以不要弹出).
我来自以下代码:
# O(n) space
def rotate(self, nums, k):
deque = collections.deque(nums)
k %= len(nums)
for _ in xrange(k):
deque.appendleft(deque.pop())
nums[:] = list(deque) # <- Code in question
Run Code Online (Sandbox Code Playgroud)
nums[:] =那nums =不是做什么的?就此而言,那不做nums[:]什么nums?