4

このエラーについて助けを求めるのに適切な場所かどうかはわかりません。どういうわけか、私の Debian Linux システムにはロケールがないようです。基本的に、実行しようとしていたpythonプログラムが行を実行したときに、これに気づきましたlocale.setlocale(locale.LC_ALL, 'en_US')。エラーが発生します:

トレースバック (最新の呼び出しが最後):
ファイル ""、1 行目、
ファイル "runserver.py"、4 行目、
サイト内 = TarbellSite(os.path.dirname(os.path.abspath( file )))
ファイル "/ home/brian/.virtualenvs/tarbell/src/flask-tarbell/tarbell/app.py"、36 行目、init
self.projects = self.load_projects()
ファイル "/home/brian/.virtualenvs/tarbell/src/ Flask-tarbell/tarbell/app.py"、59 行目、load_projects
project = imp.load_module(name, filename, pathname, description)
File "/home/brian/Code/contrib/tarbell/base/config.py",行 28、
locale.setlocale(locale.LC_ALL, 'en_US') 内
ファイル "/home/brian/.virtualenvs/tarbell/lib/python2.7/locale.py"、547 行目、setlocale の
return _setlocale(category, locale)
locale.Error: unsupported locale setting

ただし、このようなSOに関する既存の関連する質問を調査すると、実行するように指示されlocale -a、次の結果が得られます。

C
C.UTF-8
en_US.utf8
POSIX

したがって、私のシステムのロケールでは米国英語のように見えます。私は何を間違っていますか?私は他のさまざまな障害に遭遇しています。sudo apt-get install language-pack-enインターネット上の多くの場所によると、英語の言語パックを取得します。しかし、apt はこのパッケージが存在しないと文句を言います。このいまいましいロケールを取得するにはどうすればよいですか?

4

3 に答える 3

6

「utf8」ビットも追加してみてください。

import locale
locale.getlocale()
>>> (None, None)
locale.setlocale(locale.LC_ALL, 'en_US.utf8')
>>> 'en_US.utf8'
locale.getlocale()
>>> ('en_US', 'UTF-8')
于 2013-08-20T02:17:56.863 に答える