zoukankan      html  css  js  c++  java
  • 序列解包操作

    任意可迭代对象都可以进行解包操作

    • 字符串
    • 元组
    • 列表
    • 文件对象
    • 迭代器和生成器

    原则: 赋值变量的个数和可迭代对象的个数保持一致

    字符串

    name = 'wangys'
    a, b, c, d, e, f = name
    print(a)
    print(b)
    print(c)
    print(d)
    print(e)
    print(f)
    
    w
    a
    n
    g
    y
    s

    元组

    info = ('wangys', 30, (1990, 10, 19))
    name, age, date = info
    print(name)
    print(age)
    print(date)
    name, age, (year, mon, day) = info
    print(year)
    print(mon)
    print(day)
    
    wangys
    30
    (1990, 10, 19)
    1990
    10
    19

    只取所需时,如果我们知道可迭代对象的个数,可以使用一个之前没有定义过的变量站位

    info = ('wangys', 30, (1990, 10, 19))
    _, age, _ = info
    print(age)
    30

    可以使用*变量名来解压多个值

    • *变量名   变量名的值是一个列表
    • 如果这些值我们不需要可以使用 _* 或者_ign 来表示我们并不需要这些变量值
    info = 'sunachr-prod:x:1003:1003::/home/sunachr-prod:/bin/bash'
    name, *fields, homedir, sh = info.split(':')
    print(name)
    print(homedir)
    print(sh)
    print(fields)
    
    sunachr-prod
    /home/sunachr-prod
    /bin/bash
    ['x', '1003', '1003', '']
    
    
    
    
    info = 'sunachr-prod:x:1003:1003::/home/sunachr-prod:/bin/bash'
    name, *_, homedir, sh = info.split(':')
    print(name)
    print(homedir)
    print(sh)
    sunachr-prod
    /home/sunachr-prod
    /bin/bash
  • 相关阅读:
    angular
    客户端存储cookie ---(优缺点及定义及用途)
    cookie的设置和获取
    和谐敏感字
    移动端上滑下滑换图片
    移动端适配方式
    Viewport及判断移动端上下滑动
    HTML5拖放&地理定位
    用canvas 做一个钟表
    用canvas上传图片
  • 原文地址:https://www.cnblogs.com/wc89/p/12658525.html
Copyright © 2011-2022 走看看