• 【Python21天学习挑战赛】集合 & 数据类型补充


    活动地址:CSDN21天学习挑战赛

    开头一叙:
    无论是以后学习需要或者是三年后的工作需要,都需要用到python的工具,也接着这次活动的机会,把python系统的学一遍。跟着大佬,让python知识从入门到精通。


    集合

    1 定义

    集合 – set

    (1)没有值的字典 无序—不支持索引

    s={1,"alex",True}
    print(s)
    # 输出:{False, 1, 'alex'}
    
    • 1
    • 2
    • 3

    (2)天然去重

    s={1,"alex",False,12,13,12,12,24,12}
    print(s)
    # 输出:{False, 1, 12, 13, 'alex', 24}
    
    • 1
    • 2
    • 3

    2 操作:增、删、改、查

    s={1,2,3,4}
    #   增:
    s.add("67")
    print(s)
    s.update("今天")
    print(s)
    #   删:
    print(s.pop())  #有返回值,随机删除
    print(s)
    s.remove(3) #指定删除元素
    print(s)
    # 输出:{1,2, 4}
    #   改:
    #   先删再加
    
    #   查
    for i in s:
        print(i)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    3 集合操作:交集、并集、差集、对称差集、超集

    s1={1,2,3,4,5}
    s2={3,4,5,6}
    #1、交集
    print(s1 & s2)
    # 输出:{3, 4, 5}
    #2、并集
    print(s1 | s2)
    # 输出:{1, 2, 3, 4, 5, 6, 7}
    # 3、差集
    print(s1-s2)
    #   输出:{1, 2}
    # 4、对称差集,把相交的元素去掉
    print(s1 ^ s2)
    # 输出:{1, 2, 6, 7}
    # 5、超集(s2属于s1)
    print(s1>s2)
    # 输出:True
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    基础数据类型的补充:

    1 str(字符串)

    1.1 首字母大写
    name="zhang"
    na=name.capitalize()   #字符串,不可变需要赋予一个新值
    print(na)
    
    • 1
    • 2
    • 3
    1.2 每个单词首字母大写
    name="hello world"
    print(name.title())
    #   Hello World
    
    • 1
    • 2
    • 3
    1.3 大小写反转
    na="zhANG"
    print(na.swapcase())
    #   ZHang
    
    • 1
    • 2
    • 3
    1.4 占位居中
    na="zhang"
    print(na.center(20))
    #          zhang
    
    • 1
    • 2
    • 3
    1.5 字符串查找,从左向右,只查找一个
    na="alex2eee"
    print(na.find("2")) #返回查找字符的位置,查找不存在返回-1
    
    • 1
    • 2
    1.6 拼接
    name="alex"
    print("_".join(name))
    #   输出:a_l_e_x
    
    • 1
    • 2
    • 3
    1.7 格式化
    name="alex{},{},{}"
    print(name.format(1,2,3))   #按照顺序位置进行填充
    #   输出:alex1,2,3
    name="alex{2},{0},{1}"
    print(name.format("a","b","c")) #元组有序,按照索引进行填充
    #   输出:alexc,a,b
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    2 list:

    lst=[1,2,5,3,9,6]
    lst1=[100,102,109,104]
    
    • 1
    • 2
    2.1 列表排序
    lst.sort()  #排序,默认升序
    print(lst)
    #  输出:[1, 2, 3, 5, 6, 9]
    
    • 1
    • 2
    • 3
    2.2 反转
    lst.reverse()
    print(lst)
    #   输出:[6, 9, 3, 5, 2, 1]
    
    • 1
    • 2
    • 3
    2.3 降序,把上述两步合成一步
    lst.sort(reverse=True)
    print(lst)
    # 输出:[9, 6, 5, 3, 2, 1]
    
    • 1
    • 2
    • 3
    2.4 两个列表相加
    • 方式一:
    lst.extend(lst1)
    print(lst)
    
    • 1
    • 2
    • 方式二:
    print(lst+lst1)
    #   输出:[1, 2, 5, 3, 9, 6, 100, 102, 109, 104]
    
    • 1
    • 2

    3 tuple:

    tu=("22",)   #数据类型是()中的数据本身,加个逗号就是元组
    print(type(tu))
    
    • 1
    • 2

    4 dict:

    #批量添加键值对,“键”是可迭代对象,值会被共用,可变
    dic={}
    dic1=dic.fromkeys("123",[45])
    print(dic1)
    # 输出:{'1': [45], '2': [45], '3': [45]}
    
    • 1
    • 2
    • 3
    • 4
    • 5

    5 bool:

     False:
    数字:0
    字符串:""
    列表:[]
    元组:()
    字典:{}
    集合:set()
    其他:None
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
  • 相关阅读:
    WebRTC安全架构
    maven
    秋招笔试之微众银行
    HK32_UID中获取芯片唯一ID相同的问题
    如何批量图片重命名不同名字?
    20uec++多人游戏【小球与玩家互动】
    layim之初始化配置
    语言大模型的进化轨迹
    CV—cs231n二刷
    202212 青少年等级考试机器人实操真题三级
  • 原文地址:https://blog.csdn.net/qq_44859533/article/details/126247983