• Python学习杂记_11_函数(一)


    函数也叫方法,就是把实现某种功能的一组代码封装起来,当你需要这个功能时直接调用函数即可。

    定义函数
    定义函数时要注意 “def”关键字,“:”,“函数体缩进”;用“return”使函数有具体返回值,没有return返回“None”.
    def SUM(a, b):
    return a + b

    调用函数:
    函数名()的格式就可以调用函数
    def SUM(a, b):
    return a + b
    num1 = int(input("Please input num1: "))
    num2 = int(input("Please input num2: "))
    sum = SUM(num1,num2)
    print("num1 + num2 = %d" %sum)

    函数的参数:
    参数是写在函数()里面的东东。定义函数时,括号里面的参数是形式参数简称“形参”;调用函数时,括号里面的参数是实际参数简称“实参”。
    参数具体有下面几类:
    位置参数(必填)
    def p_info(name, age,sex):

    默认值参数(非必填)
    def p_info(name, age,sex = '男'):

    可变参数 (*args)
    也叫参数组,非必填,传参时个数不固定,接收的是个元祖
    def post(*args):
    post("001","login","http://www.baidu.com","post","a=1") # 调用时根据实际情况传递的参数可多可少

    关键字参数 (**kwargs)
    非必填,传参时用 key = value 的方式,参数个数不固定,接收的是个字典,也可直接用字典传参
    def p_info(**kwargs):
    p_info(name="张三",age=18,id="001")

    d={"name":"张三","age": 18, "id": "001"}
    p_info(**d) # 直接传字典

    如果参数列表中同时有“位置参数”,“默认值参数”,“可变参数”和“关键字参数”,调用函数时传参的顺序是
    “位置参数”->“默认值参数”->“可变参数”->“关键字参数”
    如果参数都是必填参数且个数较多我们很容易忘记各参数的顺序,可以用指定参数传值的方法,称之为参数的“关键字调用”

    def write(filename, model,e-coding,user,os, money, other):
    write(os='Win7',user='张三',model='w',filename='a.txt',e-coding='utf-8',money=999,other='AAA')
    # 如此可以不按顺序,但个数不能少

    全局变量和局部变量:
    有了函数就会涉及到“全局变量”和“局部变量”的概念。局部变量是定义在函数里的,有函数才有它,函数被调用时该函数的
    局部变量被定义,函数执行结束时,改变量被释放;全局变量是定义在函数之外的可被整个程序共享,只有程序结束时才被释放。
    如果想在函数内操作全局变量,int 和 string型的需要在变量前加global关键字,字典和列表型就不用加global关键字。

    name = "张三"

    def p_info():
    name = "Mike"
    print("name:", name)

    p_info()
    print(name)

    运行结果:
    name: Mike
    张三

    name = "张三"

    def p_info():
    global name
    name = "Mike"
    print("name:", name)

    p_info()
    print(name)

    运行结果:
    name: Mike
    Mike
  • 相关阅读:
    在Linux(Ubuntu)下安装Arial、Times New Roman等字体
    Qt的安装和使用中的常见问题(简略版)
    Qt的安装和使用中的常见问题(详细版)
    机械+固态双硬盘时机械硬盘卡顿问题解决
    在Qt(C++)中与Python混合编程
    在Notepad++中快捷选中多行
    在Linux下访问Windows共享文件夹
    Ubuntu下U盘只读文件系统,图标上锁,提示无法修改
    使用Qt Installer Framework制作软件安装包
    Swoole练习 websocket
  • 原文地址:https://www.cnblogs.com/victory-0315/p/8617397.html
Copyright © 2020-2023  润新知