python txt符号化の問題の読み取りと書き込み
931 ワード
def getListFromFile(path,str):
list = []
file = open(path)
lines = file.readlines()
for line in lines:
list.append(line.strip())
return list
import re
priceList = getListFromFile('hebing/price.txt','r')
nameList = getListFromFile('hebing/nameD.txt','r')
featureList = getListFromFile('hebing/aa.txt','r')
for name in nameList:
#print name.decode('gbk')
name = name.decode('gbk')
print name
pattern = re.compile(name)
for feat in featureList:
feat = feat.decode('gbk')
print 'feat:',feat
if pattern.search(feat):
print 'true'
そのうち、nameD.txtファイルとaa.txtファイルはANSI形式であるため、印刷毎のデータを書き込む際に追加する必要がある.decode('gbk')
txtファイルがutf-8であれば、そのまま正常な漢字を印刷できますが、正規表現searchを使って中のフィールドを検索するときにエラーが発生するので、正規表現を使うときはANSI形式を読み取るのが望ましいです.