Python的风格最佳实践是否适用于科学编码?
我发现很难保持科学Python代码的可读性.
例如,建议对变量使用有意义的名称,并通过避免来保持命名空间import *
.因此,例如:
import numpy as np
normbar = np.random.normal(mean, std, np.shape(foo))
Run Code Online (Sandbox Code Playgroud)
但是这些建议可能导致一些难以阅读的代码,特别是考虑到79个字符的线宽.例如,我刚写了以下操作:
net["weights"][ix1][ix2] += lrate * (CD / nCases - opts["weightcost_pretrain"].dot(net["weights"][ix1][ix2]))
Run Code Online (Sandbox Code Playgroud)
我可以跨越线条表达:
net["weights"][ix1][ix2] += lrate * (CD / nCases -
opts["weightcost_pretrain"].dot(net["weights"][ix1][ix2]))
Run Code Online (Sandbox Code Playgroud)
但这似乎没有那么好,我不确定第二行缩进有多深.当一个双重缩进嵌套循环时,这些类型的行继续变得更加棘手,并且一行上只有50个字符可用.
我是否应该接受科学Python看起来很笨重,或者有没有办法避免像上面的例子那样的线条?
一些可能的方法是:
我很欣赏任何有关这些方面的信息,以及要避免哪些方面,以及对其他补救措施的建议.