Python中没有返回语句的定义行为是什么?

Wil*_*mKF 1 python return

给出以下Python代码:

def avg(a):
  if len(a):
    return sum(a) / len(a)
Run Code Online (Sandbox Code Playgroud)

什么是语言定义的行为,avg当长度a为零或其行为未被语言指定,因此不应该在Python代码中计算?

Mar*_*ers 9

默认返回值是None.

来自Calls文档:

None除非引发异常,否则调用总是会返回一些值.如何计算此值取决于可调用对象的类型.