gpt4 book ai didi

python - 为什么在 Python 中是 "easier to ask forgiveness than it is to get permission"?

转载 作者:太空狗 更新时间:2023-10-30 02:09:57 25 4
gpt4 key购买 nike

为什么“请求宽恕比获得许可更容易”(EAFP)被认为是 Python 中的良好实践?作为一名编程新手,我的印象是与使用其他检查相比,使用许多 try...except 例程会导致代码臃肿且可读性差。

EAFP 方法的优势是什么?

注意:我知道这里有类似的问题,但它们大多是指一些具体的例子,而我更感兴趣的是原理背后的哲学。

最佳答案

LBYL ,对EAFP的反击方法与断言没有任何关系,它只是意味着您在尝试访问可能不存在的内容之前添加检查。

Python 是 EAFP 的原因是它与其他语言(例如 Java)不同 - 在 Python 中捕获异常是相对便宜的操作,这就是为什么我们鼓励您使用它。

EAFP 示例:

try:
snake = zoo['snake']
except KeyError as e:
print "There's no snake in the zoo"
snake = None

LBYL 示例:

if 'snake' in zoo:
snake = zoo['snake']
else:
snake = None

关于python - 为什么在 Python 中是 "easier to ask forgiveness than it is to get permission"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32901886/

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