我的班级gcb_ip
具有以下属性:
class gcb_ip:
ip = None
country_code = None
score = None
asn = None
records = list()
1)我用特定方法填写记录列表。
2)如果我将其作为主代码检查,我可以在对象中看到记录和其余属性。
3)如果将其检查到参数传递的另一个类方法中,我无法在对象内看到记录但其余属性。
我来自C ++,我猜这是一个复制/引用参数传递问题。 ¿发生了什么事?
答案 0 :(得分:0)
您是否正确定义了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