jea*_*nej 3 python standards alias python-import python-3.x
按照这篇文章中提出的准则,我将更改所有
from module import function
function(agt)
Run Code Online (Sandbox Code Playgroud)
通过:
import module as mdl
mdl.function(agt)
Run Code Online (Sandbox Code Playgroud)
在我的代码中。我正在尝试使用常用别名而不是个人别名。互联网上是否有某种列表汇总所有常用的别名?
例如,这些似乎很常见:
import numpy as np
import math as m
import matplotlib.pyplot as plt
Run Code Online (Sandbox Code Playgroud)
什么别名scipy.linalg,time,scipy.io,cmath等?您使用哪个?随意提供其他别名,如果尚无此类列表,我愿意提出一个(我将更新此帖子)。
不,没有模块缩写的完整列表
没有规范的列表,我也不建议在这里列出(因此,该IMO并不是真正的地方)。PEP8中为python定义了包括命名约定在内的样式指南,有关导入的部分位于此处。很好且有用的建议,但不是列举的导入别名列表。
关于命名有很多好的规则和建议,其中一些规则和建议也适用于导入的名称。例如,我认为,这篇文章可以使我们理解“数学绘图库”到“ mpl”的不太令人惊讶的词源。在模块名称上遵循PEP8可以帮助我们完全不需要缩写。
请注意,您已经将内置模块(“ time”)与标准但第三方库(“ numpy”,无处不在,但Guido在2006年拒绝将其添加到内核中,并且必须单独安装)和一般的第三方库混合在一起(“ matplotlib”)6。您可能会找到内置库和非常常见的库的列表(或通过教程找到的间接库),但是包含第三方库的可能性似乎很小。我建议让软件包的作者决定其标准缩写。Numpy是一个很好的例子,库的作者在自己的教程中使用“ np”并已“标准化”了库的使用语法。
FWIW,我不喜欢将数学称为“ m”(或者正如一位评论者所建议的那样,将“ os as o”)。一个名字的变量对于像我这样笨拙的程序员来说是个灾难。
我还向您指出了首先包含“ as”语法的原理,它通过消除可能的名称冲突(如果cos从scipy和从导入sympy,可能会遇到麻烦)来证明其合理性。使用它来缩写已经遵循PEP命名标准的名称(起步很短,可读性强),即使方便,听起来也不应该被正式认可。
在一个有趣的例子:在这里,sympy并且scipy都试图使用相同的缩写一会儿,导致我们希望避免确切的问题(虽然scipy现在建议不使用的缩写可言,显然)
脚注
import...as “仅当[它]一个标准的缩写(例如,np用于numpy)”。抱歉,他们也推迟:)sklearn教程示例无需进行任何命名间隔或缩写。只有您知道您的应用程序,但是在大多数情况下,假定该名称足够唯一是安全的| 归档时间: |
|
| 查看次数: |
772 次 |
| 最近记录: |