【问题标题】:Difference between list added to list and list multiplied by scalar添加到列表的列表与列表乘以标量之间的差异
【发布时间】:2022-06-17 03:40:41
【问题描述】:

我想自己复制列表,所以找到了这两种方法。下面的代码比其他语句运行得更快。你能解释一下为什么第一个比第二个执行得快很多吗?

第一种方法:

   l = [1,2,3,...1000000]
    
    return l * 2 

第二种方法:

   l = [1,2,3,...1000000]
    
    return l + l  

编辑:即使下面的代码运行也很慢

   l = [1,2,3,...1000000]
    
   l.extend(l) 

   return l

【问题讨论】:

  • 一个天真的论证:l*2 只需要处理l 并执行一个操作,l+l 需要在两个对象之间应用一个操作,extend 更新相同的内存位置

标签: python python-3.x list


猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多