gpt4 book ai didi

c# - 在 python 中使用属性,如示例 C#

转载 作者:太空狗 更新时间:2023-10-29 21:17:55 24 4
gpt4 key购买 nike

我目前使用 Python 有一段时间了,我开始质疑自己是否应该像在 C# 中一样经常在 Python 中使用“属性”。在 C# 中,我主要为我的大部分类创建属性。

似乎属性在 python 中并不流行,我错了吗?如何在 Python 中使用属性?

问候,

最佳答案

如果您所做的只是设置和查询成员变量,那么通常不需要属性。因为Python没有封装的概念,所有的成员变量都是public的,往往不需要封装访问。但是,属性是可能的,完全合法且流行:

class C(object):
def __init__(self):
self._x = 0

@property
def x(self):
return self._x

@x.setter
def x(self, value):
if value <= 0:
raise ValueError("Value must be positive")
self._x = value

o = C()
print o.x
o.x = 5
print o.x
o.x = -2

关于c# - 在 python 中使用属性,如示例 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3324920/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com