Cython:我如何知道何时分配对象的引用或分配具有相同值的对象的副本?

问题描述 投票:0回答:1

在Python中,我可能有:

for k, v in mydict:
    l = v
    l.set_to_one()

print(l._one)

for k, v in mydict:
    print(v._one)

这应该打印一系列的(其中_one是一个整数)。

当我这样做

a=1
b=a
a=2
print(a)
print(b)

将打印2,然后打印1。

在Cython中,如果我显式设置类型或从Cython扩展创建一个对象,我怎么知道我何时通过=运算符为它赋予引用或值(假设我没有使用外部C ++代码)?它是否始终遵循C规则,或者偶尔遵循Python规则?这取决于我是否使用像listdict这样的Python内置类型?

cython
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.