以下の2つのコマンドの出力が異なるのはなぜですか?
$ python2.7 -c 'print("\303\251")'
é # <-- Great
$ python3.6 -c 'print("\303\251")'
é # <-- WTF?!
「\ 303 \ 251」から「é」を出力するpython3コマンドは何でしょうか?
宜しくお願いします、
オリヴィエ
user2357112による最初の回答で説明されているように、この行はPython 3に8進値で示される2文字を出力するように指示します(8進バイトは文字のユニコードコードポイントを示します)。
$ python3.6 -c 'print("\303\251")'
é
次の行は、Python2と同様の動作に使用できます。
$ python3.6 -c 'print(b"\303\251".decode())'
é
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加