我正在嘗試在Python 2.7.3中編寫一個腳本,該腳本可以從Excel電子表格中獲取.csv文件並將其轉換爲適合LaTeX表格的格式。所以我想要讀取一個文件,並將數據寫入一個新的文本文件,但用任何逗號代替逗號,並在每行末尾附加一個雙反斜槓。在Python中連接file.write()中的字符串?
例如:
輸入
A1,A2,A3
B1,B2,B3
C1,C2,C3
所需的輸出
A1 & A2 & A3 \\
B1 & B2 & B3 \\
C1 & C2 & C3 \\
這就是我現在所擁有的:
old_file = open(selected_file, "r")
new_file = open("texified_" + selected_file.replace("csv","txt"), "w")
#Creates new file with format texified_selected_file.txt
for line in old_file:
new_file.write(line.replace(",", " & ") + r" \\")
new_file.close()
old_file.close()
現在它正確地與符號代替了逗號,但不添加雙反斜槓。我認爲這是因爲反斜槓有特殊的含義,但即使將它作爲原始字符串,它仍然不起作用。但是,它確實將它添加到最後一行的末尾。
實際輸出
A1 & A2 & A3
B1 & B2 & B3
C1 & C2 & C3 \\
如果我只是做'打印(線。替換(「,」,「&」)+ r「\\」)',那麼我只能得到最後一行打印。 – Peacemaker636 2013-02-10 21:39:39
在我的系統上,實際輸出與您的不同,給出示例輸入。 – moooeeeep 2013-02-10 22:01:20
@moooeeeep ..在我的系統上。我在前兩行的前面有兩個反斜槓。 – 2013-02-10 22:04:37