SyntaxError: Non-ASCII character ‘\xe6’ , but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
これを解決していこう。
発生しているソースコード ーbingo.pyの6行目ー

SyntaxError: Non-ASCII character ‘\xe6’
これどういう意味?
おそらく、_が該当すると思う。
ChatGPTに相談すると、以下が分かった。
- PythonはデフォルトでASCll(英数字と一部記号のみ)を想定している。
- \xe6は、UTF-8で日本語の一部を表すバイト。
_が原因?
これが日本語扱いされているのか?
と思い、numに変えてみたが、変化がない。


Mac:python shibatahiroshitaka$ python bingo.py
File "bingo.py", line 6
SyntaxError: Non-ASCII character '\xe6' in file bingo.py on line 6, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
コメントアウトを外したら6行目のエラーが消えた

全角の空白が入っていたのが原因だろう。
9行目にエラーの矛先が変わった。
Mac:python shibatahiroshitaka$ python bingo.py
File "bingo.py", line 9
SyntaxError: Non-ASCII character '\xe5' in file bingo.py on line 9, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

9行目を削除すると、15行目にエラーの矛先が変わった。
という感じでエラーが続いた。
Python2で実行していたことが原因
GPTにソースを送信すると、以下の回答が得られた。

venvで起動することで解決
以下のように、すでに作成しているvenvを起動した。
Mac:python shibatahiroshitaka$ source venv/bin/activate
(venv) Mac:python shibatahiroshitaka$
その前提であれば、起動することができた。

なので、コメントアウトは元に戻しておいた。
macOSはpythonが2.7のことがある
venvを抜けて、
(venv) Mac:python shibatahiroshitaka$ deactivate
Mac:python shibatahiroshitaka$
Pythonのバージョンを確認すると、案の定2.7だった。
Mac:python shibatahiroshitaka$ python --version
Python 2.7.16
文字コードをUTF-8で保存する方法
Python2では必須らしい。
# -*- coding: utf-8 -*-
職場のソースコードにも上記のような記述があったことを思い出す。
絵文字は非ASCll
23行目にある✖️は非ASCllらしい。
