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

投稿日:2026.06.10

これを解決していこう。

発生しているソースコード ー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らしい。

ビンゴゲーム