类变量前边必须使用类名吗?有没有其他引用方式?

2017-07-25 09:03:12 +08:00
 vtoexsir

比如:

class Cname(Time):  
	classVar = 3  
	def d():  
		print(Cname.classVar) # 类变量前边必须使用列名来引用,有其他写法吗?  

我的问题是:
类变量前边必须使用列名来引用,很不方便,比如修改类名或者类变量的名称,则要修改多出代码。
那么有没有其他方便的写法呢?
比如就像实例变量前使用 self 来引用一样。

1851 次点击
所在节点    Python
9 条回复
guyskk
2017-07-25 09:23:34 +08:00
可以用 self 引用
cxyfreedom
2017-07-25 09:27:47 +08:00
不知道理解有没有问题,cls.classVar ?
mkeith
2017-07-25 09:33:02 +08:00
你是要访问类变量还是对象变量呢?
vtoexsir
2017-07-25 09:47:14 +08:00
@mkeith
@guyskk
要访问实例变量,使用 self。
要访问类变量,怎么写法?
vtoexsir
2017-07-25 09:47:54 +08:00
@cxyfreedom
cls.classVar 不行!
guyskk
2017-07-25 09:49:01 +08:00
@vtoexsir #4 self.classVar
haython
2017-07-25 09:56:08 +08:00
方法都没写对,方法要加 self 参数
lrxiao
2017-07-25 09:59:48 +08:00
这..有什么可简便的
还有上面的,他要的是类变量..
mkeith
2017-07-25 10:11:54 +08:00
@classmethod
def m(cls):
cls.xxx

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/377720

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX