質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

1429閲覧

python ユニコードの出力について

_Noname

総合スコア14

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

1クリップ

投稿2017/02/07 14:59

編集2017/02/07 15:02

python3.4でプログラミングを行っています。

python3.4でのユニコードの出力について質問です。

下記のプログラムを実行した際に、'①'は出力されるのですが、'虀'はエラーで出力されません。
同じユニコードだと思うのですが、標準で対応しているものとしていないものがあるのでしょうか?
エンコードをutf-8の他に、cp932, shift-jis, euc-jpに変更してみましたが、ダメでした。

このプログラムは、文字コード utf-8で保存しています。

python

1 2# coding: utf-8 3 4print ('①') # unicode 2460 5 6print ('虀') # unicode 8640 7 8

実行後

python

12Trackback (most recent call last): 3 File "C:\private\test.py", line 5, in <module> 4 print ('\u8640') 5UnicodeEncodeError: 'cp932' codec can't encode character '\u8640' in position 0: illegal multibyte sequence

回答よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Windows環境ですよね。

chcp 65001

コマンド打ってからだとどうなりますかね。
DOSプロンプトに出すためにSJIS化しようとしてかけているように見えますので。

投稿2017/02/07 15:33

yuba

総合スコア5568

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

_Noname

2017/02/07 15:37

無事文字化けせずに出力する事が出来ました!感謝いたします! 環境を記入するのを忘れていました、以後気を付けます。
yuba

2017/02/07 23:19

CP932とあった時点で日本語版Windowsだとわかるので大丈夫です。これは①のような非JIS文字を一部含むシフトJISの変種です。シフトJISですから第四水準漢字は表現できません。 日本語版WindowsのAPIは標準で文字列データをCP932で受け取るので、Pythonは出力の最終段階でCP932に変換しようとし、失敗していました。 chcpはWindowsのAPI文字コード体系を切り替えるコマンドで、65001はutf-8です。これなら変換できない文字はありません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問