• day18 函数定义、参数;名称空间;全局变量及局部变量。


    Python之路,Day6 = Python基础6

    函数的定义

    def func1():                # 定义一个函数,名字叫func1,括号中没有传入参数
        print('hello word')     # 这里是 func1 的内容,可以定义为任意代码
        return 1                # return 是返回的意思,后面是返回值,调用时可以用参数接收,返回值的内容可以为任意形式
    # python执行的时候只会检查函数里面是否有语法问题,没有的话,过。。。
    # 函数中可以有多个return, 但是执行到return时,函数停止执行,并返回结果,也就是说,每个函数只会有一个返回值
    # 每个函数都有返回值,如果不写,默认为 None 。

    函数的参数

    #   第一种情况
    def func1(x, y, z):         # 这个函数需要你在使用它的时候传入三个参数
        print(x, y, z)
    
    func1(1,2,3)                # 这种调用时传入的参数需要与上面值为一一对应。
    结果:1, 2, 3
    func1(z = 3, y = 2, x = 1)  # 这种调用方式已经指定了各个参数分别对应给谁,所以可以不必一一对应位置。
    结果:1, 2, 3
    #   第二种情况
    def func2(x=1, y=2, z=3):   # 这个函数在你使用的时候,不是必需传入参数,如果不传入参数的话,那么默认为后面所赋值的内容。
        print(x, y, z)          
    
    func2()
    结果:1, 2, 3
    func2(5, 6, 7)
    结果:5, 6, 7
    
    #   第三种情况
    def func2(x,y,z=3):         # 两种方式可以合并使用,但是由默认赋值的参数,必需放在最后
        pass
    #   第四种情况
    def func3(*args):           # 当我们不知道需要传入多少个参数(1,2,3,4,5)的时候,可以一用 *args 作为参数,这个意思是,把所有的传入的值(所有只传值)作为一个元组保存在 args 中;
        pass                   
    #   第五种情况
    def func3(**args):          # 当我们不知道需要传入多少个参数(x=1,y=2)的时候,可以一用 **kwargs 作为参数,这个意思是,把所有的传入的值(所有只传值)作为一个字典保存在 **kwargs 中;
        pass 

    名称空间
      内置名称空间
        系统自带:如,系统定义好的变量名、函数名、类名等。
      全局名称空间
        自定义的全局的:如,自定义好的变量名、函数名、类名等但他们所定义的位置不应该属于其他的类或方法中。
      局部名称空间
        自定义的局部的:如,自定义好的变量名、函数名、类名
    注:三者的加载顺序,内置名称空间、全局名称空间、局部名称空间

    全局变量及局部变量
    全局变量:内置名称 + 全局名称
      作用域:作用与整个文件
    局部变量:局部名称
      作用域:作用与当前的位置(类或方法等)及包含的子程序(位置或方法等)

  • 相关阅读:
    linux安装skype
    (转)程序员最应该读的图书
    Smarty 学习笔记六 缓存
    Smarty 学习笔记二 常用内置变量
    Smarty 学习笔记七 debug
    文本文件与二进制文件区别
    zz 通用线程:Awk 实例,第 2部分
    MIT墙上的格言
    AWK学习笔记
    zz SED单行脚本快速参考 以及 AWK版本
  • 原文地址:https://www.cnblogs.com/alwaysInMe/p/7003044.html
Copyright © 2020-2023  润新知