gpt4 book ai didi

导入 matplotlib 时出现 Python Unicode 解码错误

转载 作者:行者123 更新时间:2023-11-28 16:33:01 24 4
gpt4 key购买 nike

我尝试在我的 python 脚本中使用 matplotlib,但我在终端中收到此错误:

Traceback (most recent call last):
File "graphique.py", line 5, in <module>
import matplotlib.pyplot as plt
File "/home/xavier/anaconda/lib/python2.7/site-packages/matplotlib/__init__.py", line 1048, in <module>
rcParams = rc_params()
File "/home/xavier/anaconda/lib/python2.7/site-packages/matplotlib/__init__.py", line 897, in rc_params
fname = matplotlib_fname()
File "/home/xavier/anaconda/lib/python2.7/site-packages/matplotlib/__init__.py", line 748, in matplotlib_fname
fname = os.path.join(os.getcwd(), 'matplotlibrc')
File "/home/xavier/anaconda/lib/python2.7/posixpath.py", line 80, in join
path += '/' + b
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 66: ordinal not in range(128)

这是我的python代码,我简单的写了

# -*- coding: utf-8 -*-
import numpy as np
from math import *
import matplotlib.pyplot as plt

我需要做什么?

最佳答案

问题是您当前的工作目录中有一个非 ASCII 字符。

这实际上根本不应该是个问题,但这是因为其他因素的组合:

  • matplotlib 想要在您当前的工作目录中查找覆盖默认文件的本地 matplotlibrc 文件。
  • Python 认为您使用的是 C 语言环境,而不是 Ubuntu 14 应该默认使用的良好 UTF-8 语言环境。

因此,为了快速解决问题,只需从另一个目录运行您的脚本,该目录中没有非 ASCII 字符。

如果你真的想解决这个问题:

  • 确保您拥有最新的 Ubuntu 14、Anaconda 和 matplotlib。
  • 从 shell,echo $LANG。结果应该是空的,或者是包含 UTF-8 的内容。如果没有,请搜索 AskUbuntu 以了解如何解决该问题。
  • 确保您的 shell 和终端都设置为 UTF-8。

通过快速搜索 matplotlib 问题,这看起来像 #3516 ,看起来它已修复 in #3594 ,我认为应该在 matplotlib 1.4.1+ 中。另见 #3487 .因此,假设您的 $LANG 和终端是正确的,并且您的 matplotlib 是 1.4.0 或更早版本,这是最可能的原因,并更新它(通过 condapipapt-get 或更新 Anaconda 本身,无论您最初安装了它)应该是修复。

或者,当然,您可以升级到 Python 3,这可能会解决问题,或者给您一个更好的错误消息,告诉您到底出了什么问题。 (虽然,从问题报告来看,matplotlib 1.4.0 似乎在 Python 3 中没有这个确切的错误,只有 Python 2,正如预期的那样……但它可能有一个相关的错误……)

关于导入 matplotlib 时出现 Python Unicode 解码错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30095006/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com