命名Python类类似于保留关键字`Class`

问题描述 投票:2回答:1

在Python中为一组学生命名一个类'Class'是'ok'/ legal,这会导致任何语法问题吗?

NB我知道:

class Class:
    def __init__(self):
        pass

my_class = Class()

不会抛出错误,但是它会在长期使用中引起潜在问题吗?

我可以想象的潜在问题是可能在代码上使用/运行的linters / parses的问题。我的推测是Python的内部结构不会有问题吗?

我搜索过SO和Google,但由于明显的术语冲突很难得到结果,而且很多教程都包含class Student。我确实发现PEP8引用了参数和保留关键字之间的名称冲突,建议在违规参数上附加下划线。我也看到了对明显名称冲突的更风格的反对意见,虽然Class方法是Class的方法,但它们不是classmethods(虽然我找不到PEP8禁止),但承认这是意见,因此在外面SO的界限。

python python-3.x class naming
1个回答
0
投票

总结一下 - Class是完全合法的,不应该对Python造成任何问题。因为Python区分大小写。因此,任何(明智的)linter或IDE都不应该将其用作标识符。

© www.soinside.com 2019 - 2024. All rights reserved.