小编Aki*_*iya的帖子

对于list [:] = [...]赋值的冒号在Python中做什么

我来自以下代码:

# 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

python python-3.x

14
推荐指数
2
解决办法
2万
查看次数

Python 列表赋值,括号中包含冒号 [:]

我正在一个非常依赖性能的应用程序上使用 python 3.5 列表。

在字典列表中搜索对象删除后,我想知道该解决方案中的冒号[:]。我知道它创建了一个副本(理论上),但在这个例子中看不到它的目的。

它可能节省内存吗?或者它与浅拷贝/深拷贝有关吗?对于现有的情况和现有的情况,python 的行为会有所不同mylist = ...mylist[:] = ...

我发现了一些类似的问题,但没有一个问题涉及 python 在给定这样的任务时的行为方式。

python dictionary list variable-assignment python-3.5

5
推荐指数
0
解决办法
5350
查看次数