我阅读了狮身人面像文档页面,讽刺的是发现关于var,ivar和cvar之间差异的文档非常缺乏。我想知道是否有人可以解释内联代码中每个不同 namespace 之间的区别。
例子:
class foo(object):
"""
:var str first:
:ivar str last:
:cvar str middle:
"""
这些狮身人面像标签之间的每个有何不同?我如何知道哪一个是按设计正确使用的正确标签?
最佳答案
当然,var
是一个通用变量。当您不想对要记录的变量进行进一步区分时,请使用此选项。ivar
是“实例变量”,或在实例对象(类的实例)上设置的变量。通常,这些将在__init__
方法内部定义(在Python中)。cvar
是“类变量”,或者是直接在类对象上设置的变量。通常,这可以在类语句中设置,但可以在类中的任何特定方法之外设置。
这是一个例子:
class SomeClass(object):
cvar = 'I am a class variable'
def __init__(self):
self.ivar = 'I am an instance variable'
关于python - python的狮身人面像中的var,cvar和ivar有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41052221/