gpt4 book ai didi

python - 在 Python 中,避免对 __init__ 参数和实例变量使用相同名称的最佳方法是什么?

转载 作者:行者123 更新时间:2023-11-28 19:33:37 25 4
gpt4 key购买 nike

init 函数中初始化实例变量的最佳方法是什么。两次使用相同的名称是不是风格很差?

class Complex:
def __init__(self, real, imag):
self.real = real
self.imag = imag

像这样想出任意的替代名称对我来说看起来很草率:

class Complex:
def __init__(self, realpart, imagpart):
self.r = realpart
self.i = imagpart

我认为 PEP 8 风格指南中没有解决这个问题。它只是说实例变量和方法名称应该是小写的,用下划线分隔单词。

最佳答案

这可能是主观的,但我不认为两次使用相同的名称是糟糕的风格。由于 self 在 Python 中不是隐含的,self.realreal 是完全不同的,并且没有名称隐藏等的危险,因为你' d 使用其他语言的经验(例如 C++/Java,其中像成员这样的命名参数有点不受欢迎)。

实际上,给参数赋予与成员相同的名称给出了一个强烈的语义暗示,即参数将一一映射到成员。

关于python - 在 Python 中,避免对 __init__ 参数和实例变量使用相同名称的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5821387/

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