43

最新のMacOSX64ビットAnacondaPythonディストリビューションをインストールした後、IPythonNotebookを起動しようとするとValueErrorが発生し続けます。

ipythonの起動は正常に機能します:

3-millerc-~:ipython
Python 2.7.3 |Anaconda 1.4.0 (x86_64)| (default, Feb 25 2013, 18:45:56) 
Type "copyright", "credits" or "license" for more information.

IPython 0.13.1 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

しかし、ipythonノートブックを起動します:

4-millerc-~:ipython notebook

ValueError(トレースバックあり)の結果:

Traceback (most recent call last):
  File "/Users/millerc/anaconda/bin/ipython", line 7, in <module>
    launch_new_instance()
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/frontend/terminal/ipapp.py", line 388, in launch_new_instance
    app.initialize()
  File "<string>", line 2, in initialize
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/config/application.py", line 84, in catch_config_error
    return method(app, *args, **kwargs)
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/frontend/terminal/ipapp.py", line 313, in initialize
    super(TerminalIPythonApp, self).initialize(argv)
  File "<string>", line 2, in initialize
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/config/application.py", line 84, in catch_config_error
    return method(app, *args, **kwargs)
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/core/application.py", line 325, in initialize
    self.parse_command_line(argv)
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/frontend/terminal/ipapp.py", line 308, in parse_command_line
    return super(TerminalIPythonApp, self).parse_command_line(argv)
  File "<string>", line 2, in parse_command_line
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/config/application.py", line 84, in catch_config_error
    return method(app, *args, **kwargs)
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/config/application.py", line 420, in parse_command_line
    return self.initialize_subcommand(subc, subargv)
  File "<string>", line 2, in initialize_subcommand
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/config/application.py", line 84, in catch_config_error
    return method(app, *args, **kwargs)
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/config/application.py", line 352, in initialize_subcommand
    subapp = import_item(subapp)
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/utils/importstring.py", line 40, in import_item
    module = __import__(package,fromlist=[obj])
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/frontend/html/notebook/notebookapp.py", line 46, in <module>
    from .handlers import (LoginHandler, LogoutHandler,
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/IPython/frontend/html/notebook/handlers.py", line 36, in <module>
    from docutils.core import publish_string
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/docutils/core.py", line 20, in <module>
    from docutils import frontend, io, utils, readers, writers
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/docutils/frontend.py", line 41, in <module>
    import docutils.utils
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/docutils/utils/__init__.py", line 20, in <module>
    from docutils.io import FileOutput
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/docutils/io.py", line 18, in <module>
    from docutils.utils.error_reporting import locale_encoding, ErrorString, ErrorOutput
  File "/Users/millerc/anaconda/lib/python2.7/site-packages/docutils/utils/error_reporting.py", line 47, in <module>
    locale_encoding = locale.getlocale()[1] or locale.getdefaultlocale()[1]
  File "/Users/millerc/anaconda/lib/python2.7/locale.py", line 503, in getdefaultlocale
    return _parse_localename(localename)
  File "/Users/millerc/anaconda/lib/python2.7/locale.py", line 435, in _parse_localename
    raise ValueError, 'unknown locale: %s' % localename
ValueError: unknown locale: UTF-8

localeターミナルからコマンドを実行する:

5-millerc-~:locale 
LANG=
LC_COLLATE="C"
LC_CTYPE="UTF-8"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=
4

4 に答える 4

100

ここで見つけられる解決策を要約します:http://blog.lobraun.de/2009/04/11/mercurial-on-mac-os-x-valueerror-unknown-locale-utf-8/

これらの行をに追加しました.bash_profile

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8

プロファイルを再読み込みしました:

source ~/.bash_profile

それから私はipython再び走った:

ipython notebook

ロケールの変更

上記は、米国ロケールの英語で機能します。異なる設定が必要な場合があります。

システムの現在の設定を検出するには、明白なことを述べるリスクがありますが、次を使用します。

$ locale

システムで有効なすべての設定のリストを取得するには、次のようにします。

$ locale -a

次に、希望するロケールを選択します。たとえば、スイス フランス語のロケールの場合、ソリューションは次のようになります。

export LC_ALL=fr_CH.UTF-8
export LANG=fr_CH.UTF-8
于 2013-03-23T19:16:23.813 に答える
30

これは、特定のロケール (国/言語の組み合わせ) でのみ表示される OS X ターミナル アプリのバグです。/アプリケーション/ユーティリティでターミナルを開き、「起動時にロケール環境変数を設定する」ボックスのチェックを外します。

ここに画像の説明を入力

これにより、LANG環境変数が空に設定されます。これにより、端末の使用時にロケールの設定が正しくない場合があります。ターミナルの locale コマンドは、使用されている設定を教えてくれます。正しい言語を使用するには、bash プロファイルに行を追加します (通常は~/.profile)

export LANG=your-lang

your-langお使いの言語の正しいロケール指定子に置き換えてください。このコマンドlocale -aは、すべての指定子を表示します。たとえば、米国英語の言語コードはen_US.UTF-8. ロケールは、利用可能なときにどの翻訳が使用されるかに影響し、日付、通貨、および小数点の形式にも影響します。

この画像とコンテンツはhttp://conda.pydata.org/docs/troubleshooting.html#unknown-localeから取得したことに注意してください(私はそのページの元の作成者でもあります)。

于 2013-11-15T01:11:23.683 に答える
3

あなたLC_CTYPEが間違っているので、間違った値が設定されている場所を見つけて、のようなものに変更する必要がありますen_US.UTF-8

于 2013-03-24T13:39:22.650 に答える