gpt4 book ai didi

python - 在什么时候导入成为正确的解决方案?

转载 作者:太空宇宙 更新时间:2023-11-03 14:35:04 25 4
gpt4 key购买 nike

这个周末我正在做一个项目,我需要使用二项分布来测试事件的概率(给定随机字节,y 个字符中的 x 个字符是字母数字的概率)。我的第一个解决方案是自己编写测试,因为它相当简单。

def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)

def binomial_prob(n,k,p):
bin_coeff = (factorial(n))/(factorial(k)*factorial(n-k))
return = bin_coeff * pow(p,k) * pow((1 - p),(n-k))

我用过。但是,SciPy 包含一个 binom_test 方法,它正是这样做的。但是,对于分发,这可能会显着增加大小(需要 SciPy 和 NumPy),并且它用于相对简单的测试。我想一个辅助问题是 py2exe 有多智能。它只是从 SciPy 和 NumPy 或整个库中导入我使用的模块吗?我希望只有我引用的模块,但我想下一个问题是 SciPy.stats 依赖多少个模块。但我离题了……所以我的问题是,我什么时候应该使用已经编写的代码,代价是包含的内容远远超过我的需要,什么时候我应该只编写自己的实现?

(我将其标记为 python,但我想这可能是一个更笼统的问题)

最佳答案

“我什么时候应该使用已经编写的代码,代价是包含的内容远远超出我的需要

总是。

我什么时候应该只编写自己的实现?

从不。

“包括远远超过我需要的”这个问题通常很愚蠢。你在乎“包含”多少?

唯一重要的是当您编写嵌入式软件并且内存严重受限时。

对于所有其他编程 -- 所有 其他编程 -- 不要三思。尽早并经常包含预先编写的代码。少写。更快地解决问题。操作系统会将未使用的页面换出内存。您可以安全地忽略它们。

编程是解决问题,而不是生成代码。代码越少越好。没有代码是最好的。

关于python - 在什么时候导入成为正确的解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2356036/

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