gpt4 book ai didi

python - 为什么 python 不允许在函数名和变量名中使用连字符?

转载 作者:IT老高 更新时间:2023-10-28 20:43:00 24 4
gpt4 key购买 nike

我一直想知道为什么python中的函数名和变量名之间不能使用连字符

尝试过 Lisp 和 Clojure 等允许使用连字符的函数式编程语言。为什么 python 不这样做。

# This won't work -- SyntaxError
def is-even(num):
return num % 2

# This will work
def is_even(num):
return num % 2

我确信 Guido 爵士一定是因为某些原因才这么做的。我用谷歌搜索但无法找到答案。任何人都可以对此有所了解吗?

最佳答案

因为连字符用作减法运算符。想象一下你可以有一个is-even函数,然后你有这样的代码:

my_var = is-even(another_var)

is-even(another_var)是对函数is-even的调用,还是减去函数even的结果来自一个名为 is?

的变量

Lisp 方言没有这个问题,因为它们使用前缀表示法。例如,有明显的区别

(is-even 4)

(- is (even 4))

在 Lisps 中。

关于python - 为什么 python 不允许在函数名和变量名中使用连字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2064329/

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