在工作裡,有乙個檔案裡的漢字是多餘的,由於資料量很大(幾千甚至上萬)行資料,並且不一定每行都有漢字,所以想到了用python處理剔除行內漢字。
由於資料是每行用逗號(",")分隔的,且漢字只會出現在固定的位置,所以就想到了用csv標準模組處理。
由於csv.reader讀取到的結果是乙個list,然後再提出漢字後寫入到新檔案,而csv.writer的寫結果會在每行末新增兩個\r,不符合輸出要求,所以用python自帶的檔案寫入函式。
下邊是list型別與string型別資料轉換函式:
其中
isinstance(x,list)
是判斷x是否為list型別資料的判斷函式。
##def list2strbycsv:list轉換成字串string型(csv):
def list2strbycsv(listlist,que=','):
"""輸入list引數,que是用以區分list元素分隔符"""
stri = ''
for x in listlist:
if not isinstance(x,list):
stri = stri + str(x)+que
else:
stri = stri + list2strbycsv(x,que) + que
return stri[:-1]
##def str2listbycsv:string轉換成list型別(csv):
def str2listbycsv(str,que=','):
listq=
temp=''
for x in str:
if x <> que:
temp += x
else:
temp=''
return listq
我的python學習筆記
五 運算子 六 字串 七 列表 八 順序執行 數值型別 字串 str 列表 list 元組 tuple 集合型別 set 字典型別 dict 布林型別 bool 型別 整數可以用字串型別佔位,反之不可。例 name 小t age 18 男 print s的年齡是 d,性別為 s name,age,s...
我的python學習筆記
此文是在實際工程中遇到的一些小問題,給予解決和整理。解決方法大多來自網上零散的文章。1 如下 a 1,2,3 b ab也是 1,2,3 了,接著 a 0 4a 1 5a 2 6此時a變成 4,5,6 了,再看b,a變了之後沒有對b進行新的引用,但b還是變了,自動的也變成 4,5,6 了。除非對a進行...
我的mysql學習筆記2
1 基礎的模式匹配可以用like 和 not like 運算子,另外模糊匹配用 和 其中 可以匹配任意的單字元,可以匹配任何數量的字元。select from from pet where name like b 表示匹配name中首字母為b的。select from pet where name ...