【问题标题】:Fundamental of Python - Return Value [duplicate]Python 基础 - 返回值
【发布时间】:2018-01-02 14:51:57
【问题描述】:

Attached picture related to return value

在附图中,我想知道为什么会有两个结果?是因为 def 函数派生一个而 print 函数派生另一个吗?谢谢!

【问题讨论】:

  • 请在您的问题文本中包含代码。 stackoverflow.com/editing-help
  • 在 Python 中,所有函数要么返回一个对象(默认为None),要么引发异常。打印是针对用户的副作用。它与程序和用户使用的返回对象不同。以返回的对象为中心设计函数。

标签: python return-value


【解决方案1】:

默认情况下,函数会自动返回None

def f():
    pass

>>> print(f())
None

当然,您可以指定其他返回值:

def f():
    return 42

>>> print(f())
42

在您的示例中,该函数打印一个值并返回 None。然后第二个打印显示 None有两个打印件 - 这就是为什么您会看到打印两个值的原因。

【讨论】:

  • 确实如此。澄清。您的函数不返回任何内容(即默认情况下它返回 None )。因此,您的 print(half_value(42)) 首先执行 half_value(42) 打印 21.0 然后在 half_value 的返回值上执行 print ,即 None
猜你喜欢
  • 2011-12-03
  • 2021-12-25
  • 2021-12-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-11
相关资源
最近更新 更多