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 操作后,重新运行命令即可正常执行!

相关推荐
南山安1 天前
手写 Cursor 核心原理:从 Node.js 进程到智能 Agent
人工智能·agent·设计
码路飞1 天前
写了个 AI 聊天页面,被 5 种流式格式折腾了一整天 😭
javascript·python
掘金安东尼1 天前
如何为 AI 编码代理配置 Next.js 项目
人工智能
aircrushin1 天前
轻量化大模型架构演进
人工智能·架构
文心快码BaiduComate1 天前
百度云与光本位签署战略合作:用AI Agent 重构芯片研发流程
前端·人工智能·架构
风象南1 天前
Claude Code这个隐藏技能,让我告别PPT焦虑
人工智能·后端
曲幽1 天前
FastAPI压力测试实战:Locust模拟真实用户并发及优化建议
python·fastapi·web·locust·asyncio·test·uvicorn·workers
Mintopia1 天前
OpenClaw 对软件行业产生的影响
人工智能
陈广亮1 天前
构建具有长期记忆的 AI Agent:从设计模式到生产实践
人工智能
会写代码的柯基犬1 天前
DeepSeek vs Kimi vs Qwen —— AI 生成俄罗斯方块代码效果横评
人工智能·llm