Python从零开始之Day3

集合

 1 list1 = {"1","2","5","10","13","141414"}
 2 
 3 list2 = {"2","10","11","17","1313"}
 4 
 5 list1.intersection(list2)                            #交集
 6 
 7 list1 & list2                                            # 交集运算符
 8 
 9 list1.union(list2)                                    #并集
10 
11 list1 | list2                                            #并集运算符
12 
13 list1.difference(list2)                              #差集
14  
15 list1 - list2                                            #差集运算符
16 
17 list1.symmetric_difference(list2)             #对称差集
18 
19 list1 ^ list2                                           #对称差集运算符
20 
21 list1.intersection(list2).issubset(list1)      #子集,前为后的子集
22 
23 list1.issuperset(list1.intersection(list2))   #父集
24 
25 {"1","2","3"}.isdisjoint({"4","5","6"})     #关系测试,如果没有交集,输出TRUE
26 
27 list1.add("OXMLG")                               #添加
28 
29 list1.update(["123","456"])                   #添加多项
30 
31 list1.remove("1")                                 #删除,不存在会报错
32 
33 list1.discard(("13"))                             #删除,不存在不会报
34 35 list1.pop()                                           #随机删除
集合

文件操作

 1 open("文件.txt","r",encoding="utf-8")           #只读
 2 
 3 open("文件2.txt","w",encoding="utf-8")        #写文件,会覆盖源文件!!!
 4 
 5 open ("文件2.txt","a",encoding="utf-8")       #追加     不覆盖原文件只能写不能读
 6 
 7 open("文件2.txt","r+",encoding="utf-8")      #读写
 8 
 9 open("文件4.txt","w+",encoding="utf-8")    #写读
10 
11 open("文件5.txt","rb",encoding="utf-8")      #二进制
12 
13 for i,v in enumerate(a.readlines()) 
14 ''' i 为下标  , v为内容   '''
15 
16 a.tell()              #  当前位置
17 
18 a.seek(0)          #  返回某个位置
19 
20 a.encoding        #文件的编码
21 
22 a.flush               #刷新,直接把内存刷新到文件
23 
24 sys.stdout.flush()          #不使用缓存区,直接刷新
25 
26 f.truncate(10)     #截断,从某位置开始到第X字符,其余全删掉,可配合seek使用
文件操作
1 for i in a:
2     if "我是邢韬6" in i:
3         i=i.replace("我是邢韬6","我是邢韬666666666666")        #替换
4     b.write(i)
文件修改

字符编码

1 sys.getdefaultencoding()          
2 '''检查默认字符编码,注意是文件编码,不是文件内字符串的编码'''
3 
4 a.decode("utf-8").encode("gbk")
5 '''先从utf-8解码为unicode,再编码为gbk'''
View Code

递归

递归特性

1  递归必须有一个明确的结束条件
2  每次进入下一次循环时,问题的规模比上一次必须有所减小
3  递归层数过多会导致栈溢出

猜你喜欢

转载自www.cnblogs.com/xt112233/p/9488679.html