zoukankan      html  css  js  c++  java
  • 列表,元组,字典,集合

    一、列表

     1 #创建一个列表
     2 names = ['zhangsan','lisi','wangwu','zhaoliu','ruanxiaoqi']
     3 print(names)
     4 
     5 #列表后面增加元素
     6 names.append('lulu')
     7 print(names)
     8 
     9 #指定位置插入元素
    10 names.insert(2,'lili')
    11 print(names)
    12 
    13 #打印元素的内容
    14 names[2]
    15 print(names)
    16 
    17 #删除元素
    18 names.remove('lili')
    19 print(names)
    20 
    21 #删除指定位置元素
    22 del names[2]
    23 print(names)
    24 
    25 #删除最后一个元素
    26 names.pop()  #names.pop(2) 删除下标为2的元素
    27 print(names)
    28 
    29 #获得已知元素的下标
    30 index = names.index('lisi')
    31 print(index)
    32 
    33 #查询列表里的元素个数
    34 count = names.count('lisi')
    35 print(count)
    36 
    37 #倒序排列
    38 names.reverse()
    39 print(names)
    40 
    41 #排序
    42 names.sort()
    43 print(names)
    44 
    45 #names2合并到names
    46 names2 = ['linda','michael','peter']
    47 names.extend(names2)
    48 print(names)
    49 
    50 #删除names2
    51 del names2
    52 print(names2)
    53 
    54 #前copy
    55 #copy()方法为浅层复制,复杂类型只复制内存地址并不复制指向的数据
    56 names3 = names.copy()
    57 print(names3)
    58 
    59 #深层copy
    60 inport copy
    61 names3 = copy.deepcopy(names)
    62 print(names)
    63 print(names3)
    64 
    65 #循环列表
    66 for i in names:
    67     print(i)
    68 
    69 #从0开始到-1,每2个打印一次
    70 print(names[0:-1:2])
    列表操作

    二、元组

    1 #定义元组
    2 names = ('zhangsan','lisi','wagnwu')
    3 #查询'lisi'的下标,有重复的返回左边的下标
    4 print(names.index('lisi'))
    5 >>1
    6 names = ('zhangsan','lisi','wagnwu','lisi')
    7 #统计'lisi'有几个
    8 print(names.count('lisi'))
    元组操作

    三、字典

     语法:

    1 info = {
    2     'stu1101': "TengLan Wu",
    3     'stu1102': "LongZe Luola",
    4     'stu1103': "XiaoZe Maliya",
    5 }

    字典的特性:

    • dict是无序的
    • key必须是唯一的,so 天生去重
     1  1 #增加
     2  2 info['stu1101'] = '苍老师'
     3  3 print(info)
     4  4 >>{'stu1101': 'TengLan Wu', 'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1104': '苍老师'}
     5  5 
     6  6 #修改
     7  7 info['stu1101'] = "武藤兰"
     8  8 print(info)
     9  9 >>{'stu1101': '武藤兰', 'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya', 'stu1104': '苍老师'}
    10 10 
    11 11 #删除
    12 12 info.pop('stu1101')
    13 13 print(info)
    14 14 >>{'stu1102': 'LongZe Luola', 'stu1103': 'XiaoZe Maliya'}
    15 15 #删除2
    16 16 del info['stu1103']
    17 17 print(info)
    18 18 >>{'stu1102': 'LongZe Luola'}
    19 19 #随机删除
    20 20 info.popitem()
    21 21 print(info)
    22 22 >>{'stu1101': '武藤兰', 'stu1102': 'LongZe Luola'}
    23 23 
    24 24 #查询'stu1101'是否在字典里
    25 25 print("stu1101" in info)
    26 26 >>True
    27 27 
    28 28 #获取key的value
    29 29 print(info.get("stu1102"))
    30 30 >>LongZe Luola
    31 31 print(info["stu1102"])  #同上,但是key为空报错,get返回None
    字典操作

     多级字典嵌套操作

    info = {'aa':{'aa':['bb']},
            'bb':{'cc':['ae']}
            }
    info['aa']['aa'][0]+='cc'
    a = info['aa']['aa'][0]
    print(a)
    >>bbcc

    四、集合

     集合是一个无序的数据组合。

    特性:去重,没有重复的元素

     1 #交集
     2 print(set_1.intersection(set_2))
     3 print(set_1 & set_2)
     4 >>{'a', 4}
     5 >>{'a', 4}
     6 #并集
     7 print(set_1.union(set_2))
     8 print(set_1 | set_2)
     9 >>{1, 2, 'a', 4, 5, 6, 12}
    10 >>{1, 2, 'a', 4, 5, 6, 12}
    11 #差集
    12 print(set_1.difference(set_2))
    13 print(set_1 - set_2)
    14 >>{1, 2, 5, 6}
    15 >>{1, 2, 5, 6}
    16 #对称差集
    17 print(set_1.symmetric_difference(set_2))
    18 print(set_1 ^ set_2)
    19 >>{1, 2, 5, 6, 12}
    20 >>{1, 2, 5, 6, 12}
    21 
    22 
    23 #判断是否子集
    24 set_3 = set([4,2])
    25 print(set_3.issubset(set_1))
    26 >>True
    27 #判断是否父级
    28 print(set_1.issuperset(set_3))
    29 >>True
    30 
    31 #删除一个元素,返回被删除元素
    32 set_1 = set([1,2,4,6,'a',4,5,])
    33 print(set_1.pop())
    34 print(set_1)
    35 >>1
    36 >>{2, 4, 5, 6, 'a'}
    37 
    38 #添加一个元素
    39 print(set_1)
    40 set_1.add('d')
    41 print(set_1)
    42 >>{1, 2, 4, 5, 6, 'a'}
    43 >>{1, 2, 4, 5, 6, 'a', 'd'}
    44 
    45 #添加多个元素
    46 print(set_1)
    47 set_1.update('d','g')
    48 print(set_1)
    49 >>{1, 2, 4, 5, 6, 'a'}
    50 >>{1, 2, 4, 5, 6, 'd', 'a', 'g'}
    51 
    52 #随机删除一个元素,返回删除的元素
    53 print(set_1.pop())
    54 print(set_1)
    55 >>1
    56 >>{2, 4, 5, 6, 'a', 'd'}
    57 
    58 #删除指定元素,无返回值,被删除元素不存在返回None
    59 print(set_1.discard('a'))
    60 print(set_1)
    61 >>None
    62 >>{1, 2, 4, 5, 6, 'd'}
    63 
    64 #删除指定元素,无返回值,被删除元素不存在报错
    65 print(set_1.remove(12))
    66 print(set_1)
    67 
    68 #查看长度
    69 print(len(set_1))
    70 >>6
    71 
    72 #查看元素是否在集合内
    73 print(1 in set_1)
    74 print(1 not in set_1)
    75 >>True
    76 >>False
    77 
    78 #浅复制
    79 set_4 = set_1.copy()
    80 print(set_1,set_4)
    81 >>{1, 2, 4, 5, 6, 'a'} {1, 2, 4, 5, 6, 'a'}
    集合操作
  • 相关阅读:
    python ping监控
    MongoDB中一些命令
    进制转换(十进制转十六进制 十六进制转十进制)
    通过ssh建立点对点的隧道,实现两个子网通信
    linux环境下的各种后台执行
    python requests请求指定IP的域名
    不需要修改/etc/hosts,curl直接解析ip请求域名
    MongoDB数据update的坑
    windows平台使用Microsoft Visual C++ Compiler for Python 2.7编译python扩展
    rabbitmq问题之HTTP access denied: user 'guest'
  • 原文地址:https://www.cnblogs.com/yl-2016/p/6775085.html
Copyright © 2011-2022 走看看