国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python 處理數(shù)據(jù)的實(shí)例詳解

2019-11-25 15:57:01
字體:
供稿:網(wǎng)友

Python 處理數(shù)據(jù)的實(shí)例詳解

最近用python(3.2的版本)寫了根據(jù)特定規(guī)則,處理數(shù)據(jù)的一個(gè)小程序,用到了一些python常用的基礎(chǔ)知識(shí),在此總結(jié)一下:

1,python讀文件
2,python寫文件
3,python的流程控制
4,python的for循環(huán)
5,python的集合,或字符串里判斷是否存在某個(gè)元素
6,python的邏輯或,邏輯與
7,python的正則過濾
8,python的字符串忽略空格,和以某個(gè)字符串開頭和按某個(gè)字符拆分成list

python的打開文件的模式:

關(guān)于open 模式:

w     以寫方式打開,
a     以追加模式打開 (從 EOF 開始, 必要時(shí)創(chuàng)建新文件)
r+     以讀寫模式打開
w+     以讀寫模式打開 (參見 w )
a+     以讀寫模式打開 (參見 a )
rb     以二進(jìn)制讀模式打開
wb     以二進(jìn)制寫模式打開 (參見 w )
ab     以二進(jìn)制追加模式打開 (參見 a )
rb+    以二進(jìn)制讀寫模式打開 (參見 r+ )
wb+    以二進(jìn)制讀寫模式打開 (參見 w+ )
ab+    以二進(jìn)制讀寫模式打開 (參見 a+ )

處理代碼如下:

def showtxt(path,outpathname,detailpath):    greenpath=r"C://Users//qindongliang//Desktop//tnstxt//green.txt";   redpath=r"C://Users//qindongliang//Desktop//tnstxt//red.txt";   redset=listtxt(redpath)   greenset=listtxt(greenpath)   print("紅色詞數(shù)量: ",len(redset))   print("綠色詞數(shù)量: ",len(greenset))   #符合1條件的內(nèi)容寫入   f1=open(r"C:/Users/qindongliang/Desktop/tnstxt/result//"+detailpath+"http://1.txt",encoding="UTF-8",mode="a+")   #符合2條件的內(nèi)容寫入   f2=open(r"C:/Users/qindongliang/Desktop/tnstxt/result//"+detailpath+"http://2.txt",encoding="UTF-8",mode="a+")   #符合3條件的內(nèi)容寫入   f3=open(r"C:/Users/qindongliang/Desktop/tnstxt/result//"+detailpath+"http://3.txt",encoding="UTF-8",mode="a+")   #符合4條件的內(nèi)容寫入   f4=open(r"C:/Users/qindongliang/Desktop/tnstxt/result//"+detailpath+"http://4.txt",encoding="UTF-8",mode="a+")      delcount=1;   f=open(path,encoding="UTF-8",mode="r+")   fnew=open(outpathname,encoding="UTF-8",mode="a+")   flog=open(outpathname+".log",encoding="UTF-8",mode="a+")   #count=1;   for line in f:     list=line.strip().split("/t")     line=line.strip()     catalogid=list[0]     score=list[1]     keyword=clear(list[4].strip())     if keyword in redset:       if catalogid.startswith("018022") or catalogid.startswith("018035") or catalogid.startswith("014023003") :         f1.write(line+"/n")#符合1條件寫入         fnew.write(line+"/n")#符合1條件寫入       else:         flog.write(line+"  不符合條件1 "+"/n")         delcount=delcount+1      if keyword in greenset:       if not (catalogid.startswith("018022") or catalogid.startswith("018035") or catalogid.startswith("014023003")) :         fnew.write(line+"/n")       else:         f2.write(line+"/n")         flog.write(line+"  不符合條件2"+"/n")         delcount=delcount+1       flist=formatStrList(keyword)     if "sexy" in flist or "sex" in flist:       if catalogid.startswith("018022") or catalogid.startswith("018035") or catalogid.startswith("014023003") :         f3.write(line+"/n")         fnew.write(line+"/n")       else:         flog.write(line+" 不符合條件3"+"/n")         delcount=delcount+1      #if (keyword.find("underwear")!=-1) & keyword.find("sexy")==-1 & keyword.find("sex")==-1:     if "underwear" in flist and "sexy" not in flist and "sex" not in flist:       if catalogid.startswith("014032") :         f4.write(line+"/n")         fnew.write(line+"/n")       else:         flog.write(line+" 不符合條件4"+"/n")         delcount=delcount+1      #print(list[0]," ",list[1]," ",list[4])     #print()      flog.write("刪除總數(shù)目: "+str(delcount))   f.close()   f1.close()   f2.close()   f3.close()   f4.close()   fnew.close()   flog.close()  import re def clear(str):   str=re.sub("[/"/"/'/'+]","",str)   return str   def formatStrList(keyword):   list=keyword.split(" ")   for item in list:     item.strip();   return list     def listtxt(path):    f=open(path,encoding="UTF-8")    s=set()    for line in f:      s.add(line.strip())    f.close()    return s  path1=r"C://Users//qindongliang//Desktop//tnstxt//highfrequency.txt" pathout1=r"C://Users//qindongliang//Desktop//tnstxt//detail//a_highfrequency.txt" detail1path="highfrequency" path2=r"C://Users//qindongliang//Desktop//tnstxt//highfrequency_d1.txt" pathout2=r"C://Users//qindongliang//Desktop//tnstxt//detail//b_highfrequency_d1.txt" detail2path="highfrequency_d1"  #showtxt(path1,pathout1,detail1path)  showtxt(path2,pathout2,detail2path) 

以上就是對(duì)Python 的數(shù)據(jù)處理的實(shí)例詳解,如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 邹平县| 南川市| 钟祥市| 嘉定区| 泾源县| 怀集县| 厦门市| 慈利县| 双峰县| 淳化县| 榆中县| 辽中县| 镇平县| 奉化市| 呼和浩特市| 沛县| 西乡县| 梅州市| 察隅县| 铜梁县| 化隆| 周口市| 咸阳市| 万全县| 漠河县| 周宁县| 金沙县| 五家渠市| 区。| 常熟市| 永顺县| 宁明县| 繁峙县| 溆浦县| 安义县| 嘉峪关市| 乐业县| 嘉义市| 株洲县| 正阳县| 壤塘县|