Python函数

函数

函数的创建与调用

  • 函数调用有没有结果取决于函数的返回值决定的(可以按住Ctrl之后指向函数查看看箭头,返回值None为无返回值)

  • 定义函数返回值时使用:return

  • 函数中没有return时,返回的默认值也为None

  • return后面没有内容时,返回的也为None

  • 返回多个值时,return后面接返回值,用,隔开 例 return name,age,sex

  • return为结束函数的关键字,只要执行到return,就结束函数的调用,跳出函数体

# 创建一个简单的函数,输出你好
def hello():
    """
    函数功能:输出你好
    :return: None
    """
    print('你好')


# 函数的调用
hello()

参数的传递(形式参数与实际参数)

形式参数:形式参数表示在定义函数时函数括号中的参数

实际参数:实际参数表示在调用一个函数时,函数名后面传递的参数,称为实际参数

参数定义的三种形式:

  1. 必须参数:

    定义了几个参数就必须传入几个参数,不能多或者少

  2. 默认参数

    在定义参数时,给参数定义一个默认值,可不传此参数,及为默认值,传了之后变为指定值

  3. 不定长参数

    动态参数,可变参数,一般使用*args*kwargs

必须参数

# 形式参数和实际参数的详解
# 定义类时,定义形式参数name,age,occupation
def introduction(name, age, occupation):
    """
    这是一个自我介绍的类
    :param name: 名字
    :param age: 年龄
    :param occupation:职业
    :return:None
    """
    print("My name is {},I'm {} years old,My occupation is {}".format(name, age, occupation))


# 调用函数,传入实际参数,位置传参
introduction('小明', 18, '代码搬运师')

# 指定参数传参,指定参数传入值,可不需要按照参数的位置进行参数的传入
introduction(age=18, name='小明', occupation='代码搬运师')


# 输出结果
My name is 小明,I'm 18 years old,My occupation is 代码搬运师
My name is 小明,I'm 18 years old,My occupation is 代码搬运师

默认参数

# 根据上面的函数,设置默认参数age = 18
def introduction(name, occupation, age=18):
    """
    这是一个自我介绍的类
    :param name: 名字
    :param age: 年龄
    :param occupation:职业
    :return:None
    """
    print("My name is {},I'm {} years old,My occupation is {}".format(name, age, occupation))


# 调用时不传入age参数,就会调用默认的18
introduction('小明', '代码搬运师')

# 调用时传入参数,就会调用传入的参数
introduction(name='小明', age=20, occupation='代码搬运师')


# 输出结果
My name is 小明,I'm 18 years old,My occupation is 代码搬运师
My name is 小明,I'm 20 years old,My occupation is 代码搬运师

可变参数

*args是可变参数,args接收的是一个tuple

**kw是关键字参数,kwargs接收的是一个dict

# 定义一个输出信息,传入不定长参数
def print_info(*args, **kwargs):
    print(type(args), args)
    print(type(kwargs), kwargs)


li = [1, 2, 3, 4, 5]
dic = {'name': '小明', 'age': 18, 'height': 182}
print_info(1, 2, c=3, d=4)
print_info(*li, **dic)


# 输出结果
<class 'tuple'> (1, 2)
<class 'dict'> {'c': 3, 'd': 4}
<class 'tuple'> (1, 2, 3, 4, 5)
<class 'dict'> {'name': '小明', 'age': 18, 'height': 182}

函数的返回值(return)

在python中,可以在函数体内使用return语句为函数指定返回值,该返回值可以是任何类型,并且无论return语句出现在函数的什么位置,只要得到执行,就会直接结束函数的执行

def test():
    for i in range(1,10):
        if i % 2 == 0:
            print('{},{}是个偶数'.format(i, i))
            return i
        else:
            pass


test()


# 输出结果
2,2是个偶数
posted @ 2020-06-23 15:32  搬砖工周某  阅读(217)  评论(0编辑  收藏  举报