Python2.xと日本語
日本語さえ使わないで済むならPythonって便利な言語だと思うのですが…。まず、スクリプトの中に日本語を書き込む場合は、コメント行に「# -*- coding: name -*-」という形式の宣言を入れてあげなければなりません。
#! /usr/bin/python
# -*- coding: utf8 -*-
print u"こんにちは"
上記コードでも、環境に依ってはそのままでは文字出力が出来ずエラーが出ることがあります(特にcronで実行する場合のようなシンプルなシェル環境は要注意です)。この場合、LC_CTYPE環境変数を足すか、マルチバイトの文字列を個別にエンコードしてあげる必要があります(実は、encodeメソッドの中で何をしているのか理解出来ていないのですが、こうすると動きます…)。
export LC_CTYPE=en_US.UTF-8
または、
#! /usr/bin/python
# -*- coding: utf8 -*-
print u"こんにちは".encode("utf8")
Linuxでよく使われる環境変数にLANG、というものもありますが、PythonはどうもLANGの方は考慮してくれないような感じです。GNUのサイトにもLANGは「LC_xxで設定されたものを除く」と記述がありますので、LC_xxの方が影響を及ぼす処理系の方が一般的なのかもしれません(JavaはLANGを使ってましたが、LC_CTYPEも効くのかな)。
参考URL
この記事は役に立ちましたか?
- EnglishWorm.com
- SinglesFan.com
- LmLab.net
- サイトマップ
- 運営者について