python 函数(一)

 

一、作用:

1.减少重复代码

2.方便修改,更易扩展

3.保持代码一致性

二、命名规则:同变量,见->   python基础知识

三、函数的参数:

1.必需参数:必须以正确的顺序传入函数,调用时的数量必须和声明时一样

def print_info(name, age):

    print('Name: %s' % name)
    print('Age: %d' % age)

print_info('Tom', 22)

2.关键字参数:

print_info(name='Tom', age=22)

3.默认参数:一定要跟在其它参数后面(加在形参里)

def print_info(name, age, sex='male'):  # 默认参数

4.不定长参数:

(1)

加法器
def add(*args):   # 通过(*)号接收所有未命名的参数
    print(args)
    num = 0
    for n in args:
        num += n
    print(num)

add(1, 2, 3)

(2)

def print_info(**kwargs):  # 加(**)的变量,接收键值对参数,放到字典中

    print(kwargs)
    for i in kwargs:
        print('%s : %s' % (i, kwargs[i]))
print_info(name='Tom', age=22, job='IT')

>>> {'name': 'Tom', 'age': 22, 'job': 'IT'}

        name : Tom

        age : 22

        job : IT

注意关于不定长参数(形参)的位置:未命名(*args)在左,有命名(**kwargs)在右;如果有默认参数,放左边

四、返回值1.结束函数;2.返回某个值给对象

def f():
    print('ok')

    return 10   # 作用:1.结束函数;2.返回某个值给对象

a = f()
print(a)

>>>  ok

        10

注意:函数如果没有return,会默认返回一个None;  如果return多个对象,python会把多个对象封装成一个元组返回

def f():
    return 10, '123', [1, 2]  

print(f())

>>> (10, '123', [1, 2])

五、函数作用域:定义的变量只在自己的块儿内有效,出了函数的范围相当于没定义

     注意:全局作用域变量不能在局部作用域里面修改,只能查看;对于一个变量,内部作用域先声明就会覆盖外部变量,不声明就直接使用外部作用域的变量;

变量查找顺序:python内置->当前模块中的全局->外部作用域->内部作用域局部

猜你喜欢

转载自www.cnblogs.com/ss-long/p/10344347.html