关于Pycharm中在运行出现语法错误:Non-UTF-8 code starting with

python 复制代码
 SyntaxError: Non-UTF-8 code starting with '\xca' in file D:/PycharmProjects/lianxi/24_module.py on line 5, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

对于pycharm这个错误是编码声明错误,原因是你的 Python 文件中包含了非 UTF-8 编码的字符,但没有在文件开头声明正确的编码格式。

具体解释:

  • Python 3 默认使用 UTF-8 编码读取文件
  • 当文件中出现 UTF-8 无法识别的字符(如某些中文、特殊符号等),且没有声明正确编码时,就会报这个错误

关于这个报错问题,我被它给烦死了,自己也上网去查询了解决方法,也查到有很多解决方法,这里简单说一下刚开始我查找到的方法,最后发现是自己傻了没有注意下面的编码方式不对

方法一

刚开始我以为是pycharm中的文件编码错误,就去修改,发现无论怎么修改都还会报错,如果你们也遇到这个问题,还是首先去看看这里设置的对不对。

方法二

然后我又去寻找一个办法

在代码首行添加:# coding = utf-8,

python 复制代码
# -*-coding = utf-8,

然后就能正常运行了

要不然就是在在代码首行添加:# coding = gbk

python 复制代码
# -*- coding: gbk -*-

这个跟上面是一样的主要就是给你的代码添加一个声明,表明这个文件类型。

这里我的问题就是解决了,但是每一次写代码都要加上这个声明感觉特别麻烦,然后我又去寻找解决方法。。。。。。。最终还真让我找到一个简单方法

方法三

当你运行你创建的文件时,神奇的出现了以上错误,你并没有做什么,只是简单的写了一句话,如图所示。

只需在Pycharm中,你创建.py文件中的底面右下角找到GBK,将GBK换成UTF-8即可,如图所示。

去选择utf-8,然后选择转换就行了,然后你的代码就可以正常运行了,这个问题就很简单解决了,就不需要每一次写代码都要在开头加上声明。

注意事项

  1. 推荐使用UTF-8编码:UTF-8编码是国际上广泛使用的编码方式,支持几乎所有语言的字符,并且与ASCII编码兼容。因此,在编写Python代码或处理文本文件时,建议尽量使用UTF-8编码。
  2. 检查文本编辑器和IDE的设置:确保你的文本编辑器或IDE的编码设置与你的文件编码方式一致。这样可以避免在保存文件时发生编码转换错误。
  3. 明确指定编码方式:在读取或写入文件时,尽量明确指定文件的编码方式,以避免因编码不匹配而导致的错误。

总结

之所以你的项目写一句简单的话运行会出现错误,是可能你上次在同一个py文件夹或者文本中将pycharm原本的UTF-8编码reload成了GBK编码,导致你重新在创建py文件时,在給你的py语句写注释时,运行错误错误,因为pycharm识别不了你的中文字符,更换成UTF-8编码就可以

相关推荐
Q_Q5110082854 分钟前
python+django/flask的城市供水管网爆管预警系统-数据可视化
spring boot·python·django·flask·node.js·php
小白学大数据2 小时前
增量爬取策略:如何持续监控贝壳网最新成交数据
爬虫·python·性能优化
@forever@7 小时前
【JAVA】LinkedList与链表
java·python·链表
程序员爱钓鱼8 小时前
Python编程实战:面向对象与进阶语法——类型注解与代码规范(PEP 8)
后端·python·ipython
程序员爱钓鱼8 小时前
Python实战:用高德地图API批量获取地址所属街道并写回Excel
后端·python·ipython
reasonsummer9 小时前
【教学类-97-06】20251105“葡萄”橡皮泥黏贴(小班主题《苹果与橘子》)
python
卖个几把萌9 小时前
【16】Selenium+Python 接管已打开谷歌浏览器
python·selenium·测试工具
像风一样的男人@10 小时前
python --两个文件夹文件名比对(yolo 图和label标注比对检查)
windows·python·yolo
lllsure10 小时前
【Python】Dict(字典)
开发语言·python
tianyuanwo11 小时前
Rust开发完全指南:从入门到与Python高效融合
开发语言·python·rust