一、集合

集合特性:

1、集合是无序、且不重复的

2、集合里面的元素必须是可哈希的(即不可变的数据类型int、str、tuple),但是集合本身是不可哈希的

3、集合里面的元素不能更改

4、集合可以求交集、并集、反交集、差集

去重:

1, 用算法去做.

2, 转换成集合.在转换过来.

一、集合的创建

set1 = set({1,2,'alex'})

set1 = {'alex','wusir','ritian','egon','barry'}

二、集合增

set1 = {'alex','wusir','ritian','egon','barry'}

add 添加一个元素
set1.add('景女神')
print(set1)

#update 迭代着添加
set1.update('abc')
set1.update([1,2,3])
print(set1)-----{1, 2, 3, 'b', 'ritian', 'c', 'barry', 'alex', 'a', 'egon', 'wusir'}

  

三、集合删

按照元素去删除
set1.remove('ritian')
print(set1)
随机删除 pop
set1.pop()
print(set1)
清空集合 clear()
set1.clear()
print(set1)---set()
删除 集合
del set1
print(set1)---报错

  

四、集合查

查:----使用for循环
for i in set1:
    print(i)

  

二、集合的其他操作

2、1交集   ( &、  intersection)

set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
set3 = set1 & set2
print(set3)
print(set1.intersection(set2))
输出{4,5}

  

2、 2 并集 ( |  、 union )

print(set1 | set2)
print(set1.union(set2))
输出{1, 2, 3, 4, 5, 6, 7, 8}

  

2、 3  反交集 (^ 或者 symmetric_difference)

set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
print(set1 ^ set2)  # {1, 2, 3, 6, 7, 8}
print(set1.symmetric_difference(set2))  # {1, 2, 3, 6, 7, 8}

  

2 、4   差集  (— 或者 difference)

set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
print(set1 - set2)  # {1, 2, 3}
print(set1.difference(set2))  # {1, 2, 3}

  

2、5    超集、子集

子集  <     issubset

超集  >   issuperset

set1 = {1,2,3}
set2 = {1,2,3,4,5,6} print(set1 < set2) print(set1.issubset(set2)) # 这两个相同,都是说明set1是set2子集。
返回Ture
print(set2 > set1) print(set2.issuperset(set1)) # 这两个相同,都是说明set2是set1超集。
返回Ture

  

2、 6   frozenset 

不可变集合,让集合变成不可变类型

s2 = frozenset(set1)
print(s2,type(s2))
输出 frozenset({1, 2, 3}) <class 'frozenset'>

  

三、文件操作

3、1 文件操作基本流程

f = open('C:\\Users\\Administrator\\Desktop\\new.txt',encoding='utf-8',mode='r')
#open 他是windows系统的命令
#r:只读
# f 变量:f f_obj,obj,file_hl file_hanlder 文件句柄
#通过对文件句柄的操作,来得到你想要的东西.
content = f.read()
print(content)
#f.close 将你这文件句柄,或者是动作关闭,节省内存
f.close()

  

3、2  读

C:\\Users\\Administrator\\Desktop\\new.txt 绝对路径
相对路径:同一个文件夹下的文件就是相对路径
r
rb一般用在非文字类型的文件:图片,视频
文件的下载和上传的功能用b模式
f = open('log','r',encoding='utf-8')
content = f.read()
print(content,type(content))
f.close()
----相对路径

四、文件的打开模式

文件句柄 f  = open(‘文件路径’,‘模式’)

#1. 打开文件的模式有(默认为文本模式):
r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】
w,只写模式【不可读;不存在则创建;存在则清空内容】
a, 只追加写模式【不可读;不存在则创建;存在则只追加内容】

#2. 对于非文本文件,我们只能使用b模式,"b"表示以字节的方式操作(而所有文件也都是以字节的形式存储的,使用这种模式无需考虑文本文件的字符编码、图片文件的jgp格式、视频文件的avi格式)
rb 
wb
ab
注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码

#3,‘+’模式(就是增加了一个功能)
r+, 读写【可读,可写】
w+,写读【可写,可读】
a+, 写读【可写,可读】

#4,以bytes类型操作的读写,写读,写读模式
r+b, 读写【可读,可写】
w+b,写读【可写,可读】
a+b, 写读【可写,可读】
View Code

相关文章:

  • 2021-08-27
  • 2022-01-21
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-01
猜你喜欢
  • 2021-12-04
  • 2021-12-22
  • 2021-05-18
  • 2021-12-31
  • 2022-12-23
  • 2022-02-07
  • 2021-07-12
相关资源
相似解决方案