Python:列出初始化差异

Python:列出初始化差异,第1张

概述我想要一个完整相同的列表,其中的东西将是一个字符串或数字.这两个列表的创建方式有区别吗?有什么隐藏我应该知道的吗? list_1 = [0] * 10list_2 = [0 for i in range(10)] 有没有更好的方法来完成同样的任务? 提前致谢. 这取决于你的列表元素是否可变,如果是,则会有所不同: >>> l = [[]] * 10>>> l[[], [], [], [], 我想要一个完整相同的列表,其中的东西将是一个字符串或数字.这两个列表的创建方式有区别吗?有什么隐藏我应该知道的吗?

List_1 = [0] * 10List_2 = [0 for i in range(10)]

有没有更好的方法来完成同样的任务?

提前致谢.

解决方法 这取决于你的列表元素是否可变,如果是,则会有所不同:

>>> l = [[]] * 10>>> l[[],[],[]]>>> l[0].append(1)>>> l[[1],[1],[1]]>>> l = [[] for i in range(10)]>>> l[0].append(1)>>> l[[1],[]]

对于不可变元素,两者的行为是相同的.它们之间可能存在性能差异,但我不确定哪一个会表现得更快.

总结

以上是内存溢出为你收集整理的Python:列出初始化差异全部内容,希望文章能够帮你解决Python:列出初始化差异所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1195163.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存