【问题标题】:Error 'unknown locale: UTF-8' on 'pandas' import (Mac OS X) when running fish shell [duplicate]运行fish shell时,'pandas'导入(Mac OS X)出现错误'未知语言环境:UTF-8'[重复]
【发布时间】:2016-02-27 06:48:33
【问题描述】:

我最近升级到 Python 3.5 和最新版本的 pandas pandas (0.17.1),但这破坏了我的包。我在 Mac OS X 10.9.5 上,使用 fish shell。我能做什么?

cls@clsmba ~> python3
Python 3.5.0 (default, Sep 23 2015, 04:41:33) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pandas
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.5/site-packages/pandas/__init__.py", line 44, in <module>
    from pandas.core.api import *
  File "/usr/local/lib/python3.5/site-packages/pandas/core/api.py", line 9, in <module>
    from pandas.core.groupby import Grouper
  File "/usr/local/lib/python3.5/site-packages/pandas/core/groupby.py", line 17, in <module>
    from pandas.core.frame import DataFrame
  File "/usr/local/lib/python3.5/site-packages/pandas/core/frame.py", line 41, in <module>
    from pandas.core.series import Series
  File "/usr/local/lib/python3.5/site-packages/pandas/core/series.py", line 2909, in <module>
    import pandas.tools.plotting as _gfx
  File "/usr/local/lib/python3.5/site-packages/pandas/tools/plotting.py", line 28, in <module>
    import pandas.tseries.converter as conv
  File "/usr/local/lib/python3.5/site-packages/pandas/tseries/converter.py", line 7, in <module>
    import matplotlib.units as units
  File "/usr/local/lib/python3.5/site-packages/matplotlib/__init__.py", line 1131, in <module>
    rcParams = rc_params()
  File "/usr/local/lib/python3.5/site-packages/matplotlib/__init__.py", line 975, in rc_params
    return rc_params_from_file(fname, fail_on_error)
  File "/usr/local/lib/python3.5/site-packages/matplotlib/__init__.py", line 1100, in rc_params_from_file
    config_from_file = _rc_params_in_file(fname, fail_on_error)
  File "/usr/local/lib/python3.5/site-packages/matplotlib/__init__.py", line 1018, in _rc_params_in_file
    with _open_file_or_url(fname) as fd:
  File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/contextlib.py", line 59, in __enter__
    return next(self.gen)
  File "/usr/local/lib/python3.5/site-packages/matplotlib/__init__.py", line 1000, in _open_file_or_url
    encoding = locale.getdefaultlocale()[1]
  File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/locale.py", line 559, in getdefaultlocale
    return _parse_localename(localename)
  File "/usr/local/Cellar/python3/3.5.0/Frameworks/Python.framework/Versions/3.5/lib/python3.5/locale.py", line 487, in _parse_localename
    raise ValueError('unknown locale: %s' % localename)
ValueError: unknown locale: UTF-8

【问题讨论】:

标签: python macos fish


【解决方案1】:

确保您的终端设置为导出适当的语言环境变量,如this answer 中所述,并且您的区域在系统偏好设置中设置正确。

【讨论】:

  • 似乎两者都已正确设置,所以我无法确认这是否可以解决我的问题。
【解决方案2】:

鱼壳

set -x LC_ALL en_US.UTF-8 
set -x LANG en_US.UTF-8

【讨论】:

  • 是的,将这些行添加到~/.config/fish/config.fish 可以解决问题。
  • 不想想要设置 LC_ALL - 这是一个用于调试或覆盖的大锤。
  • 这只有在你会说英语并且住在美国的情况下才是正确的答案,而对于看到这个问题的人来说,这几乎是不可能的。一般来说,您应该将其设置为您所在地区的正确代码(locale -a 将列出所有代码)。
猜你喜欢
  • 2016-12-19
  • 2016-02-16
  • 1970-01-01
  • 2015-10-02
  • 2013-11-26
  • 2016-08-01
  • 2016-06-25
相关资源
最近更新 更多