Bruce.です。
機械伯爵 wrote:
>> 思い出せる範囲で書くと、
>> ・Windowsユーザーを念頭においているようで、スクリプトのエンコーディングも
>> ShfitJISを使うのですが、それはともかく
>>
>> #coding: ShiftJIS
>>
>> はどうかと。
>> mbcs 使った方がいいと思うのですが…
>
> 上記文言を入れないと、PythonがSJISコードを理解できないでエラー
> になるので、仕方ないかと。
>
> 日本語を入れるなら、#coding: utf-8とか、#coding:eucjpとか入れる
> しかないです。
いやcoding指定することについては問題ないと思いますし、むしろ無いほうが
問題が出るでしょう。ここで気にしているのは、ShiftJIS と mbcs という
エンコーディングのどちらが良いかということです。mbcsというのはWindows
環境でのみ意味がある指定ですので、ほかの環境に持っていくのであれば
mbcsを使うべきではないでしょう。しかしながら、そうであるならShiftJIS
というエンコーディングも避けるべきだとわたしは思いますので、その意味では
両者に大差はありません。
utf-8でいいと思うんですけどねえ。
> それはそーと、SJISもMBCS(Multiple Byte Character Set)だと思う
> のですが、Pythonの書き方で、#coding:mbcsとかってありましたっけ?
4.8.3 Standard Encodings
http://docs.python.org/lib/standard-encodings.html
shift_jis csshiftjis, shiftjis, sjis, s_jis Japanese
shift_jis_2004 shiftjis2004, sjis_2004, sjis2004 Japanese
shift_jisx0213 shiftjisx0213, sjisx0213, s_jisx0213 Japanese
mbcs dbcs Unicode string Windows only: Encode operand according to
the ANSI codepage (CP_ACP)
いじょ。