🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Python

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

Q&A

解決済

2回答

2025閲覧

pythonで「SyntaxError: Non-ASCII character '\xe3'」とのメッセージが出ます。

upacara

総合スコア3

Python

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

0グッド

1クリップ

投稿2021/01/24 06:40

前提・実現したいこと

python 初心者です。

pythonで作られたゲームを(つくるまえに)やってみたいとおもい、このサイト(https://arakik10.hatenablog.com/entry/2018/03/22/184752)でみつけたソースをコピペしたのですが、エラーが出てしまいます。

どのようにしたらこのゲームをプレイできるのでしょうか。

何が問題なのでしょうか。

参考にできる本、ウェブサイトを探したのですがみつかりません。
OSはmacです。macに特有の問題もあるのでしょうか。

発生している問題・エラーメッセージ

SyntaxError: Non-ASCII character '\xe3' but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

該当のソースコード

print( 'Joystickの名称: ' + j.get_name())

試したこと

Python 3.6.3でつくったとあったのでpythonのバージョンを3.6.3にしましたが、結果は変わりませんでした。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

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

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

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

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

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

pepperleaf

2021/01/24 06:50

日本語の部分を英字にするとどうなるでしょうか? .... ここの質問を検索すると結構、ある気がします。
Daregada

2021/01/24 07:28

ターミナルで「python -V」を実行して、バージョンを確認することをお勧めします。Python3も入れたのであれば、「python3 -V」も実行してみてください。
upacara

2021/01/24 09:30

ありがとうございます。 otnさんの方法で実行できました。 日本語を英数字にしても結果は変わりませんでした。 検索で疑問を解決する方法もこれから学んで行こうと思います。 ありがとうございました。
guest

回答2

0

ベストアンサー

そのコードをPython2で実行したときに出るエラーです。

Python3で実行しているつもりでしょうが、実際にはPython2で実行しています。

python3 ファイル名でどうですか?

投稿2021/01/24 07:14

otn

総合スコア85893

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

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

upacara

2021/01/24 09:47

ありがとうございます。 python3 ファイル名(ファイル名だけだとエラーがでるのでディレクトリで指定しました) でゲームが起動しました!! その後、 python ファイル名 で試しましたが、この書き方でも起動しました。(python2 ファイル名にすると-bash: python2: command not foundと返ってきました) atomというエディターを使っているのですが、エディターではなくターミナル(mac)で実行することを学びました。 ゲームの画面が出てきたのですが、マイス、キーボードをつかって操作ができず、何が問題かもわからないため別のゲームのコピペに挑戦しようとおもいます。 今回、このサイトを使っての初めての質問でしたが、答えをもらえてうれしくおもっています。 感謝です。
otn

2021/01/24 10:00

pythonというコマンド打った場合、実際に何が起動されるかは設定次第なので、同じPCの中でも、どこでそのコマンドを入れるかで、違うpythonが起動されるのはよくあります。ここでも、それに起因する質問多数。
upacara

2021/01/25 14:49

設定次第で起動するpythonのヴァージョンが違うということでしょうか。 https://teratail.com/questions/318476?modal=q-comp で新たに質問した内容と関わることのように思えました。 プログラムを実行する時には python2 ファイル名 python3 ファイル名 のどちらかでヴァージョンを指定しないと「実際に何が起動されるかは設定次第」になってしまうということでしょうか。 他の質問と被っているかもしれないのですが、他の人の質問を検索する仕方もまだ把握できずにいます。
otn

2021/01/25 15:51

同じPython3でも複数環境がある場合もありますので、「自分が何をどのようにインストールしたのか」を把握する必要があります。そのあたりに無頓着な人が多数。
upacara

2021/01/27 05:19

回答ありがとうございます。 ありがたく読ませてもらっています。 https://teratail.com/questions/318476?modal=q-comp に返事を書きました。 「python初心者がシンプルに(シンプルな環境で)pythonを学べる」ことを第一に考えた場合、どのような状況をつくるのがよいのか、ヒントをもらえればうれしくおもいます。
otn

2021/01/27 08:57

シンプルであれば、 ・Python3を1つだけシステムディレクトリーにインストールして、 ・エディター(もしくはIDE)でプログラムを書き、 ・端末から、「python3 ファイル名」で実行 でしょうか。 Macだと最初からpython2が入っているそうなので、「python/pipコマンドは使わず、python3/pip3コマンドだけを使う」という方針が良いと思います。 対話型デバッガーを使うなら、IDEから実行しても良いですが、「なんかおかしいぞ」と思ったら、 > 端末から、「python3 ファイル名」で実行 に立ち帰って、問題切り分けを行う。 複数のプログラムを、並行して開発・メンテナンスするようになって、それらのプログラムでPythonやパッケージのバージョンの統一が難しい場合に、初めてpyenvなどの採用を考えます。
upacara

2021/01/29 06:01

質問の意図が伝わったことをうれしくおもっています。 pip と pip3があることもさっき知ったところでした。 1) システムディレクトリーがMacのどこにあるのか調べたのですがわかりませんでした。 ターミナルでwhich python3 と打つと /Library/Frameworks/Python.framework/Versions/3.9/bin/python3 と出ました。 ここはシステムディレクトリーなのでしょうか。 2)本当に一番最初、初めてpythonをインストールする時に「一緒にpyenvも」「一緒にanacondaも」「一緒にvertualenvも」という記事をみてやたらにインストールをしていました。今、一掃したところです。環境を整えながら、パソコンとのやりとりを学んでいます。
otn

2021/02/02 00:24 編集

1) Macは持ってませんので、そのディレクトリの位置づけはわかりません。 「ユーザーホームディレクトリの下で無い」という意味ではシステムディレクトリと言えると思いますが。 2) 「シンプルで余計な心配をしなくてよい」と「いろいろツールを入れて便利」は両立しないので、その中間のどこか自分に合った程度のところを選びましょう。
upacara

2021/02/02 00:07

ありがとうございます。 プログラミング言語の言語らしさを感じることができました。 python学習のよいスタートを切ることができました。 感謝です。
guest

0

python2 で実行する場合、https://qiita.com/TakahitoNakashima/items/51eca163ea0a43089eba を参考にしてください。

しかしながら元ページは python3 で開発したそうなので、python3 で実行することをおすすめします。

投稿2021/01/24 07:12

68user

総合スコア2022

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

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

upacara

2021/01/24 09:39

ありがとうございます。 リンク先に「# coding:utf-8とファイルの一番上に追加すれば解決する。」 とありますが、#がついたままでも読み取ってくれるのでしょうか? #を消したら NameError: name 'utf' is not defined と出てしまいました。 解決方法が1つだけではないようで、混乱しています。 自力で解決できるレベルになるまで 結果は
68user

2021/01/24 09:40

# つけたままでよいです。
upacara

2021/01/25 14:58

解決ができました。 エラーが出たときは、エラーメッセージを調べるとなんらかの答えがでてくることを学べました。 感謝です。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問