我正在做作业,我对“打印”和“返回”感到困惑。

例如,当我要求创建一个返回所有字母(“ a”,“ e”,“ i”,“ o”,“ u”)中的字母的函数时,为什么仅放下我的输出就无法输出def函数(例如all_letters(“你好,我的妻子”)?但是当我放入“打印字母”时,会有输出?

===============>>#1 票数:4

使用return ,您可以分配给变量:

def my_funct(x):
    return x+1

然后可以执行y = my_funct(5) y现在等于6。

为了帮助描述它,请将函数视为一台机器(类似于某些数学类中使用的函数)。 通过插入变量(在这种情况下为x ),该函数将输出(或returns )某些内容(在这种情况下为x+1 )。 变量是输入, return是输出。

但是,使用print ,该值仅显示在屏幕上。

如果将功能更改为:

def my_funct(x):
    print(x+1)

然后执行y = my_funct(x)y等于None ,因为print()不返回任何内容。

使用机器隐喻,您可以插入变量(再次x ),但不输出任何东西,而只是向您显示它的含义(再次x+1 )。 但是,它不输出任何内容。

===============>>#2 票数:3

return将值返回到调用范围。 print (除非有人做了一些猴子补丁)将数据推送到标准输出。 随后可以从调用范围使用返回的值,而将打印的内容分派给OS,然后OS进行相应处理。

>>> def printer(x):
...     print x * 2
...
>>> def returner(x):
...     return x * 2
...
>>> printer(2)
4
>>> y = printer(2)
4
>>> y is None
True
>>> returner(2)
4
>>> y = returner(2)
>>> y
4

交互式控制台在说明这一点时有点误导,因为它仅打印返回值的字符串表示形式,但是在上面的示例中分配给y的值的差异是说明性的。 当分配printer结果时, yNone ,因为对于任何没有显式返回值的函数,都有一个隐式return None

===============>>#3 票数:2

return是一个关键字,而print是一个函数:

当您想给变量赋值时, return很有用。

print只允许您在命令提示符下打印一些文本:

def foo():
    return 2
bar = foo() # now bar == 2
print(bar) # prints 2

  ask by Wuchun Aaron translate from so

未解决问题?本站智能推荐:

3回复

函数中的print和return之间有什么区别?

我有这个功能: 这将打印两个链接: http : //downloads.sourceforge.net/project/unvanquished/Assets/unvanquished_0.26.0.pk3 http://sourceforge.net/projects/unvanqu
3回复

“打印”和“返回”之间有什么区别?

首先,我只是一个初学者,所以请原谅我。 我有一个问题要问:“定义一个称为avg的函数。它要求用户输入三个数字并打印其平均值。” 然后是另一个问题,询问“定义一个称为avg4的函数。它要求用户输入四个数字并返回四个数字的平均值” 我只想知道这是否是一个棘手的问题? 因为根据我的理解,“
7回复

在Python中,传递和返回之间有什么区别

我在Pinax和其他django应用程序中看到了一些代码,这些代码使用pass而不是pass来代替pass。 有什么区别,并且对下面运行的django代码有什么影响? 该代码是一种信号方法,可自动将主题标签保存到tweet对象的taggit Tag对象中。 我在这里看到一个问题,即在PHP中是否具
5回复

python 2.7中的print和print()有什么区别

我是Python的新手。 我在python 2.7上运行以下代码,使用print或print()时看到不同的结果。 这两个功能有什么区别? 我读了其他问题,例如, 这个问题 ,但是没有找到答案。 结果是:
4回复

python中a = [1]和[1]之间有什么区别?

当我做 结果是[1,2] - 但结果是 是None 。 我的理解是a是列表对象的引用[1] 。 python中的所有东西都是对象。 [1]也是一个列表对象。 a和[1]应完全相同。 为什么结果完全不同?
10回复

Python中“2 * 2”和“2 ** 2”之间有什么区别?

以下代码有什么区别? code1 : 码2: 我没看见有分别。 这提出了以下问题。 如果我们可以使用code2,为什么使用code1?
3回复

python 3中的'print(x)`和`print(* x)`有什么区别? [重复]

这个问题在这里已有答案: **(双星/星号)和*(星号/星号)对参数有什么作用? 19个答案 我不记得我在哪里看到这个,但我不明白这里发生了什么。 print(*x)提供什么用途? 以下代码: 给出以下输出: 我看到发生了什么,但我不知道发生了
2回复

在Python IDLE中,“打印”变量和仅写入变量之间有什么区别?

在IDLE解释器中,我对dpkt执行以下操作: 现在,当我尝试查看'eth'的内容时,我可以打印它,也可以只写变量名。 当我做: 我得到: 但是,当我简单地写: 我得到了更多预期的输出: 所以我的问题是,执行“打印(变量)”和只写变量名之间的根本区别
1回复

Linux和Windows on python之间的线程有什么区别吗? [关闭]

我写了一个在Tkinter中使用线程的程序。 当我在linux上运行该程序时,它运行良好,但是在Windows上运行相同的程序时,它不起作用。 当循环(在线程下运行)结束并导致出现顶级窗口的调用函数时,存在问题 有什么建议么??
6回复

python中的return和break有什么区别?

python中的return和break有什么区别? 请解释它们在循环和函数中的确切作用? 谢谢