繁体   English   中英

写入和读取csv文件python

[英]write and read csv file python

我有一个包含非英文字母的text文件,我想打开它,做一些预处理,最后将它保存为一个csv文件。 并在其他地方使用它。

读取和存储文件的代码:

with open('file.txt', encoding="utf-8") as f:
    train = f.read().splitlines() 

然后创建一个数据框,以及存储它的代码:

df.to_csv('file.csv', index=True, encoding="utf-8")

到目前为止,一切似乎都还可以,但是当我尝试使用以下代码打开 file.csv 时:

train = pd.read_csv('file.csv', encoding="utf-8")

我面临这个:

Process finished with exit code -1073740940 (0xC0000374)

不去下一行。

同样,当我尝试使用 ISO-8859-1 编码打开它时,也可以; 但是当我尝试打印该 csv 的头部时,它只会打印一些问号('?')

有谁知道出了什么问题?

任何形式的帮助将不胜感激。

我尝试使用以下代码重现它:

import pandas as pd

with open('persian.txt', encoding="utf-8") as f:
    train = f.read().splitlines() 
    df = pd.DataFrame({'text': train})
    df.to_csv('file.csv', index=True, encoding="utf-8")
    train = pd.read_csv('file.csv', encoding="utf-8")

使用包含两行示例波斯文本的 txt 文件。 它在 Python 3 中运行没有任何问题,生成了这个 csv:

    text
0   همهٔ افراد بشر آزاد به دنیا می‌آیند و حیثیت و حقوق شان با هم برابر است
1   همه اندیشه و وجدان دارند و باید در برابر یکدیگر با روح برادری رفتار کنند. 

您能否提供有关文本属性和您在数据帧处理中执行的操作的更多详细信息,或者确定读取中断的行? 您可能会在途中产生一些无效字符。

在 CSV 文件中写波斯语让我发疯了。 最后这个对我有用:

data.to_csv (r'hi.csv', encoding='utf-8-sig')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM