美文网首页
Python中的列表,元组,字典,集合 小记

Python中的列表,元组,字典,集合 小记

作者: 大川的川 | 来源:发表于2020-10-29 18:52 被阅读0次

    列表:[ ]中用逗号隔开的不必相同类型的元素组合list = ['red', 'green', 'blue', 'yellow', 'white', 'black']

    • 索引:正数0是起始位置,负数-1是起始位置
    print( list[0] ) # 输出结果:red
    print( list[-1] ) # 输出结果:black
    
    
    • 截取:支持负数截取(负数索引值是从-1开始)
        # 从第二位开始(包含)截取到倒数第一位(不包含)
        list[1: -1] # 输出结果:['green', 'blue', 'yellow', 'white']
    
    • 排序 sort()排序默认是正序(sort(reverse=False)),sort(reverse=True)是倒序,reverse()是列表倒置
            listNumSort = [10, 4, 90, 16, 25, 36, 49, 6, 81, 100]
            listNumSort.reverse()
            print('反向输出列表listNumSort:', listNumSort) 
            #输出结果:反向排序列表listNumSort: [100, 81, 6, 49, 36, 25, 16, 90, 4, 10]
            listNumSort.sort(reverse=True)
            print('重新排序列表listNumSort:', listNumSort) 
            # 输出结果:重新排序列表listNumSort: [100, 90, 81, 49, 36, 25, 16, 10, 6, 4]
            random = [(2, 2), (3, 4), (4, 1), (1, 3)]
            random.sort()
            print('重新排序二维列表元组random:', random) 
            # 输出结果:重新排序二维列表元组random: [(1, 3), (2, 2), (3, 4), (4, 1)]
            def takeSecond(elem):
                return elem[1] # 获取列表的第二个元素
            random.sort(key=takeSecond)
            print('重新排序二维列表元组random的第二个元素:', random) 
            # 输出结果:重新排序二维列表元组random的第二个元素: [(4, 1), (2, 2), (1, 3), (3, 4)]
    
    • list.append(obj) 在列表末尾添加新的对象,记住是“对象”
    • list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
    • list.pop([index=-1]) pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
    • list.remove(obj) remove() 函数用于移除列表中某个值的第一个匹配项
    • list(seq) 元组转集合

    元组:Python 的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号 ( ),列表使用方括号 [ ]。

    tup1 = (50) 
    print(type(tup1))     # 不加逗号,类型为整型  输出结果:<class 'int'>
    
    • tuple(iterable) 将可迭代系列转换为元组。
    tuple1 = tuple(list)
    tuple1
    print('列表转换成元组list:', tuple1)
    # 输出结果:列表转换成元组list: ('red', 'green', 'blue', 'yellow', 'black')
    

    字典:字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中 ,格式如下所示:d = {key1 : value1, key2 : value2, key3 : value3 }

    • 字典键的特性
      1、不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住
      2、键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行
    • 增,删,改,查
    dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
    del dict['Name']              # 删除键 'Name'
    dict['Age'] = 8               # 修改 Age
    dict['School'] = "新手班"     # 添加信息
    print ("dict['Age']: ", dict['Age']) # 访问
    print ("dict['School']: ", dict['School'])
    # 输出结果:
    # dict['Age']:  8
    # dict['School']:  新手班
    
    • 字典中 copy()和= 的区别
      copy :深拷贝父对象,浅拷贝(二级)子对象(如列表,字典,集合)
      = :浅拷贝,引用对象
    dict1 =  {'user':'runoob','num':[1,2,3]}
    dict2 = dict1          # 浅拷贝: 引用对象
    dict3 = dict1.copy()   # 浅拷贝:深拷贝父对象(一级目录),子对象(二级目录)不拷贝,还是引用
    # 修改 data 数据
    dict1['user']='root'
    dict1['num'].remove(1)
    # 输出结果
    print(dict1) # {'user': 'root', 'num': [2, 3]}
    print(dict2) # {'user': 'root', 'num': [2, 3]}
    print(dict3) # {'user': 'runoob', 'num': [2, 3]}
    

    集合: 集合(set)是一个无序的不重复元素序列。

    可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。创建格式:

    parame = {value01,value02,...}
    或者
    set(value)
    或者
    set((value,value1....values))
    
     # 下面展示两个集合间的运算.
    ...
     a = set('abracadabra')
     b = set('alacazam')
     print(a)                                  
     # 集合a中包含的元素 输出结果:{'d', 'r', 'a', 'b', 'c'}
     print(a - b)                             
     # 集合a中包含而集合b中不包含的元素 输出结果:{'d', 'b', 'r'}
     print(a | b)                              
     # 集合a或b中包含的所有元素 输出结果:{'z', 'd', 'l', 'r', 'a', 'b', 'c', 'm'}
     print(a & b)                              
     # 集合a和b中都包含了的元素 输出结果:{'a', 'c'}
     print(a ^ b)                              
     # 不同时包含于a和b的元素 输出结果:{'r', 'b', 'd', 'z', 'l', 'm'}
    a = {x for x in 'abracadabra' if x not in 'abc'}
    或者
    a = {x for x in a if x not in 'abc'}
    print(a)
    # 查找字符串 'abracadabra'/集合a 中不包括'abc'的值 输出结果:{'d', 'r'}
    thisset = set((1, 2, 3))
    thisset.add("Facebook")
    print(thisset)
    # 向集合中添加值 输出结果:{1, 2, 3, 'Facebook'}
    

    相关文章

      网友评论

          本文标题:Python中的列表,元组,字典,集合 小记

          本文链接:https://www.haomeiwen.com/subject/osnkvktx.html