gpt4 book ai didi

python - 如何不把自己。初始化 Python 类中的每个属性时?

转载 作者:太空狗 更新时间:2023-10-30 00:30:05 24 4
gpt4 key购买 nike

你好。
找了半天,发现很多相关问题都没有答案。尽管我的问题似乎是一个简单的初学者问题。

我们有一个(我猜)典型的类定义:

class Town:
def __init__(self, Name, Ruler = "Spanish Inquisition"):
self.Name = Name
self.Population = 0
self.LocationX = 0
self.LocationY = 0
self.Religion = "Jedi"
self.Ruler = Ruler
self.Products = ["Redstone", "Azaleas"]

你明白了。很多属性。我需要所有这些。

问题是:**有没有捷径可以拯救所有那些“ self ”?**我是不是太懒了?我希望是这样的:

with self:
Name = Name
Population = 0
...

我当然知道哪个行不通(这不是使用“with”,而且参数在错误的命名空间中。...我没听错?)。

我想有很多替代方法可以达到相同的结果,但我真的很好奇 Python 类的强大功能,而且我认为其他人问过这个问题但没有成功。

(相关问题:Most "pythonic" way of organising class attributes, constructor arguments and subclass constructor defaults?)

最佳答案

简短的回答:不,你不能。在 Python 中访问实例成员(属性、方法)时必须使用 self

澄清:self 不是 Python 中的关键字。原则上,您可以为方法的第一个参数指定任何名称,但约定要求您应将其命名为 self

关于python - 如何不把自己。初始化 Python 类中的每个属性时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16156797/

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