gpt4 book ai didi

Python 包名称约定

转载 作者:IT老高 更新时间:2023-10-28 20:34:17 25 4
gpt4 key购买 nike

有没有像 Java 的 com.company.actualpackage 这样的 Python 包命名约定?大多数时候,我会看到简单的、可能相互冲突的包名称,例如“web”。

如果没有这样的约定,有什么理由吗?您如何看待在 Python 世界中使用 Java 命名约定?

最佳答案

Python 有两个涵盖该主题的“咒语”:

Explicit is better than implicit.

Namespaces are one honking great idea -- let's do more of those!

模块的命名和导入约定可以在 The Python Style Guide 中找到。 (PEP 8)。

没有这样的约定来始终如一地以 Java 样式为模块名称添加前缀的最大原因是,随着时间的推移,您最终会在代码中出现很多实际上不需要的重复。

Java 的一个问题是它迫使您不断重复自己。 Java 代码中有很多样板文件,这些样板文件在 Python 中是不需要的。 (Getter/setter 就是一个典型的例子。)

命名空间在 Python 中不是什么大问题,因为您可以在导入时为模块指定别名。如:

import com.company.actualpackage as shortername

因此,您不仅可以在程序中创建或操作命名空间,还可以创建您自己的节省击键的别名。

关于Python 包名称约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2713874/

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