現象
-
Windows10バージョン1809(2018 October)で
python2.7とdockerいずれかの日本語出力(というかマルチバイト文字?)が壊れる- Windows10バージョン1803(2018 April)は大丈夫
-
cmd/PowerShellのモード依存
- デフォルトモード
- レガシモード
デフォルト | レガシ | |
---|---|---|
python2.7 | print u’あ’ でIOError Errno0 | - |
docker | - | コンテナ内で日本語を標準出力すると “New state of ‘nil’ is invalid” コンテナから追い出される |
バージョン確認
winver
cmd/Powershellの2つのモード
-
Win10バージョン1809からは、cmd/PowerShellには「レガシモード」がある
- ウィンドウのタイトル部分を右クリ→プロパティから切り替え可能
回避
-
デフォルトモード使う
- dockerの日本語出力は壊れない
- デフォルトモードのcmdやPowerShellでも、emacs上で動かせば、python2.7の日本語出力は壊れなかった
根治
- python3x使え