zoukankan      html  css  js  c++  java
  • 函数参数相关整理

     1 def func(a,*args,b=1,**kwargs):    #形参部分
     2 # a是位置参数,b是默认参数,*args接收除关键字参数以外所有数据..**kwargs可接收除对应关键字参数以外所有数据.
     3 # def func(*args,**kwargs):         #万能接收
     4     '''
     5     :param      args:要标识的内容
     6     :param      kwargs:要标识的内容
     7     :return     :要标识的内容
     8     '''
     9     print(a)                                        #位置参数,可放任何数据类型
    10     print(*args)                                    #打散元组或列表类型为单独数据
    11     print(args)                                     #args接收数据以元组形式
    12     print(b)                                        #关键字参数,修改值
    13     print(*kwargs)                                  #打散关键字参数,(字典的键)单独数据
    14     print(kwargs)                                   #关键字参数,按字典方式输出{'d': 2, 'c': 1, 'e': 5}
    15 func({1,2,3,4},[1,3,4,6,8],2,5,b=8,d=2,c=1,e=5)     #参数顺序:位置参数,动态位置,关键字参数,动态关键字

    结果对照:

    1 {1, 2, 3, 4}
    2 [1, 3, 4, 6, 8] 2 5
    3 ([1, 3, 4, 6, 8], 2, 5)
    4 8
    5 d c e
    6 {'d': 2, 'c': 1, 'e': 5}

    声明局部变量和全局变量:

     1 def func():
     2     global a                #global直接将变量提到全局,不影响上一层同名变量..全局变量在局部作用域中使用时,只可被访问无法被修改
     3     a = 20
     4     b = 20
     5     def func1():
     6         nonlocal b              #nonlocal修改离它最近的局部变量(非全局,否则报错)
     7         b = 10
     8     func1()
     9     print(b)
    10     print(locals())         #locals()查看当前作用于的所有变量和方法
    11 func()                  #globals()查看全局作用域的的变量和方法
    12 print(a)

    结果对照:

    1 10
    2 {'func1': <function func.<locals>.func1 at 0x00000138459C87B8>, 'b': 10}
    3 20
  • 相关阅读:
    appium自动化测试搭建
    How to install Qt Creator on Ubuntu 18.04
    Luci
    OpenWrt 根文件系统启动过程分析
    shell 杂烩
    OpenWrt Luci 调试日志输出的一种方法
    jQuery实现购物车计算价格的方法
    js实现购物车添加,减少数量
    golang-键盘录入数据
    JAVA存储机制(栈、堆、方法区详解)
  • 原文地址:https://www.cnblogs.com/NoteBook3013/p/10245512.html
Copyright © 2011-2022 走看看