プロが教える店舗&オフィスのセキュリティ対策術

こんばんは
python初心者です。

python3系のprintについて、悩んでいます。(CentOS6上で動かしています。)
LANGはja_JP.UTF-8になっています。

今、以下のファイルを作成し、

----------------shincho.py---------------------
#!/usr/bin/env python
# coding: UTF-8

shincho = 170

print ('私の身長は', shincho, 'です')
--------------------------------------------------

それを実行すると
[root@*** python]# python shincho.py
;d$N?HD9$O 170 $G$9

と、日本語部分が文字化けしてしまいます。

こういったprintの使い方は、これから結構使いたいと思っているのですが、
これはなぜ文字化けしているのでしょうか。
また、その解消方法はありますでしょうか。

質問者からの補足コメント

  • ・・・。

    早速の回答ありがとうございます。

    今、試しに同じ内容をREPLで試したら、文字化けしませんでした。
    また、rootではない一般ユーザで試しましたが、同様の結果となりました。

    端末自体が7bitになっていると言うこともありませんでした…。

    どうしたものか…

      補足日時:2017/06/21 00:09

A 回答 (3件)

標準出力の文字コードはどうなっていますか?

    • good
    • 0

文字化けの内容からすると、 ISO-2022-JP ( いわゆるJIS )のESCシーケンス落ち、または、 EUC-JP の 8bit目が0になったもののように見えます。


端末自体が7bitになっているとか、漢字が使えないとか、ワイド文字用のフォントの設定がよくないとか、そういうのは無いですか?


あと、 rootのまま使ってる、というのも気になると言えば気になります。
    • good
    • 0

# coding: UTF-8


と書いてあるけど実は JIS だった, というオチも考えられなくはないんだよな.
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!