刚好在用 pyaudio,看到这个情况,想起自己其实也经常碰到。
p = pyaudio.PyAudio()
假设 单文件,单功能,单函数,但 名称较长。
假设有很多近似的功能,然后我希望尽量在名称上以区别。
如果文件名和所包含的主函数 /类名一致,那两个都是上面那个长长的名字。
然后第三方文件调用的时候,就会变成:
from a_very_very_long_file_name import a_very_very_long_module_name
而且很多时候两个名字是一样的,最多大小写区别。
想看看大家的处理习惯。
1
ClericPy 2020-01-13 23:33:52 +08:00
https://www.python.org/dev/peps/pep-0008/#id41
https://www.python.org/dev/peps/pep-0008/#package-and-module-names 跟着 PEP8 走挺省事, 虽然有时候 linter 不提醒... 至于名字一样, 我经常 repositories name, package name 一样, 其他情况很少一样, 从单一职责来说, 类名和包名一样也没什么问题, 近似功能参考高内聚, 低耦合那些设计原则, 有时候看看那些老外的源码, 会学到很多起名字的好习惯 |
2
JCZ2MkKb5S8ZX9pq OP @ClericPy 命名规范现在是按 google 那套在做,就是同名导入看起来挺蠢的。
|
3
MrGba2z 2020-01-14 05:16:16 +08:00
Use from x import y as z if two modules named y are to be imported or if y is an inconveniently long name.
|
4
AAdalao 2020-01-14 08:43:00 +08:00
pycharm 要求几乎所有的地方都用小写,函数名变量名,局部变量。。着实难受
|
5
JCZ2MkKb5S8ZX9pq OP @MrGba2z 不是这个问题 ,是 x 和 y 重复,不是两个 y 重复。
|
6
JCZ2MkKb5S8ZX9pq OP @AAdalao 局部变量开头加个下划线?
偶尔有过写局部变量把函数给覆盖了…… |