• python set 集合


    #==================================== set  集合  特点为 无序的 且不重复的     =================================

    #面试题 = = == = = = = = = = = = = = = 重点
    # lis = [1,2,1,2,3,4,4,4,3,6,6,7,7,7,2,2,3,3,]
    # #去重:
    #1,用算法去做,
    #2.转换成集合,再转换过来。
    # set1 = set(lis)
    # lis = list(set1)
    # print(lis)

    # 创建集合: 创建set 为不可变数据类型
    # set1 = set({1,2,"alxe"})
    # set1 = { "alex","wusir","ritian",11,22,33}
    # print(set1)

    #=============== 增
    # add 添加一个元素
    # set1.add("景女神")
    # print(set1)

    #update 迭代的添加
    # set1.update("abc",[1,2,3])
    # # set1.update([1,2,3])
    # print(set1)

    # 删除
    # set1 = { "alex","wusir","ritian",11,22,33}
    #按照元素去删除
    # set1.remove("ritian")
    # print(set1)
    #随机删除pop
    # set1.pop()
    # print(set1)

    #del 删除
    # del set1
    # print(set1)


    # 清空 cleak()
    # set1.clear()
    # print(set1)


    #集合查=================== 只能 循环 去查 ===========
    # for i in set1:
    # print(i)


    # 交集 intersection & 取交集内容
    # set1 = {1,2,3,4,5}
    # set2 = {4,5,6,7,8}
    # # set3 = set1 & set2
    # # print(set3)
    # print(set1.intersection(set2))

    #并集 union 两个set 合成一个 重复的合成一个

    # print(set1 | set2)
    # print(set1.union(set2))

    #反交集 ^ symmetric_difference 两个set 合并一个 取 没有重复的
    # print(set1 ^ set2)
    # print(set1.symmetric_difference(set2))

    # 差集 - difference 以set1 不相同的 保留
    # print(set1 - set2 ) # 在set1 与 set2 相同的去除.
    # print(set2 - set1 ) # 在set2 与 set1 相同的去除
    # print(set1.difference(set2)) # 相同的去除 ,
    # print(set2.difference(set1))

    #超集 < issubset
    # set1 = {1,2,3,4,5}
    # set2 = {1,2,3,4,5,6,7,8}
    # print(set1 <= set2)
    # print(set1.issubset(set2)) #返回 True 说明 set1 是 set2 子集
    # print(set2 > set1)
    # print(set2.issuperset(set1)) #返回 True 说明 set2 包含 set1

    # forzenset set 变为i不可变数据类型
    # s2 = frozenset(set1)
    # print(s2,type(s2))


    #文件的 打开方式 与功能

    #绝对路径 是根目录下的
    #相对路径 是同一个文件夹下的 文件就是相对路径

    #f = open("E:lx.txt",encoding = "gbk",mode = "r")
    # open 他是windows系统命令, 注意路径 和 文件的 编码方式
    # mmode = "r" 可以不写 , 不写 默认为只读
    # r : 只读 r+ 可读可写,先读后写 rb 以字节的模式读文件
    #f 变量:f f_obj, obj, file_hl, file_hanlder 文件句柄
    # 通过对文件句柄的操作,来得到你想要的东西.
    # content = f.read()
    # print(content)
    # f.close() #将你的文件句柄,或者是动作关闭,节省内存

    #rb b表示为bytes 字节 一般用于非文字类型的文件;图片,视频
    # 文件的下载和上传的功能用 b M模式
    # rb 为二进制模式 不需要编码参数
    # f = open("lianxi","rb")
    # content = f.read()
    # print(content)
    # f.close()

    # r 读有五种模式
    # 1. f.read()全部读出来 因为打开文件是从内存中进行的 如果文件太大
    #的话 电脑会蓝屏

    #2 f.readline() 按行读 麻烦,没效率
    # f = open("lianxi",encoding="utf-8")
    # line = f.readline()
    # print(line)
    # line = f.readline()
    # print(line)
    # f.close()

    # 3 .f.readlines() 每一行作为一个元素, 放在列表中
    # f = open("lianxi",encoding="utf-8")
    # line = f.readlines()
    # print(line)
    # f.close()

    # 4 . for in 循环去读文件 最好的方式。
    # f = open("lianxi",encoding="utf-8")
    # for i in f:
    # print(i)
    # f.close()

    # 5 . f.read(n) n 表示自己的个数
    # f = open("lianxi",encoding="utf-8")
    # content = f.read(12) # r 模式 n 是按照字节获取
    # print(content)
    #f.close()

    # f = open("lianxi",mode = "rb")
    # content = f.read(3) # rb 模式 是按照字节读取
    # print(content)
    # f.close()

    # bytes 转化为 str
    # s = b"xe4xb8xb0".decode("utf-8")
    # print(s)

    # 只写w wb w+可读可写,先读后写 如果没有文件,则创建文件写内容,
    # 如果有文件则将原文件 内容 全部删除,再写。
    # f = open("lianxi2","w",encoding="utf-8")
    # f.write("alex")
    # f.close()
    # f = open("lianxi2","w",encoding="utf-8")
    # f.write("alex333")
    # f.close()

    #追加 a ab 在最后追加 a+可读可写,先读后写
    # f = open("lianxi2","a",encoding="utf_8")
    # f.write("wusir是xxx")
    # f.close()

    # seek 移动广标 按照字节跳整位置
    # f = open("lianxi","w+",encoding="utf-8")
    # f.write("333333")
    # f.seek(0) # 移动广标 按照字节调整
    # print(f.read())
    # f.close()

    # truncate 截断
    # f = open("lianxi","a",encoding="utf-8")
    # f.truncate(3) # 截断按照字节去截 截取前面的内容
    # f.close()

    # python 内部 的 打开文件的 简单方法:
    # with open("lianxi","r",encoding="utf-8")as f1,
    # open("lianxi2","r",encoding="utf-8")as f2:
    # print(f1.read())
    # print(f2.read())

    #python 内部 改动文件 清除版
    # import os
    # #1,创建一个新文件。
    # with open("lainxi",encoding="utf-8")as f1,
    # open("lianxi2","w",encoding="utf-8")as f2:
    # #2.读取元文件
    # old_content = f1.read()
    # new_content = old_content.replace("alex","sb")
    # f2.write(new_content)
    # #3.将原文件的内容通过你想要额方式进行更改,并写入新文件。
    # #4.将原文件删除。
    # os.remove("lainxi")
    # #5,将新文件重命名原文件名。
    # os.rename("lianxi2","lainxi")


    #简便版
    # import os
    # #1,创建一个新文件。
    # with open("lainxi",encoding="utf-8")as f1,
    # open("lianxi2","w",encoding="utf-8")as f2:
    # #2.读取元文件
    # for i in f1:
    # i = i.replace("alex","sb")
    # f2.write(i)
    # #3.将原文件的内容通过你想要额方式进行更改,并写入新文件。
    # #4.将原文件删除。
    # os.remove("lainxi") # 路径
    # #5,将新文件重命名原文件名。
    # os.rename("lianxi2","lainxi")
  • 相关阅读:
    bzoj 1196: [HNOI2006]公路修建问题 二分+并查集
    bzoj 1607: [Usaco2008 Dec]Patting Heads 轻拍牛头 筛法
    bzoj 1050: [HAOI2006]旅行comf 并查集
    bzoj 1040: [ZJOI2008]骑士 树形dp
    bzoj 1295: [SCOI2009]最长距离
    bzoj 1070: [SCOI2007]修车 费用流
    bzoj 1057: [ZJOI2007]棋盘制作 单调栈
    bzoj 1059: [ZJOI2007]矩阵游戏 二分图匹配
    sass/scss 和 less的区别
    IONIC实现图片轮播
  • 原文地址:https://www.cnblogs.com/xuerh/p/8387232.html
Copyright © 2020-2023  润新知