登录
首页 >  文章 >  python教程

Why I always assign intermediate values to local variables instead of passing them directly to function calls

来源:dev.to

时间:2024-09-27 14:52:05 470浏览 收藏

从现在开始,我们要努力学习啦!今天我给大家带来《Why I always assign intermediate values to local variables instead of passing them directly to function calls》,感兴趣的朋友请继续看下去吧!下文中的内容我们主要会涉及到等等知识点,如果在阅读本文过程中有遇到不清楚的地方,欢迎留言呀!我们一起讨论,一起学习!

Why I always assign intermediate values to local variables instead of passing them directly to function calls

而不是

def do_something(a, b, c):
    return res_fn(
        fn(a, b),
        fn(b),
        c
    )

我愿意:

def do_something(a, b, c):
    inter_1 = fn(a, b)
    inter_2 = fn(b)

    result = res_fn(inter_1, inter_2, c)
    return result

第一个版本要短得多,如果格式正确,同样具有可读性。

但我更喜欢第二种方法的原因是因为所有中间步骤都保存到局部变量中。

像sentry这样的异常跟踪工具,甚至是设置debug=true时弹出的django错误页面,都会捕获本地上下文。最重要的是,如果您必须使用调试器单步执行该函数,您可以在单步执行该函数之前看到确切的返回值。这就是为什么我什至在返回最终结果之前将其保存在局部变量中的原因。

以几个额外的变量赋值和几行额外的代码为代价,这使得调试变得更加容易。

好了,本文到此结束,带大家了解了《Why I always assign intermediate values to local variables instead of passing them directly to function calls》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多文章知识!

声明:本文转载于:dev.to 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>