• Python之路(六)---> 函数、变量


      Python中的函数和数学上的函数定义是不一样的,从数学的角度上来说函数的定义:给定一个数集A,假设其中的元素为x。现对A中的元素x施加对应法则f,记作f(x),得到另一数集B。假设B中的元素为y。则y与x之间的等量关系可以用y=f(x)表示。我们把这个关系式就叫函数关系式,简称函数。函数概念含有三个要素:定义域A、值域C和对应法则f。其中核心是对应法则f,它是函数关系的本质特征。

      Python中的函数是以def关键字开头,后面接函数标识符和圆括号(),任何传入参数和自变量必须放在圆括号中间,圆括号之间也可以用于定义参数。函数的第一行可以选择性地添加注释,函数内容以冒号起始,并且缩进。return[表达式]结束函数,选择性的返回一个值给调用方,若没有return相当于返回None。

      Python定义函数使用def关键字,一般格式如下:

    #函数的格式:
    #def 函数名(参数列表):
    #    函数体

      默认情况下,参数值和参数名称是按函数声明中定义的顺序来匹配的。当然我们也可指定。例:

    #不指定时
    def test(x,y,z):
         print(x)
         print(y)
         print(z)
    
    test(1,2,3)
    #执行结果:x=1,y=2,z=3
    
    #指定时
    def test(x,y,z):
         print(x)
         print(y)
         print(z)
    
    test(y=1,x=3,z=4)
    
    #执行结果:y=1,x=3,z=4

      变量分为全局变量和局部变量。定义在函数内部的变量拥有一个局部作用域,这个变量我们成为局部变量;定义在函数外的拥有全局作用域,这个变量我们称为全局变量。例:

    total = 0
    def sum(num1, num2):
        total = num1 + num2  
        print("局部变量 : ", total)
        return total
    
    sum(10, 20)
    print("全局变量 : ", total)
    
    #执行结果:局部变量 :  30
    #              全局变量 :  0

      当内部作用域想修改外部作用域的变量时,就要用到global和nonlocal关键字了。

      global:修改全局变量,例:

    NAME = "alex"
    def test():
    global NAME
    print(NAME)
    NAME = "root"
    print(NAME)

    test()
    print(NAME)

    #执行结果:

    #alex
    #root
    #root

      nonlocal:修改上一级变量,例:

    name = "ton"
    def test():
        name = "jock"
        def one1():
            nonlocal name
            name = "root"
        one1()
        print(name)
    print(name)
    test()
    
    #执行结果:
    #ton
    #root
  • 相关阅读:
    C3线性化
    fingerprint for the ECDSA key
    tmp
    线性筛(欧拉筛)
    tmp
    tmp
    Micro Frontends 微前端
    TreeFrog Framework : High-speed C++ MVC Framework for Web Application http://www.treefrogframework.org
    消息同屏转发
    web-linux-shell实现 阿里方案canvas+wss。
  • 原文地址:https://www.cnblogs.com/liuzhaoling/p/9831528.html
Copyright © 2020-2023  润新知