在 Python 中,此代码有效:

class A:

    def __init__(me):
        me.foo = 17

    def print_foo(myself):
        print(myself.foo)

    def set_foo(i, v):
        i.foo = v

您可能已经注意到,self 参数在 me 方法中被命名为 __init__,在 myself 方法中被命名为 print_foo,在 i 方法中被命名为 set_foo

是否存在将 self 参数命名为 self 以外的其他名称有用的情况?如果不是,为什么 Python 允许这样做,因为它肯定是一种编写难以阅读和维护的代码的方式,也是一种困惑的来源?

最佳答案

PEP 8 addresses this pretty clearly:

虽然记得是 python style guide this is not enforced

有时, like in fractions.py in the standard library ,使用 a,b 之类的东西而不是 self,other 对您来说可能更清楚,因为 <your specific reasons>样式指南实际上列出了一些您可能会在上述引用下方打破常规惯例的原因:

10-08 08:05