Python 中国語問題または SyntaxError。ファイル内の非ASCII文字'˶'˶'ᴗ'ᴗ'
2022-02-27 09:45:33
Pythonの中国語の問題は、常に初心者の頭痛の種でした。
もし、SyntaxError: ソースファイルに中国語が含まれているため、実行時にNon-ASCII character '\xe8' in fileと表示された場合。
Python defaults to ASCII encoding, which can cause problems if Chinese is present, so you must declare the encoding (commented out, i.e., starting with "#") on the second or first line of the code displayed.
The problem can be solved by using the utf-8 encoding
That is, replace <encoding name> with utf-8 # coding=<encoding name> or #! /usr/bin/python # -*- coding: <encoding name> -*- or #! /usr/bin/python # vim: set fileencoding=<encoding name> : or # This Python file uses the following encoding: <encoding name>
These are some examples to clarify the different styles for defining the source code encoding at the top of a Python source file: 1. With interpreter binary and using Emacs style file encoding comment: #! /usr/bin/python # -*- coding: latin-1 -*- import os, sys ... #! /usr/bin/python # -*- coding: iso-8859-15 -*- import os, sys ... #! /usr/bin/python # -*- coding: ascii -*- import os, sys ... Without interpreter line, using plain text: # This Python file uses the following encoding: utf-8 import os, sys ... Text editors might have different ways of defining the file's encoding, e.g. #! /usr/local/bin/python # coding: latin-1 import os, sys ... Without encoding comment, Python's parser will assume ASCII text: #! /usr/local/bin/python import os, sys ... 5. Encoding comments which don't work: Missing "coding:" prefix: #! /usr/local/bin/python # latin-1 import os, sys ... Encoding comment not on line 1 or 2: #! /usr/local/bin/python # -*- coding: latin-1 # -*- coding: latin-1 -*- import os, sys ... Unsupported encoding: #! /usr/local/bin/python # -*- coding: utf-42 -*- import os, sys ...
事例紹介
These are some examples to clarify the different styles for defining the source code encoding at the top of a Python source file: 1. With interpreter binary and using Emacs style file encoding comment: #! /usr/bin/python # -*- coding: latin-1 -*- import os, sys ... #! /usr/bin/python # -*- coding: iso-8859-15 -*- import os, sys ... #! /usr/bin/python # -*- coding: ascii -*- import os, sys ... Without interpreter line, using plain text: # This Python file uses the following encoding: utf-8 import os, sys ... Text editors might have different ways of defining the file's encoding, e.g. #! /usr/local/bin/python # coding: latin-1 import os, sys ... Without encoding comment, Python's parser will assume ASCII text: #! /usr/local/bin/python import os, sys ... 5. Encoding comments which don't work: Missing "coding:" prefix: #! /usr/local/bin/python # latin-1 import os, sys ... Encoding comment not on line 1 or 2: #! /usr/local/bin/python # -*- coding: latin-1 # -*- coding: latin-1 -*- import os, sys ... Unsupported encoding: #! /usr/local/bin/python # -*- coding: utf-42 -*- import os, sys ...
関連
-
[解決済み】ImportError: selenium'という名前のモジュールがない
-
[解決済み】「Symbol not found / Expected in: flat namespace」は実際にはどういう意味ですか?
-
[解決済み] matplotlib で matlab の imagesc に相当するもの?[重複]。
-
[解決済み] マルチプロセシングpool.mapを複数の引数で使用する方法
-
[解決済み] python ソケットサーバ - クライアントが接続を切断してもリスンする
-
[解決済み] エアフローでBigQueryOperatorから結果を取得する
-
は1~2の位置引数を取りますが、3が与えられました。
-
リスト解決にリスト("str "ではない)を連結することだけが可能です。
-
[解決済み] プリント機能の最後のカンマは何のためにあるのですか?
-
[解決済み] pandasのDataFrameからヒートマップを作成する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Pythonによるjieba分割ライブラリ
-
Python入門 openを使ったファイルの読み書きの方法
-
[解決済み】AttributeError: 'list' オブジェクトに 'lower' 属性がない gensim
-
PygameのEventモジュールの詳細な例
-
[解決済み] Django CSRF クッキーが設定されていない
-
[解決済み] TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'」を修正するにはどうしたらいいですか?
-
[解決済み] Pythonです。urllib.quoteをインポートする
-
[解決済み] Python Pandas Drop データフレーム
-
[解決済み] Jinja2テンプレートでif-elif-else文が正しく描画されない。
-
[解決済み] Pythonスクリプトの実行を停止/終了させるには?