python函数的参数和返回值

python函数的参数和返回值

一、 有参函数

python 中,函数的参数是在小括号中定义和传递的
传递给函数的参数可以是任意的数据类型,比如:1, “hello”, [] , {“a”: 10}

>>> def foo(x, y):                 # 定义参数
...     print("x  的值是:", x)
...     print("y 的值是:", y)
...
>>> foo(2,3)           # 传递参数,简称传参
x 的值是: 2
y 的值是: 3
>>>

在定义参数的时候,还可以给它定义一个默认的值,有默认值的参数我们叫它默认参数

  • 默认参数在调用函数传参时候,可以不传,使用的时候,其值就是定义的默认值;
  • 也可以传,传了,就使用传递的值
>>> def conn_mysql(user, port=3306):
...     print(user, port)
...
>>> conn_mysql("root")  # 没有给默认参数传值,就使用默认的值 3306
root 3306
>>> conn_mysql("root", 3307)  # 给默认参数传值了,就使用传递的值 3307
root 3307
>>>

在上面的例子中 user 被称为位置参数, port 被成为默认参数

定义函数时候,所有的默认参数必须写在所有的位置参数后面,下面是错误示范

def foo(x,y=10,z):
    pass

正确的应该是下面这样:

def foo(x, z, d=10, y=10):
    pass

当然在调用函数的时候,我们还可以指定某个值给具体的某个参数

>>> conn_mysql(port=3308, user="sahrk")
sahrk 3308
>>>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YWJzvSNw-1615798553245)(assets/image-20200917163933363.png)]

二、 函数的返回值

函数中处理的数据,只有使用 return 关键字进行返回,函数外的代码才能使用这个数据
函数可以返回任意数量的任意 Python 的数据对象

1. 返回单个值

>>> def foo():
...    n = 3 + 7
...    return n  # 10
...
>>> n = foo()   # n = 10
>>> n
10
>>>

2. 返回多个值和多种数据类型

>>> def func():
...     return 1, "hello", [1,2], {"a":1}
...
>>> t = func()   # 函数的返回值用一个变量接收
>>> t
(1, 'hello', [1, 2], {'a': 1})
>>> n, s, li, dic = func()  # n, s, li, dic = (1, 'hello', [1, 2], {'a': 1})
>>> print(n, s, li, dic)
1 hello [1, 2] {'a': 1}
>>>

你可能感兴趣的:(python,python,运维)