gpt4 book ai didi

python - 在 python (JES) 中给函数一个操作

转载 作者:太空宇宙 更新时间:2023-11-03 18:01:42 24 4
gpt4 key购买 nike

为什么不能在 python 中给出一个函数、一个操作?我知道给函数一个参数意味着将参数变成实际参数。这是一个例子:

def function(beta + 'aei') # beta = 'randomstring'
print beta

我不会愚蠢,但我有这个疑问需要澄清..:)

最佳答案

这是不可能的,因为词法分析器 does not make an allowance for it .

funcdef        ::=  [decorators] "def" funcname "(" [parameter_list] ")" ["->" expression] ":" suite
decorators ::= decorator+
decorator ::= "@" dotted_name ["(" [parameter_list [","]] ")"] NEWLINE
dotted_name ::= identifier ("." identifier)*
parameter_list ::= (defparameter ",")*
| "*" [parameter] ("," defparameter)* ["," "**" parameter]
| "**" parameter
| defparameter [","] )
parameter ::= identifier [":" expression]
defparameter ::= parameter ["=" expression]
funcname ::= identifier

请注意,defparameter 就是您正在查看的内容;它只需要一个参数和一个可选的默认赋值表达式。然后,参数 token 将只接受标识符

此外,即使您要表达这样的内容(更接近,但语法仍然无效):

def function(beta=beta + 'aei'):
print beta

beta 在您实际输入该方法之前是未定义的。

关于python - 在 python (JES) 中给函数一个操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27582634/

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