Python之函数的相关介绍

函数的作用

1.减少重复代码

2.方便修改,更易扩展

3.保持代码一致性

函数的命名规则:

1.函数名必须以下划线或字母开头,可以包含任意字母,数字或下划线的组合,不能使用任何的标点符号。

2.函数名区分大小写。

3.函数名不能是保留字。

形参和实参

形参: 形式参数,不是实际存在的,是虚拟变量。

实参: 实际参数,调用函数时传给函数的参数,可以是常量,变量,表达式,函数,传给形参。

举个例子:

def add(x, y):             # 这里 add(x, y) 里面中的 x, y 就是形参
    print(x + y)
add(1, 2)                  # 调用 add(1, 2) 函数里面的 1, 2 就是实参

运行结果:

3

函数参数分类

1.必备参数:

必备参数必须按正确的顺序传入,数量与申明时一致。

def person(name, age):
    print('My name is %s, age %d' %(name, age))
person('klvchen', 28)

运行结果:

My name is klvchen, age 28

2.关键字参数

函数使用关键字参数进行调用时,允许参数的顺序与声明时不一致。

def person(name, age):
    print('My name is %s, age %d' %(name, age))
person(age = 28, name = 'klvchen')

运行结果:

My name is klvchen, age 28

相关推荐:《Python相关教程》

3.默认参数

调用函数时,用户如果没有传入缺省的值,则被认为是默认值。默认参数只能放在最后。

def person(name, age, sex = 'male'):
    print('My name is %s, age %d sex is %s' %(name, age, sex))
person(age = 28, name = 'klvchen')

运行结果:

My name is klvchen, age 28 sex is male

当用户需要传入非默认参数时:

def person(name, age, sex = 'male'):
    print('My name is %s, age %d sex is %s' %(name, age, sex))
person('lily', 18, 'female')

运行结果:

My name is lily, age 18 sex is female

4.不定长参数

事先没有规定用户输入的参数数量。

(*args)只存放未命名的变量参数,用户输入的参数会组成元组方式传入。

def add(*args):
    print(args)
    total = 0
    for i in args:
        total += i
    print(total)
add(1, 2, 3)

运行结果:

(1, 2, 3)
6

(**kwargs)只存放命名的变量参数,用户输入的参数会组成字典方式传入。

def person(**kwargs):
    print(kwargs)
    for i in kwargs:
        print("%s : %s" %(i, kwargs[i]))
person(name='klvchen', job='IT')

运行结果:

{'name': 'klvchen', 'job': 'IT'}
name : klvchen
job : IT

(*args)和(**kwargs)配合一起使用即可以接受用户输入的全部参数:

def person( *args, **kwargs):
    print(args)
    print(kwargs)
    print()
    for l in args:
        print(l)
    for i in kwargs:
        print("%s : %s" %(i, kwargs[i]))
person(1, 2, 3, 4, name='klvchen', job='IT')

运行结果:

(1, 2, 3, 4)
{'name': 'klvchen', 'job': 'IT'}
1
2
3
4
name : klvchen
job : IT

函数的返回值

函数返回单个值

def test():
    return 'hello world'
result = test()
print(result)

运行结果:

hello world

函数返回多个值

def test():
    return 1, [2, 3]
result = test()
print(result)

运行结果:

(1, [2, 3])

注意:

1.如果函数没有 return 关键字,默认会返回 None。

2.如果函数 return 多个值,Python 会把多个值组成一个元组返回。

3.函数在执行过程中如果遇到 return 关键字就会停止执行并返回结果,return 代表着函数的结束。

来源:PY学习网:原文地址:https://www.py.cn/article.html

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » Python之函数的相关介绍