【问题标题】:python encoding issue - utf8 encoding not workingpython编码问题-utf8编码不起作用
【发布时间】:2015-12-30 02:04:22
【问题描述】:

我有一个这样的 csv 文件

Niklas Fagerstr�m   http://www.vimeo.com/niklasf    5379549 5379549
Niklas Fagerstr�m   http://fagerstrom.eu/en 5379549 5379549

我在读书

Niklas Fagerstr�m   
Niklas Fagerstr�m   

这两个字段这么多?字符应该被编码,但我的脚本没有编码

import csv
import MySQLdb
import re
import sys
reload(sys)
sys.setdefaultencoding('utf-8')

with open('finland_5000_rows.csv', 'rb') as csvfile:
    spamreader = csv.reader(csvfile, delimiter=',', quotechar='|')
    for row in spamreader:
        #row[0] = row[0].encode('')
        one = row[0]
        print one

输出:

Niklas Fagerstr�m
Niklas Fagerstr�m

但我想要这样的输出

Niklas Fagerström
Niklas Fagerström

我应该在上面的代码中做些什么改变以获得预期的结果?

【问题讨论】:

  • 我最初看到一个问号,用于 Niklas 的第一行等。当您打开 csv 时,问号是否已经出现?例如,当您在记事本中打开 csv 时会发生什么?
  • 我在 linux 我在 gedit 中打开它显示像这样 Niklas Fagerstr�m
  • 不是 100%,但这似乎表明文件编码有问题。
  • 这种情况怎么办?
  • 使用 latin-1 并且不要滥用默认编码

标签: python csv encoding utf-8


【解决方案1】:

发生这种情况时,我会做的是,将文本从 csv 复制到 notepad++,然后按转换为 UTF-8 并保存。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-12
    • 2013-03-02
    • 1970-01-01
    • 2016-03-19
    • 2021-05-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多