带有列表的Python对象。当对象通过参数传递时,列表为空。

2024-06-26 00:21:13 发布

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

我的类gcb_ip具有以下属性:

class gcb_ip:
    ip = None
    country_code = None
    score = None
    asn = None
    records = list()

1)我用特定的方法填写记录列表。你知道吗

2)我可以看到记录和我的其他属性内的对象,如果我检查它我的主代码。你知道吗

3)如果我将对象签入另一个由参数传递的类方法中,我看不到记录,但可以看到对象中的其他属性。你知道吗

<>我来自C++,我猜这是一个拷贝/引用参数传递问题。怎么回事?你知道吗


Tags: 对象方法ipnone列表属性记录code
1条回答
网友
1楼 · 发布于 2024-06-26 00:21:13

是否正确定义了init函数,并设置了这些参数?例如

class gcb_ip(object):
    def __init__(self, IP, country_code, score, asn):
        self.IP = IP
        self.country_code = country_code
        self.score = score
        self.asn = asn
        self.records = list()

这等同于在C++中设置显式构造函数,并初始化成员变量。你知道吗

然后可以引用该对象的参数,例如

myIP = someGcbObject.IP

相关问题 更多 >