在python中,对于一个假定为常量的类变量,使用文本比构造它快吗?

2024-09-28 05:24:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我很难解释,所以我举个例子

假设我有一个大的元组数据,应该像一个常量。在这个项目中,我制作了一个card-deck类,这样元组就可以包含所有的基本卡,但是对于更大的数据集,我也想知道Python(标准C实现)是如何处理这些优化的

我有两个选择:

deckCards = []
for value in range(1,14):
    for suit in range(4):
        deckCards.append(Card(value,suit))
deckCards=tuple(deckCards)

或:

deckCards = (Card(1,0), Card(1,1), Card(1,2),..)

秒的可维护性是灾难性的,第一个循环最终将导致第二个表达式,并且在

我想知道的关键是:一旦Python解释了它并将deckCards元组转换为位码,它将作为程序持续时间的数据(或从另一个模块导入)保留,还是每次我访问变量时都重新计算它(又称重新实例化它)

我知道Java和C#将优化大多数常量或静态只读变量,并将它们转换为单个内存分配以避免重新计算,但我不知道这在Python中是如何工作的

提前谢谢你的回答


Tags: 数据项目infor标准valuerangecard

热门问题