Python | 函数

2019-10-01  本文已影响0人  Ricsy


一、函数的介绍

print("                            _ooOoo_  ")
print("                           o8888888o  ")
print("                           88  .  88  ")
print("                           (| -_- |)  ")
print("                            O\\ = /O  ")
print("                        ____/`---'\\____  ")
print("                      .   ' \\| |// `.  ")
print("                       / \\||| : |||// \\  ")
print("                     / _||||| -:- |||||- \\  ")
print("                       | | \\\\\\ - /// | |  ")
print("                     | \\_| ''\\---/'' | |  ")
print("                      \\ .-\\__ `-` ___/-. /  ")
print("                   ___`. .' /--.--\\ `. . __  ")
print("                ."" '< `.___\\_<|>_/___.' >'"".  ")
print("               | | : `- \\`.;`\\ _ /`;.`/ - ` : | |  ")
print("                 \\ \\ `-. \\_ __\\ /__ _/ .-` / /  ")
print("         ======`-.____`-.___\\_____/___.-`____.-'======  ")
print("                            `=---='  ")
print("  ")
print("         .............................................  ")
print("                  佛祖镇楼                  BUG辟易  ")
print("          佛曰:  ")
print("                  写字楼里写字间,写字间里程序员;  ")
print("                  程序人员写程序,又拿程序换酒钱。  ")
print("                  酒醒只在网上坐,酒醉还来网下眠;  ")
print("                  酒醉酒醒日复日,网上网下年复年。  ")
print("                  但愿老死电脑间,不愿鞠躬老板前;  ")
print("                  奔驰宝马贵者趣,公交自行程序员。  ")
print("                  别人笑我忒疯癫,我笑自己命太贱;  ")
print("                  不见满街漂亮妹,哪个归得程序员?")

二、函数的使用

2.1 先定义后调用函数

序号 函数类型
1 无参数无返回值
2 无参数有返回值
3 有参数无返回值
4 有参数有返回值

类型1

def my_func():
    ...
    [pass]

对应的调用方法:

my_func()

类型2

def my_func():
    ...
    return 返回值

对应的调用方法:

varname = my_func()

类型3

def my_func(形参1, 形参2,...):
    ...
    [pass]

对应的调用方法:

my_func(实参1, 实参2,...)

类型4

def my_func(形参1, 形参2,...):
    ...
    return 返回值

对应的调用方法:

varname = my_func(实参1, 实参2,...)

2.2 函数参数

涉及形参、实参和默认值

参数类型 描述
缺省参数 1. 调用函数时有实参,则取实参,否则取默认值



2. 定义函数时形参使用了缺省参数,那么后面的形参也必须使用缺省参数

位置参数 形参与实参必须在位置上一一对应

关键字参数 在调用函数时使用了函数的形参名,等号前后没有空格

2.3 return作用

  1. return 结束语句,提前结束函数
    作为性能考虑
return
  1. 返回函数返回值,并结束函数
函数返回值 描述
一个return return 值
多个return return 值1, 值2,...        默认返回元组

return (值1, 值2,...)       返回元组

return [值1, 值2,...]       返回列表

return {"key2":值1, "key1":值2,...} 返回字典

2.4 函数嵌套

函数的定义中存在调用了其他定义的函数
格式:

  1. 正确示例
def my_func1():
    pass


def my_func2():
    my_func1()
    pass
  1. 错误示例
def my_func1():
    my_func2()
    pass


def my_func2():
    pass

2.5 拆包

  1. 可以对含多个元素的对象(类型是列表、元组、字典)进行拆包

eg:

my_list = [1, 3.14, 'hello', True]
num, pi, my_str, my_bool = my_list
print(num, pi, my_str, my_bool)

结果:1 3.14 hello True

  1. 可以对含多个值的返回值(类型是列表、元组、字典)进行拆包

2.6 交换变量的值

eg:

a = 0
b = 1
tmp = a
a = b
b = tmp
print(a, b)

结果:1 0

2.7 函数的文档说明

help()

eg:

help(str)

只写方法名,没有小括号

eg:

help(str.join)

提示:

  • 查看的自定义的函数
    help()返回的是函数中的注释
    eg:
def add2num(a, b):
   """
   这个函数使用计算两个数的和
   :param a: 加数1
   :param b: 加数2
   :return:  返回值是两个加数的和
   """
   return a+b

help(add2num)
结果:

2.8 局部变量与全局变量

函数使用变量时,优先使用局部变量,然后才是全局变量

函数变量 描述 作用域
局部变量 指定义在函数内部的变量

1. 不同函数内部的局部变量可以重名
仅限于函数的内部,函数外部不可以调用
全局变量 指定义在函数外部的变量

1. 全局变量不可以重名
整个模块内

eg:

num = 10


def print_info():
    global num
    print(num)

    
print_info()

更新中......


上一篇下一篇

猜你喜欢

热点阅读