• 三、元组,字典、集合


    # 一、元组:可以理解成不可变的列表。用来存放多个值,只有读的需求没有改的需求,
    # 在元素个数相同的情况下使用元组更加节省空间,效率更高。
    # 定义:
    # 包含在小括号内用逗号隔开的元素。 doc=(1,2,3,4,5,6)
    #总结:元组可以有序的存放多个值,为不可变类型。
    #常用操作+内置的方法:
    #优先掌握的操作:
    #1、按索引取值(正向取+反向取):只能取
    # doc=(1,2,3,4,5,6)
    # print(doc[1])正向取值
    # print(doc[-2])

    # 2、切片(顾头不顾尾,步长)
    # doc=(1,2,3,4,5,6)
    # print(doc[1:4])

    # tuple创建一个新的元组
    # 式列:
    # print(tuple('hello'))
    # for i in range(10000):
    # print(i)
    # print(tuple(range(10000)))

    #3、长度
    # doc=(1,2,3,4,5,6)
    # print(len(doc))
    #4、成员运算in和not in
    # doc=(1,2,3,4,5,6)
    # print(1 not in doc)
    #5、循环
    # doc=(1,2,3,4,5,6)
    # for i in doc:
    # print(i)

    # t=('a','b','c','c')
    # t[0]=1111
    # print(t.index('a')) #index获取元组中元素的索引值
    # print(t.count('b')) #count获取元组中相同元素的个数
    #二 字典:{}内以逗号分隔多个元素格式为key:value,优点存取速度快,每一个值都对应一个key,
    # 其中key为不可变类型,value可以为任意类型的值。key值不能重复。
    # dic={'x':1,'y':1,'x':1111}
    # print(dic)
     总结:
    1、存多个值
    2、无序
    3、可变

    # 3 常用操作+内置的方法
    #优先掌握的操作:
    #1、按key存取值:可存可取
    # 取:
    # dic={'name':'egon'}
    # print(dic['name'])
    # 存:
    # dic={'name':'egon'}
    # dic['age']=10,
    # dic['yang']='name'
    # print(dic)
    #输出结果: {'name': 'egon', 'age': (10,), 'yang': 'name'}
    #把key对应的值转换为小写 lower 转换为大写upper
    # dic={'name':'egon'}
    # dic['name']=dic['name'].upper() #lower()
    # print(dic)

    #2、长度len
    # dic={'name':'egon','age':18}
    # print(len(dic))


    #3、成员运算in和not in:判断的字典的key
    # dic={'name':'egon','age':18}
    # print('age' in dic)


    #4、删除
    # dic={'name':'egon','age':18}
    # res=dic.pop('name')
    # print(res)
    # print(dic)

    # res=dic.pop('sex',None) pop()key值后可以跟,None 如果字典中没有对应的key值则反馈一个值。
    # print(res)

    #5、键keys(),值values(),键值对items()
    # dic={'name':'egon','age':18}
    # print(dic.keys())
    # print(dic.keys() #取出字典中的多个key
    # for x in dic.keys():
    # print(x)
    # print(list(dic.keys())[0])

    # print(dic.values())#取出字典中的多个values

    #print(dic.items())
    # for k,v in dic.items(): #k,v=('name', 'egon')
    # print(k,v)

    # print(type(dic.items()))


    #4、掌握的操作
    # dic={'name':'egon','age':18}
    # print(dic.get('namexxxxxxxxxxx'))#如果字典中没有对应的key值不会报错。
    # print(dic['namexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx']) #报错
    #

    # print(dic.popitem())#随机取值

    # print(dic.setdefault('key','123'))#
    # print(dic)


    #setdefaul的用处:
    # 1、字典有中有key,则不修改,返回原key对应的原值
    # dic={'name':'egon','age':18}
    # res=dic.setdefault('name','EGON')
    # print('返回值',res)
    # print(dic)
    # 2、没有对应的key,则添加,返回添加的key对应的value
    # dic={'age':18}
    # res=dic.setdefault('name','EGON')
    # print('返回值',res)
    # print(dic) #{'age': 18, 'name': 'EGON'}

    # dic.update({'x':1,'age':19})
    #对与老字典来说,更新指的是,新字典中有而老字典中没有则添加,新有而老有,则覆盖
    # dic={'x':1,'age':19}
    # dic.update({'name':'egon','age':18})
    # print(dic) #{'x': 1, 'age': 18, 'name': 'egon'}

    #三、集合
    #用途
    # 1、 关系运算
    #2、去重

    # 定义方式:在{}内用逗号分隔开一个个元素
    # 注意的问题
    #1、集合内没有重复的元素
    #2、集合的元素必须是不可变类型


    #交集
    # dic_1={1,2,3,4,5,6,}
    # dic_2={5,6,7,8,9,10}
    # print(dic_1 & dic_2)
    # 并集
    # print(dic_1 | dic_2)
    #差集
    # print(dic_2 - dic_1)
    #交叉补值
    # print(dic_1 ^ dic_2)
    # 优先掌握,循环取值 for in 取出来的值是无序的。
    # s1={'a','b','c'}
    # for itme in s1:
    # print(itme)
    #长度len
    # s1={'a','b','c'}
    # print(len(s1))
    #成员运算in和not in
    # s1={'a','b','c'}
    # print('a' in s1)

    # 增加
    # s1={'a','b','c'}
    # for itme in s1:
    # print(itme)
    # s1.add() # 一次添加一个值
    # s1.add(4)
    # print(s1)


    # s1.update({3,4,5}) #一次添加多个值
    # print(s1)
  • 相关阅读:
    Smith Numbers POJ
    HDU
    dp HDU
    POJ
    HDU
    LOOPS HDU
    水题,P1789 【Mc生存】插火把 (暴力即可)
    LOOPS
    Coprime (单色三角形+莫比乌斯反演(数论容斥))
    莫比乌斯函数 51nod-1240(合数分解试除法)
  • 原文地址:https://www.cnblogs.com/yangwei666/p/8619144.html
Copyright © 2020-2023  润新知