• python之路05


    一  元组

     对于元组我们可以把他看成一个不可变的列表
    # 元组:在()内用逗号分隔开的能够存多个值,对于元组来说列表有的一些功能它基本上都有,
    # 1、按索引取值(正向取+反向取):只能取
    # 2、切片(顾头不顾尾,步长)
    # 3、长度
    #4、成员运算in和not in
    #5、循环
    # age=(11,22,33,44,55,66,77,88,99,90)对于元组来说他相当于就是age=tuple(11,22,33,44,55,66,77,88,99,90)
    #按照索引取值:
    # age=(11,22,33,44,55,66,77,88,99,90)
    # print(age[0])
    # 同样可以正向或者反向取,但是有一点就是元组只能取,而不能改。
    #tuple可以作为一种操作:
    # s='dfdkfkfugg'
    # t=tuple(s)#可以将字符串转换成元组,在这个循环的过程实际上是一个循环的过程,把字符串中的字符一个一个转换成tuple的形式放到元组中去。

    总结:可存多个元素,元素不可变。

    二  字典

     字典能够存多个值,但是是以key—value的形式存取,key与value在字典中是一个映射关系,通过key来取值,速度快。
    # info={'name':'james','sex':'female','age':33}
    # 在这个过程中,本质上来说相当于:
    # info=dict({'name':'james','sex':'female','age':33})的一个过程。
    # 等于info=dict(name='james',sex='female',age=33)
    # 等于info=dict(['name':'james'],['sex':'female'],['age':33])
    # 等于{}.fromkeys(('name','sex':,'age'),None)
    # 那么对于字典中的key是不可变的,对于value是可变的。

     2.1  字典的存取值

    按key存取值
    # dic={'nike':500,'anta':100,'lining':200,'name':'james'}
    # info=dic['nike']#将‘nike’所对应的值取出来
    # l=dic.get('fg',None)#从字典中取键值,get的好处就是,即使输入错误的键值,程序不会报错,只是不能取到键值。
    # for item in dic:
    #   print(dic[item])#如果想取出键,则直接打印item。若想打印出键值则打印dic[item]
    #   print(item,dic[item])#取出键值对
    # print(dic.keys())#以dict_keys(['nike', 'anta', 'lining', 'name'])的形式输出字典的key值。
    # print(dic.values())#以dict_values([500, 100, 200, 'james'])形式输出字典的values。
    # print(dic.items())##以dict_items([('nike', 500), ('anta', 100), ('lining', 200), ('name', 'james')])的形式输出键值对。

      2.2  循环与删除

    #那么在字典中,删除字典里面的内容我们可以用pop和del
    #当然首选pop
    
    # print(dic.pop('nike'))#pop会根据输入的键弹出对应的values,同时可以取出弹出的values
    
    
    #循环
    # 那么同样的我们可以按照循环来取出字典中的键值对
    # for item in dic:
    #   print(dic[item])#如果想取出键,则直接打印item。若想打印出键值则打印dic[item]
    #   print(item,dic[item])#取出键值对,同时将键值取出。
    
    #那么同样是同时将键值对取出:
    1 #
    # for item in dic:
           # print(item,dic[item])
    
     # 2
    # #print(dic.items())
     ##取出来的形式不同

    三  集合

    # st1={'1','2','3','4'}
    # 集合:可以包含多个元素,用{}括起来的,用逗号分割。
    # 集合的元素遵循三个原则:
    # 1:每个元素必须是不可变类型(可hash,可作为字典的key)这一点与元组是一样的。
    # 2:没有重复的元素,所以集合又具有去重的功能。
    # 3:无序,所以对于集合的取值不能按照索引来取值。
    # 集合的运算
    # 集合的运算分为:
    # 交集
    1#
    # st1={'1','2','3','4'}
    # st2={'1','5','7','8'}
    # print(st1&st2)
    2#
    # st1={'1','2','3','4'}
    # st2={'1','5','7','8'}
    # st1.intersection(st2)
    # print(st1.intersection(st2))
    
    #并集
    1#
    # st1={'1','2','3','4'}
    # st2={'1','5','7','8'}
    # print(st1|st2)
    2#
    # st1={'1','2','3','4'}
    # st2={'1','5','7','8'}
    # print(st1.union(st2))
    
    # 交叉补集
    # 1#
    # st1={'1','2','3','4'}
    # st2={'1','5','7','8'}
    # print(st1^st2)
    # 2#
    # print(st1.symmetric_difference(st2))
    
    # 差集
    # 1#
    # st1={'1','2','3','4'}
    # st2={'1','5','7','8'}
    # print(st1-st2)
    # print(st2-st1)
    # 2#
    # print(st1.difference(st2))
    # print(st2.difference(st1))
    
    # 父集与子集
    # 父集与子集是一个相对应的关系,
    
    # st1={'1','2','3','4'}
    # st2={'1','2',}
    # 那么这个时候就说st1是st2的父集,
    # 相对应的st2就是st1的子集
    
    # st1={'1','2','3','4'}
    # st2={'1','5','7','8'}
    # # print(st1&st2)
    # # print(st1|st2)
    # # print(st1-st2)
    # # print(st2-st1)
    # print(st1^st2)
    # st1={'1','2','3','4'}
    # st2={'1','2','3','4'}
    # print(st1>=st2)
    # print(st1<st2)
    
    
    # 集合去重:
    # 集合去重的原理就是,集合中不能含有重复的元素
    # # 现在我们定义一个列表:
    # l=['1','2','sd','er','a','a','1']
    # st=set(l)
    # print(st)
    # # 输出结果为:可以看出输出的顺序没有按照列表的顺序,因为集合是无序的。而重复的部分被去除
    # {'sd', 'er', 'a', '1', '2'}
    
    #那么我们如何实现在不改变列表中的顺序的情况下去重呢
    
    1#
    # l=['1','2','sd','er','a','a','1']
    # st=set()
    # l1=[]
    # for item in l:
    #     if item not in st:
    #         l1.append(item)
    # print(l1)
    
    2#
    # l1=[]
    # for item in l:
    #     if item not in l1:
    #         l1.append(item)
    # print(l1)
  • 相关阅读:
    随意记的一点 js 笔记
    关于 <video> 的兼容性测试
    placeholder 兼容 IE
    固定高度的多行文字垂直居中
    CSS 实现底部固定
    python学习之路基础篇(三)
    PyChram简单使用教程
    三级菜单的实现
    python序列化pickle/cPickle
    python解析json文件之简介
  • 原文地址:https://www.cnblogs.com/zhangsanfeng/p/8620046.html
Copyright © 2020-2023  润新知