Python 返回和打印功能

Python 返回和打印功能,python,function,return,Python,Function,Return,我想问一下退货和打印的区别 def x(n): a=1 print a,n, return a print x(2) 如果我键入x(2)它将在控制台上输出:12对吗? 变量a是否仅在我键入print x(2)时第二次打印?写入时 print X(2) 然后用2作为参数调用函数X,让我们进入其中: a=1 print a,2, return a 它将打印1和2,然后返回值为1的a 在写入print X(2)后,将打印返回值(1) 如果您已经写入了X(2)(没有prin

我想问一下退货和打印的区别

def x(n):
    a=1
    print a,n,
    return a
print x(2)
如果我键入
x(2)
它将在控制台上输出:
12
对吗?
变量a是否仅在我键入
print x(2)
时第二次打印?

写入时

print X(2)
然后用2作为参数调用函数
X
,让我们进入其中:

a=1
print a,2,
return a
它将打印1和2,然后返回值为1的
a

在写入
print X(2)
后,将打印返回值(1)

如果您已经写入了
X(2)
(没有
print
),则将打印
1
2
,并且返回的值将不使用

def x(n):
    print n+1
现在,当调用
x(5)
时,它将向控制台打印
6
。但是,如果执行了
y=x(5)
,则
y
的值将为
None

现在:


如果您调用
x(5)
,它仍会将
6
打印到控制台。但是,如果你做了
y=x(5)
,那么
y
的值将是
6
,而不是
None
,两者看起来做的事情相似,但却完全不同

大多数情况下,您将使用return作为函数的输出。使用print意味着:将某些内容作为字符串打印(可能是打印到文件或解释器等)

此外,不能对函数打印的值执行任何操作。返回一个值在这方面提供了更多信息,因为它不像打印值那样是“垃圾收集”的

Return还允许您中断函数

>>> def x(y):
...     squared = y ** 2
...     return squared
... 
>>> x(2)
4
>>> z = x(2)
>>> z
4
>>> def a(b):
...     squared = b ** 2
...     print(squared)
... 
>>> a(2)
4
>>> c = a(2)
4
>>> c
>>>
在这个例子中,我有两个函数:x和a。两者都接受一个位置参数,并返回或打印该值的平方

请注意,如果将带有参数的函数赋给变量,则可以通过调用变量来返回该值,函数返回值,但函数不打印值

>>> def x(y):
...     squared = y ** 2
...     return squared
... 
>>> x(2)
4
>>> z = x(2)
>>> z
4
>>> def a(b):
...     squared = b ** 2
...     print(squared)
... 
>>> a(2)
4
>>> c = a(2)
4
>>> c
>>>