【问题标题】:Huge collections in PythonPython 中的大量集合
【发布时间】:2010-10-06 13:07:53
【问题描述】:

基本上,我将数百万个 vector3 值存储在一个列表中。但是现在vector3s是这样定义的:

[5,6,7]

我认为这是一个列表。这些值不会被修改,我也不需要任何 vector3 功能。

这是最高效的方法吗?

【问题讨论】:

    标签: python performance collections


    【解决方案1】:

    如果您要存储数百万个,最好的方法(速度和内存使用)是使用numpy

    如果您想避免使用 numpy 并仅使用内置的 python 模块,使用元组而不是列表将节省一些开销。

    【讨论】:

    • 咳咳。如果不使用 numpy,请使用 array 模块。
    【解决方案2】:

    最好的方法可能是使用元组而不是列表。元组比列表快,并且一旦定义就不能修改。 http://docs.python.org/tutorial/datastructures.html#tuples-and-sequences

    编辑:更具体地说,元组列表可能效果最好:[(4,3,2), (2,4,5)...]

    【讨论】:

      【解决方案3】:

      传统上,您会分析代码、发现瓶颈并根据需要处理它们。答案是“不,它可能不是最高效的方式”,但这真的很重要吗?它可能会,当它发生时,它可以被修复。

      【讨论】:

        猜你喜欢
        • 2013-03-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多