我需要讀取管道(|)分隔的文本文件。 其中一個字段包含可能包含雙引號的說明。 我注意到包含「的所有行在接收字典中缺失 爲了避免這種情況,我嘗試讀取整行,並使用string.replace()將其刪除,如下所示,但它看起來像這些引號的出現在讀取線程階段造成了問題,即在string.replace()方法之前。刪除文本文件中的引號
代碼在下面,問題是'如何強制python不使用任何分隔符並保持整條線?「。
with open(fileIn) as txtextract:
readlines = csv.reader(txtextract,delimiter="µ")
for line in readlines:
(...)
LI_text = newline[107:155]
LI_text.replace("|","/")
LI_text.replace("\"","") # use of escape char don't work.
注:我使用的3.6
版本
'replace'不會替換到位。您必須將結果返回給變量:'LI_text = LI_text.replace(「|」,「/」)' – schwobaseggl
[Python解析CSV忽略逗號與雙引號]的可能重複(https://stackoverflow.com/問題/ 21527057/python-parse-csv-ignore-comma-with-double-quotes) –
這是由於「替換到位」問題。我將修改過的文本存儲回變量中,並且工作正常。 – JCF