python 06

时间:2023-03-10 03:49:24
python 06

1.集合

增:
 s.add(8) print(s) s.update('alex')   # 迭代添加 print(s) 删 s = {1,2,3,'22','ss',(3,4)}

 s1 = s.pop()    #随机删除 print(s)    #返回值  返回的被删除的元素 print(s1)

 s.clear() print(s)      #清空 set()

 s = {1,2,3,'22','ss',(3,4)} del s           #删除整个集合 print(s)

 s = {1,2,3,'22','ss',(3,4)} s.remove()    #通过元素指定删除 print(s)

 改: s = {1,2,3,'22','ss',(3,4)} s.remove(3) s.add(7) print(s) 改: s = {1,2,3,'22','ss',(3,4)} s.remove(3) s.add(7) print(s)

 查:

 s = {1,2,3,'22','ss',(3,4)} for i in s:     print(i)

 s = {1,2,3,4,33,21,4,1234,34,1234,5324,1234,12341,23,22,34112,2,21,23,34,123,4} 集合天然去重 print(s)

 例题: lst = [1,2,3,42,3,45,67,534,2] print(list(set(lst)))

 s = set(lst) print(list(s))

集合的其他操作:

s = {'黑哥'}
s1 = {'虎哥','开哥','白哥','黑哥','wu哥'}

 print(s & s1)  #  交集  俩个集合都有的才输出

 print(s | s1)    #   并集  两个集合 合并到一起

 print(s1 - s)       # 差集   前面减后边的集合前边集合中有的输出出来   自己总结

 print(s ^ s1)         # 反交集  自己总结

 print(s < s1)     # 子集 print(s1 > s)     # 超(父)集

2.深浅拷贝:

 lst = [1,2,3,[4,5,6],7] lst1 = lst    #赋值 lst2 = lst[:] # 切片 # lst.append(7) print(lst) print(lst2)

 import copy

 lst4 = copy.deepcopy(lst)  # 深拷贝 lst[-2].append(7) print(lst)   #[1, 2, 3, [4, 5, 6,7], 7] print(lst4)  #[1, 2, 3, [4, 5, 6], 7]

 浅拷贝:

     拷贝的是第一层元素

 深拷贝:

    # 拷贝所有元素开辟新的空间存放,完全没有关系

 lst  = [1,2,3] lst1 = [1,2,3] print(id(lst)) print(id(lst1))

 例题 a = [1, 2] a[1] = a  # [1,[1,2]] print(a[1])

 答案: [1, [...]]

3.循环删除:

 lst = [1,2,3,4,5] for i in range(len(lst)):     lst.pop() print(lst)

 lst = [1,2,3,4,5] lst1 = []

 for i in lst:     lst1.append(i) for k in lst1:     lst.remove(k) print(lst) 这个方式也可以

4.字符转换

#先编码再解码,用什么编用什么解
s = "中国"
str_b = s.encode('utf-8')
print(str_b)
b'\xe4\xb8\xad\xe5\x9b\xbd'

str1 = str_b.decode('utf-8')
print(str1)
中国