SyntaxError: Non-UTF-8 code starting

这个错误是因为你的 welcome.py 文件中包含了中文(或非 UTF-8 编码的字符),但没有声明文件编码格式,导致 Python 解析失败。以下是3 种解决方法(按推荐优先级排序):

方法 1:在文件开头添加 UTF-8 编码声明(推荐)

welcome.py 的第一行添加编码声明,告诉 Python 用 UTF-8 解析文件:

python

运行

-- coding: utf-8 --

或者更简洁的写法(Python3.4+支持)

coding=utf-8

之后写你的代码(比如包含中文的打印语句)

print("欢迎学习Python!")

✅ 说明:这是 PEP-0263 标准推荐的方式,兼容所有 Python 版本,是最通用的解决方案。

方法 2:保存文件时指定 UTF-8 编码

如果你的文件没有中文,但依然报错,可能是文件保存时的编码不是 UTF-8(比如 Windows 默认的 GBK 编码)。解决步骤:

用记事本(或 VS Code、PyCharm 等编辑器)打开 welcome.py

点击「文件」→「另存为」

在「编码」选项中选择「UTF-8」

覆盖原文件保存

重新运行 python welcome.py

方法 3:临时指定 Python 运行时编码(不推荐,仅应急)

如果不想修改文件,可以在运行命令时指定编码(仅 Python3.7 + 支持):

bash

python -X utf8 welcome.py

❌ 缺点:每次运行都要加参数,不适合长期使用,优先用方法 1 或 2。

补充说明:

错误中的 \xc7 是 GBK 编码的字符(比如 "欢" 字的 GBK 编码是 0xC7-B3),说明你的文件可能是用 GBK 编码保存的,而 Python 默认用 UTF-8 解析,导致解码失败。

如果你确实需要用 GBK 编码(不推荐),也可以声明 GBK 编码:# -- coding: gbk - -,但跨平台兼容性差,建议统一用 UTF-8。

按方法 1 操作后,重新运行命令即可正常执行!

相关推荐
Robot侠9 分钟前
极简LLM入门指南4
大数据·python·llm·prompt·提示工程
小a杰.17 分钟前
Flutter 与 AI 深度集成指南:从基础实现到高级应用
人工智能·flutter
colorknight32 分钟前
数据编织-异构数据存储的自动化治理
数据仓库·人工智能·数据治理·数据湖·数据科学·数据编织·自动化治理
Lun3866buzha1 小时前
篮球场景目标检测与定位_YOLO11-RFPN实现详解
人工智能·目标检测·计算机视觉
janefir1 小时前
LangChain框架下DirectoryLoader使用报错zipfile.BadZipFile
人工智能·langchain
等....1 小时前
Miniconda使用
开发语言·python
Java&Develop1 小时前
Aes加密 GCM java
java·开发语言·python
齐齐大魔王1 小时前
COCO 数据集
人工智能·机器学习
AI营销实验室2 小时前
原圈科技AI CRM系统赋能销售新未来,行业应用与创新点评
人工智能·科技
爱笑的眼睛113 小时前
超越MSE与交叉熵:深度解析损失函数的动态本质与高阶设计
java·人工智能·python·ai