使用函数:print vs return

时间:2014-10-02 12:04:42

标签: python function

使用 Python 脚本中的函数数据的正确方法是什么?

使用print,例如:

var1 = 'This is var1'

def func1():
  print(var1)

func1()

或 - 与return

var1 = 'This is var1'

def func1(): 
  return var1

print(func1())

两者都给出相同的结果:

$ ./func_var_print_return.py
This is var1

3 个答案:

答案 0 :(得分:2)

这取决于具体情况。一般情况下,我会将其返回,以便您可以根据需要进行打印,但如果您在某些时候编码更改,则可以使用值执行其他操作

答案 1 :(得分:2)

当函数的目的是生成值时,您应该return一个值。这样功能可以使用其他功能。例如

def add(x,y):
    return x + y

def multiply(a,b):
    product = 0
    for i in range(b):
        product = add(product, a)   # Note I am calling the add function
    return product

测试

>>> multiply(5,4)
20

请注意,我在return函数中使用了add中的multiply值。如果我只打印add的值,我就无法做到。

答案 2 :(得分:1)

您应该始终尝试返回该值。

考虑单元测试 - >如果没有返回值,您如何验证该值? 正如之前的“meto”所述,如果您的代码发生了变化,您仍然可以使用该值执行其他操作。