zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    Android——问题解决之adb not responding;adb不是内部或外部命令;path变量的默认值为多少
    PHP——小尾巴之权限管理
    Android——Android studio项目中如何查看R.java文件(转)
    Genymotion常见问题整合与解决方案(转)
    Android Studio简单设置(转)
    Android——配置环境变量
    Android——寄存器和存储器的区别
    Android——手机尺寸相关的概念 +尺寸单位+关于颜色
    Android——区别DVM与JVM (2)
    Psql 安装问题
  • 原文地址:https://www.cnblogs.com/victory-0315/p/8617397.html
Copyright © 2011-2022 走看看