Data Analysis

Python3函数

2019-11-24  本文已影响0人  戈小蓓

一、基本

1、函数定义:def 函数名(参数):
代码1
......
2、函数调用:函数名(参数)
注:在Python中,函数必须先定义后使用

3、函数参数
4、函数返回值:
return:①负责函数返回值;②退出当前函数,导致return下方所有代码不执行

def buy():
    return '烟'
goods=buy()
print(goods)
return返回结果给函数调用的地方

#制作计算器
def sum_num(a,b):
    return a+b
result =sum_num(3,4)
print(result)

5、说明文档
语法:
def 函数名(参数):
""" 说明文档的位置 """
代码
......

def sum_num(a,b):
"""求和函数"""
return a+b
help(sum_num)
注:
①查看说明文档用:help()
②高级说明是在三引号回车

def sum_num(a,b):
    """
    求和函数
    :param a: 参数1
    :param b: 参数2
    :return: 求和值
    """
    return a+b
help(sum_num)

二、函数嵌套

1、函数嵌套调用是指一个函数又调用了另一个函数
2、变量作用域
2.1局部变量:定义在函数内部的变量,就是只在函数内部生效。用作临时保存数据
2.2全局变量:在函数内外都能生效的变量,变量定义在函数外

a=100
def testA():
    print(a)

def testB():
    print(a)

testA()
testB()

2.3改变全局变量
如何在函数内部修改全局变量?→global 申明a是全局变量
如下并验证了

a=100
print(a)
def testB():
    global a
    a=200
    print(a)
testB()
print(a)

2.4多函数执行流程:要用全局变量
2.5函数返回值值作为参数传递:需要先先得到返回值再传入
2.6函数多个返回值:逗号隔开、元组、字典、列表

三、函数参数

1、位置参数:调用函数时根据函数定义的参数位置来传递参数
注意:传递和定义参数的顺序及个数必须一致
2、关键字参数:“键=值”形式加以指定

def user_info(name, age, gender):
    print(f'您的名字是{name}, 年龄是{age}, 性别是{gender}')

user_info('Rose', age=20, gender='女')
user_info('小明', gender='男', age=16)

注意:如果有位置参数时,位置参数必须在关键字参数的前面,但关键字参数之间不存在先后顺序

3、缺省参数:默认参数,用于定义函数,为参数提供默认值(位置参数必须出现在默认参数前)
4、不定长参数:可变参数,用在不确定调用的时候会传递多少个参数(不传参也可以)的场景

四、拆包和交换变量值

1、拆包

- 拆包:元组
def return_num():
    return 100, 200
num1, num2 = return_num()
print(num1)  # 100
print(num2)  # 200

- 拆包:字典
dict1 = {'name': 'TOM', 'age': 18}
a, b = dict1

对字典进行拆包,取出来的是字典的key
print(a)  # name
print(b)  # age

print(dict1[a])  # TOM
print(dict1[b])  # 18

2、交换变量值

五、引用

id()来判断两个变量是否为同一个值的引用

上一篇 下一篇

猜你喜欢

热点阅读