Pythonのエラー”SyntaxError:Non-ASCII character”
について調べてみました
はじめに
実際にPython実行してみてファイルを実行したときにエラーが出たものを紹介していきます
今回は、日本語を表示するための方法!!
実行ファイル
print '日本語'
ターミナル実行してみる
$ python step1-0.py
$は、消してください
File "step1-0.py", line 1
SyntaxError: Non-ASCII character '\xe6' in file step1-0.py on line 3, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
どうやら、3行目にシンタクス(文法)エラーがあるようです。
Pythonのエラー"SyntaxError:Non-ASCII character"の解決方法
エラーが出たらまず、日本語に訳してみます。
Google英訳
ファイル「step1-0.py」、1行目
SyntaxError: ファイル step1-0.py の 1 行目に非 ASCII 文字 '\xe6' がありますが、エンコードが宣言されていません。詳細は http://python.org/dev/peps/pep-0263/ を参照してください
つまり、非ASCIIの文字が含まれていて文字エンコーディングが指定されていない場合に発生するエラーのようですね。
リンクの方で見てみましょう
# coding=<encoding name>
または (一般的なエディターで認識される形式を使用):
#!/usr/bin/python
# -*- coding: <encoding name> -*-
また:
#!/usr/bin/python
# vim: set fileencoding=<encoding name> :
Python2.7や3では実行できるみたいですね
Python2.7のインストールをしました
#!/usr/bin/python python2.7
# -*- coding: utf-8 -*-
print '日本語'
!/usr/bin/python
!/usr/bin/python の部分は必ず1行目に書いてください
coding=<encoding name>
<encoding name> => utf-8
utf-8 にしておくと表示が出ました
ターミナル実行してみる
$ python step1-0-1.py
$は、消してください
日本語
出ましたね。
Pythonは、インストールの仕方は調べてみてください。
終わりに
初めての表示の部分で、日本語出せへんのかい!!ってツッコミましたがパソコンだから仕方ないかぁって思ってました。結構、パソコン側の処理のプログラミング言語なんだなぁと思いました
エラーが出た時は、どういうエラーが出てるんだろうと検索するところから始めます。
わりかしここが違うよと明確に書いていたりするので、陥りやすいのは、バージョンが違ったりという環境の部分、実行できるファイルの内容や、1行目に必ず書かないといけない文言があったりというのもいろんなエラーから冷静にチェックしてみてください
見方
$ (command 実行)
コマンドの実行の内容が書かれています
$は、消してください
(command 実行時の出力)
コマンドの実行後の処理が書かれています
エラーの場合は
(command 実行時の出力)
コンプライアンスなどの内容及び長い場合は
注釈。略あり
ここでは、Pythonでできることなども色々やっていきます
一緒に勉強してくれる仲間を募集中です。
一緒にしたい方がいたらぜひ声かけてください
Twitter
@sunstripe2011
コードはこちらに非公開ですが仲間内でGithubで管理しています
青空プログラミング