トップ 一覧 ping 検索 ヘルプ RSS ログイン

PyScripter 日本語ファイルエラーの対応の変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!!PyScripter 日本語ファイルエラーの対応
[Python][PyScripter]
[Python][PyScripter]{{category 文字化け}}

!!ファイルのパスに日本語が入るとエラー
""UnicodeEncodeError: 'ascii' codec can't encode characters in position 8-10: ordinal not in range(128)

{{ref_image pyscripter_encode_err01.jpg}}

!!%PYTHON_HOME%\Lib\site.py を編集
*Enable to support locale aware default string encodings. の条件を 0 -> 1 に
 def setencoding():
     """Set the string encoding used by the Unicode implementation.  The
     default is 'ascii', but if you're willing to experiment, you can
     change this."""
     encoding = "ascii" # Default value set by _PyUnicode_Init()
     ### ↓↓↓ ここを、0 -> 1 に変更
     if 1:
         # Enable to support locale aware default string encodings.
         import locale
         loc = locale.getdefaultlocale()
         if loc[1]:
             encoding = loc[1]
     if 0:
         # Enable to switch off string to Unicode coercion and implicit
         # Unicode to string conversion.
         encoding = "undefined"
     if encoding != "ascii":
         # On Non-Unicode builds this will raise an AttributeError...
         sys.setdefaultencoding(encoding) # Needs Python Unicode build !

!!OK
{{ref_image pyscripter_encode_err02.jpg}}