样式指南说应该使用下划线,但许多 Python 内置函数没有。下划线的标准应该是什么?我想与 Python 风格指南保持一致,但这个领域似乎有点模糊。是否有一个好的经验法则,是基于我自己的判断,还是两者都无关紧要?
例如,我应该命名我的函数isfoo()
以匹配旧函数,还是应该命名它is_foo()
以匹配样式指南?
样式指南说应该使用下划线,但许多 Python 内置函数没有。下划线的标准应该是什么?我想与 Python 风格指南保持一致,但这个领域似乎有点模糊。是否有一个好的经验法则,是基于我自己的判断,还是两者都无关紧要?
例如,我应该命名我的函数isfoo()
以匹配旧函数,还是应该命名它is_foo()
以匹配样式指南?
风格指南留给您:
函数名称应为小写,必要时用下划线分隔单词以提高可读性。
换句话说,如果您想在方法名称中添加下划线会使其更易于阅读——请务必在其中添加一个(或两个!)。如果您认为标准库中还有足够多的其他类似案例,请随意将其排除在外。 这里没有硬性规定(尽管其他人可能不同意这一点)。我认为唯一被普遍接受的是你不应该在你的方法中使用“CapWords”或“camelCase”。“CapWords”应该保留给课程,我不确定任何地方的“camelCase”是否有任何优先级(尽管我可能错了)......
样式指南说应该使用下划线,但许多 Python 内置函数没有。
以内置isinstance()
为例,这是 1997 年写的。
PEP 8——Python 代码样式指南 直到 2001 年才发布,这可能是造成这种差异的原因。
下划线的标准应该是什么?我想与 Python 风格指南保持一致,但这个领域似乎有点模糊。是否有一个好的经验法则,是基于我自己的判断,还是两者都无关紧要?
这是风格指南,而不是法律!在适当的地方遵循指南,牢记警告(强调我自己的):
函数名应该是小写的,单词之间用下划线分隔,以提高可读性。
混合大小写仅在已经是流行样式(例如 threading.py)的上下文中被允许,以保持向后兼容性。
所以...
例如,我应该命名我的函数
isfoo()
以匹配旧函数,还是应该命名它is_foo()
以匹配样式指南?
您可能应该调用它isfoo()
,以遵循类似函数的约定。它是可读的。“可读性很重要。”