使用python读取CSV文件时遇到编码问题解决方案
尝试使用python读取CSV文件时遇到障碍。
更新:如果只想跳过字符或错误,可以打开文件,如下所示:
with open(os.path.join(directory, file), 'r', encoding="utf-8", errors="ignore") as data_file:
到目前为止,我已经尝试过了。
for directory, subdirectories, files in os.walk(root_dir):
for file in files:
with open(os.path.join(directory, file), 'r') as data_file:
reader = csv.reader(data_file)
for row in reader:
print (row)
我得到的错误是:
UnicodeEncodeError: 'charmap' codec can't encode characters in position 224-225: character maps to
我试过了
with open(os.path.join(directory, file), 'r', encoding="UTF-8") as data_file:
错误:
UnicodeEncodeError: 'charmap' codec can't encode character '\u2026' in position 223: character maps to
现在,如果我只打印data_file,它说它们是cp1252编码的,但是如果我尝试
with open(os.path.join(directory, file), 'r', encoding="cp1252") as data_file:
我得到的错误是:
UnicodeEncodeError: 'charmap' codec can't encode characters in position 224-225: character maps to
我也尝试了推荐的套餐。
我得到的错误是:
UnicodeEncodeError: 'charmap' codec can't encode characters in position 224-225: character maps to
我要解析的行是:
2015-11-28 22:23:58,670805374291832832,479174464,"MarkCrawford15","RT @WhatTheFFacts: The tallest man in the world was Robert Pershing Wadlow of Alton, Illinois. He was slighty over 8 feet 11 inches tall.","None
任何想法或帮助表示赞赏。
解决方案
我将使用csvkit,它使用自动检测适当的编码和解码。例如
import csvkit reader = csvkit.reader(data_file)
正如聊天解决方案所述,
for directory, subdirectories, files in os.walk(root_dir):
for file in files:
with open(os.path.join(directory, file), 'r', encoding="utf-8") as data_file:
reader = csv.reader(data_file)
for row in reader:
data = [i.encode('ascii', 'ignore').decode('ascii') for i in row]
print (data)到此这篇关于用python读取CSV文件时遇到编码问题的文章就介绍到这了,更多相关python读取CSV文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
python PyQt5中单行文本输入控件QLineEdit用法详解
在PyQt5的GUI编程中,QLineEdit控件是一个用于输入和编辑单行文本的部件,它提供了丰富的功能和灵活性,可以轻松地实现用户输入的捕获、验证和格式化等功能,本文将通过实际案例详细介绍QLineEdit控件的常用方法,需要的朋友可以参考下2024-08-08
计算机二级python学习教程(1) 教大家如何学习python
这篇文章主要为大家详细介绍了计算机二级python学习教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2019-05-05
VPS CENTOS 上配置python,mysql,nginx,uwsgi,django的方法详解
这篇文章主要介绍了VPS CENTOS 上配置python,mysql,nginx,uwsgi,django的方法,较为详细的分析了VPS CENTOS 上配置python,mysql,nginx,uwsgi,django的具体步骤、相关命令与操作注意事项,需要的朋友可以参考下2019-07-07


最新评论