即使为 pandas 指定编码,编码也是错误的

2024-07-04

我有一个包含重音字符的 CSV 文件。我用PyCharm和Sublime打开时检查了编码,它是西方的:Windows 1252或ISO-8859-1。

我从此 CSV 创建一个 pandas 数据框,然后修改它,并将其导出到 UTF-8 文本文件。我用PyCharm和Sublime Text检查导出的文件,我不知道为什么导出的文件不是UTF-8。

这是我的代码:

dataset= pd.read_csv("my_file.csv", sep=";", encoding="ISO-8859-1")
print(dataset.loc[0, "my_col"])
>>> "s'il vous plaît"

# Export data
with open("out.txt"), "w", newline='') as f:
    dataset.to_csv(path_or_buf=f, sep="\t", header=False, index=False, encoding="utf-8")

当用PyCharm打开“out.txt”时,它显示s'il vous pla�t,PyCharm 告诉我文件的编码不是 UTF-8。


您正在文本模式下写入文件对象默认编码,这使得输出编码优先于encoding方法中的参数to_csv无用。

您应该使用类似下面的内容。

# Export data
with open("out.txt", "w", newline='', encoding="utf-8") as f:
    dataset.to_csv(path_or_buf=f, sep="\t", header=False, index=False)

或者没有文件对象:

# Export data
dataset.to_csv(path_or_buf="out.txt", sep="\t", header=False, index=False, encoding="utf-8")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

即使为 pandas 指定编码,编码也是错误的 的相关文章

  • 如何使用ast.NodeVisitor的简单示例?

    有谁有一个使用 ast NodeVisitor 来遍历 Python 2 6 中的抽象语法树的简单示例吗 我不清楚访问和 generic visit 之间的区别 而且我找不到任何使用谷歌代码搜索或普通谷歌的示例 ast visit 当然 除
  • 配置 argparse 以接受带引号的参数

    我正在编写一个程序 除其他外 它允许用户通过参数指定要加载的模块 然后用于执行操作 我试图建立一种方法来轻松地将参数传递到这个内部模块 并且我试图使用 ArgParse 的action append 让它构建一个参数列表 然后我将通过它 这
  • Python下载具有特定文件名的youtube

    我正在尝试下载 youtube 视频pytube这边走 from pytube import YouTube YouTube http youtube com watch v 9bZkp7q19f0 streams first downlo
  • networkx - 根据列表或字典值更改节点大小

    我正在尝试在networkx中制作一个图表 我在为节点分配不同的节点大小时遇到 问题 这是我一直在玩的代码 import sys from collections import defaultdict import networkx as
  • Pandas DataFrame 到列表列表

    将列表列表转换为 pandas 数据框很容易 import pandas as pd df pd DataFrame 1 2 3 3 4 5 但是如何将 df 转回列表列表呢 lol df what to do now print lol
  • 获取pygame中图像各个像素的颜色

    如何获取传输到 pygame 表面的图像像素的颜色值 使用 Surface get at 仅返回表面层的颜色 而不返回其上位图传输的图像 方法surface get at很好 下面的示例显示了在没有 Alpha 通道的情况下位图传输图像时的
  • Python将html ascii编码文本转换为utf8

    我有一个 xml 文件 需要将其转换为 utf8 不幸的是 这些实体包含这样的文本 047 mytext 044 我正在使用编解码器库将文件转换为 utf8 但 html 实体无法使用它 有没有一种简单的方法可以摆脱html编码 Thank
  • 传递导入错误:ModuleNotFoundError:没有名为“...”的模块

    我现在很困惑 这是项目树 project source lib init py utils py stats py test lib test stats py stats py has import utils 如果执行的话确实有效sta
  • Python:多 QQ 绘图

    我是新人 通常来自 R 我想创建一个包含多行的 QQ Plot 我有一个测试版分布式数据集 我想尝试不同的 beta 分布参数并在oneQQ Plot 以便更好地进行比较 如果我尝试下面的代码 每个图都有相同的颜色 并且我得到 3 条 QQ
  • 包装 np.arrays __pow__ 方法

    我只是重新审视我的一些代码以提高性能 并遇到了一些奇怪的事情 a np linspace 10 1000 1000000 reshape 1000 1000 timeit np square a 100 loops best of 3 8
  • id 是 python 中的关键字吗?

    我的编辑器 TextMate 显示id使用与我常用的变量名称不同的颜色 当用作变量名称时 是关键字吗 我不想遮蔽任何关键字 id不是一个keyword在Python中 但它是一个的名字内置功能 http docs python org li
  • 删除超过 7 天的文件

    我看过一些帖子删除特定文件夹中的所有文件 不是文件夹 但我根本不明白它们 我需要使用 UNC 路径并删除所有超过 7 天的文件 Mypath files data APIArchiveFolder 有人有快速脚本 可以专门输入上面的路径来删
  • Python 中的 HTML 解析器 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 使用Python文档我发现了HTML解析器 http docs python org lib modu
  • 使用 Python 3 在 Mac 上没有名为“_tkinter”的模块

    我正在尝试使用 Tkinter 作为 GUI 将我的脚本捆绑到 app 中 而执行捆绑的包装器是 Platypus 当我去运行该应用程序时 我收到此错误 Traceback most recent call last File Users
  • Numpy,沿数组维度应用函数列表

    我有一个类型的函数列表 func list lambda x function1 input lambda x function2 input lambda x function3 input lambda x x 和形状为 4 200 2
  • 剥离功能未按预期工作

    def sstrip a b raw input enter the string to be stripped off i a strip b print i k raw input enter the string sstrip k o
  • 在 cmd.Cmd 命令行解释器中更好地处理键盘中断

    在使用 python 的 cmd Command 创建自定义 CLI 时 如何告诉处理程序中止当前行并给我一个新的提示 这是一个最小的例子 console min py run python console min py import cm
  • Python 解释器优化

    假设我有一个字符串x Python 解释器是否足够聪明 能够知道 string replace x x 应转换为NOP 我怎样才能找到这个 是否有任何参考资料显示解释器能够根据句法分析动态执行哪种类型的优化 不 Python 不能对 NOP
  • 过滤(减少)NumPy 数组

    假设我有一个 NumPy 数组arr我想根据 可广播 函数的真值进行逐元素过滤 减少 例如 我只想获取低于某个阈值的值k def cond x return x lt k 有几种方法 例如 使用发电机 np fromiter x for x
  • 无法在 Debian lenny 上安装 python 模块“pycrypto”

    我尝试通过下载源代码并执行以下命令来安装 pycrypto 模块python setup py install 然后出现错误 running install running build running build py running bu

随机推荐