首页后端开发Pythonpython编写代码的时候用中文注释程序会报错

python编写代码的时候用中文注释程序会报错

时间2023-06-08 10:21:01发布访客分类Python浏览652
导读:python编写代码的时候用中文注释程序会报错?从问题应该可以确定题主使用的是 Python 2.x 版本,而在 Python 2 版本中,最坑爹的问题莫过于编码问题,也是困扰了无数初学者的问题。原因分析首先要了解的就是 Python 2...

python编写代码的时候用中文注释程序会报错?

从问题应该可以确定题主使用的是 Python 2.x 版本,而在 Python 2 版本中,最坑爹的问题莫过于编码问题,也是困扰了无数初学者的问题。

原因分析

首先要了解的就是 Python 2 版本是使用 ASCII 作为默认编码的,上图是一个简易的 ASCII 对照表,可以看到 ASCII 只包含了一些符号、数字、字母,是不包含中文字符的。所以在 Python 2 版本默认环境下运行包含中文字符的 Python 代码的时候,就会得到一个错误:

SyntaxError: Non-ASCII character xxx in file, but no encoding declared.

这个错误翻译过来就是“代码没有指定编码(即默认的 ASCII 码),但是存在非 ASCII 码的字符”,猜测题主应该也是遇到的是这个错误吧。

解决方案

要解决这个问题其实很简单,只需要在代码添加一个编码声明就可以,可以声明的编码有很多种,这里不多做介绍,通常我们会使用 UTF-8 编码。

而声明编码的方式有几点要注意的:

1. 声明要添加在代码开头第一行或者第二行,并且之前不可以有其他代码。(如果第一行是代码,第二行是声明也是不可以的;同样强两行没有代码,第三行是声明也是不可以的)

2. 声明的格式为满足一个正则表达式:

^[ \t\f]*#.*?coding[:=][ \t]*([-_.a-zA-Z0-9]+)

这个表达式看不懂?没关系,通常我们都会使用相同格式如下:

# coding=utf-8

或者

# -*- coding: utf-8 -*-

虽然使用上面的方案可以解决这个问题,但是还有更好的方案就是去学习使用 Python 3 版本,这些困扰你的问题基本上就全都没有了。而且 Python 3 已经是现在的主流版本了,只是由于 Python 2 这个坑挖的太大了,所以才导致目前两种版本并存。相信未来某一天,Python 2 必然会退出历史舞台。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: python编写代码的时候用中文注释程序会报错
本文地址: https://pptw.com/jishu/66714.html
编程猫怎么收费 python接单需要哪些知识

游客 回复需填写必要信息