gpt4 book ai didi

Python 风格,命名常量参数

转载 作者:行者123 更新时间:2023-11-30 23:13:09 28 4
gpt4 key购买 nike

我正在考虑将那些在函数体中未修改的 Python 函数参数拼写为 ALL_UPPERCASE,向此类 API 的用户发出信号,表明传递的值不会被修改(如果一切都如广告所言,无论如何) )。我不知道这会与 Python 约定或语言机制发生冲突;有吗?这样的命名约定是否可取,或者只是不必要的奇怪?

例如:

def foo(bar, BAZ):
return bar.some_method(BAZ.some_property)

最佳答案

大写用于全局常量,而不是函数参数。请参阅Python Style Guide在这里。

在 Python 函数签名中,您希望所有参数都未被修改。如果一个参数需要一个可变对象并且它将就地更改,那么这是异常(exception),应该这样记录:

def foo(bar, baz):
"""Frobs the bar in baz

Alters the baz list in-place, and returns None.

"""

对未修改的函数参数使用大写字母会 a) 令人困惑(因为它与样式指南冲突)和 b) 多余,因为大多数代码不会就地更改可变对象,除非明确记录为这样做.

关于Python 风格,命名常量参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29487671/

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