当前位置 博文首页 > python解包用法详解

    python解包用法详解

    作者:小妮浅浅 时间:2021-07-26 17:49

    对于一堆资料,我们可以把它分给不同的人使用,这个分散的过程,我们可以看成是解包方法是实现。当然实际python解包的使用会相对复杂一点,我们会对常见的列表、函数等进行操作。下面我们就Python解包的使用进行说明,然后带来两种解包方法的详解,大家一起往下看。

    1、使用说明

    (1)解包的意义就是将传递给函数的一个列表,元组,字典,拆分成独立的多个元素然后赋值给函数中的形参变量。

    (2)解包字典有两种解法,一种用*解的只有key,一种用**解的有key、value。但是这个方法**只能在函数定义中使用。

    2、*方法

    字典解包后,只会把字典的key取出来,value 则丢掉了。

    (1)列表解包

    a, b, c = [1, 2, 3]
    print(a, b, c)
    # 1 2 3

    (2)元祖解包

    a, b, c = (1, 2, 3)
    print(a, b, c)
    # 1 2 3

    (3)字符串解包

    a, b, c = "abc"
    print(a, b, c)
    # a b c

    (4)字典解包

    a, b, c = {"a": 1, "b": 2, "c": 3}
    print(a, b, c)
    # a b c

    接收函数返回值

    def test():
      return 1, 2, 3
    a, b, c = test()
    print(a, b, c)   # 1 2 3

    3、**方法函数解包

    函数的返回值是一个元组,左侧是三个变量,这样就会发生解包,a, b, c依次等于元组里的元素,函数的返回值有3个,被封包成了元组, 赋值语句的左侧不一定非得是3个变量。

    def test():
      return 1, 2, 3
    a, *b = test()
    print(a, b)   # 1 [2, 3]

    变量a赋值为1,变量b前面有一个星号,剩余的2,3 将被解包为列表。

    知识点扩展:

    了解解包,首先要了解什么是参数。比如我们要运行ex1.py这个文件,我们可以在命令行(徽标键+r)中输入命令“pyhton ex1.py”即可运行,但注意要先进入到py文件所在路径。其中,ex1.py便是参数。下面以一个可以接受参数的脚本为例来阐述相关知识。

    from sys import argv
    #import语句目的是将python功能引入脚本当中,一看“import”,就知道程序使用了哪些功能
    #argv是“参数变量”的意思,这是一个非常标准的编程术语。这个变量包含了用户传递给python的参数
    #用“import”导入进来的功能称为“模组(modules)”(也有人叫作“库”)。
     
    script,first,second,third = argv
    #上面一行作用是给argv“解包(unpack)”,即一次性将所有参数赋予变量名
    #可理解为将argv中的东西解包,即将所有的参数依次赋予左边的变量名
     
    print("the script is called:", script)
    print("your first variable is:",first)
    print("your second variable is:",second)
    print("your third variable is:",third)
    jsjbwy
    下一篇:没有了