|
|
1
21
这是两种不同的方法:1是lbyl(跳跃前先看),2是eafp(请求宽恕比许可更容易)。 pythonistas通常建议EAFP更好,其参数样式为“如果一个进程在您测试它的时间和您自己尝试创建它的时间之间创建了该怎么办?”.这个论点在这里不适用,但它是一般的想法。例外情况不应被视为 太 例外。
在您的案例中,从绩效角度考虑,因为设立了异常管理者(以下简称“异常管理者”)。
|
|
|
2
10
我只是试着测量时间:
在我的机器上:
似乎尝试/排除速度更快。它对我来说似乎也更易读,不管怎样,取决于具体情况,这个测试非常简单,也许你需要一个更复杂的测试。 |
|
3
5
这取决于哪一种情况是“典型的”,因为例外情况应该模拟不典型的情况。所以,如果典型的情况是
在创建单例的特定情况下,我倾向于使用第一种样式,因为创建单例的初始时间是一个典型的用例。-) |
|
|
4
1
在使用的过程中有点偏离主题。单例被高估了,“共享状态”方法在Python中也同样有效,而且基本上非常干净,例如:
现在每次你这样做:
它将具有相同的信息,或者,在某种程度上是相同的实例。 |
|
|
5
0
我必须同意克里斯的观点。记住,在你真正需要优化之前不要优化。我真的怀疑在任何合理的程序中,检查是否存在都会成为一个瓶颈。 我确实看到了 http://code.activestate.com/recipes/52558/ 这也是一种方法。该代码的未注释副本(“spam”只是类接口的一个随机方法):
|