默认情况下,Python 源码文件以 UTF-8 编码方式处理。在这种编码方式中,世界上大多数语言的字符都可以同时用于字符串字面值、变量或函数名称以及注释中——尽管标准库中只用常规的 ASCII 字符作为变量或函数名,而且任何可移植的代码都应该遵守此约定。要正确显示这些字符,你的编辑器必须能识别 UTF-8 编码,而且必须使用能支持打开的文件中所有字符的字体。
1、如果不使用默认编码,要声明文件所使用的编码,文件的第一行要写成特殊的注释。
语法如下所示:
1
|
# -*- coding: encoding -*- |
其中 encoding 可以是 Python 支持的任意一种 codecs。
比如,要声明使用 utf-8 编码,你的源码文件要写成:
1
|
# -*- coding: utf-8 -*- |
2、关于第一行规则的一种例外情况是,源码以 UNIX "shebang" 行开头。这种情况下,编码声明就要写在文件的第二行。
例如:
1
2
|
#!/usr/bin/env python3 # -*- coding: utf-8 -*- |
知识点扩展:
编码的定义
我们从“SOS“(国际通用求助信号)开始,它的摩斯密码的编码是:
“…---…”,想一下为什么选用S、O、S来作为求救信号?因为它简单,容易辨别且不容易发错呀!
那么,字符编码就是:
´给定一系列字符,对每个字符赋予一个数值,用数值来代表对应的字符,这一数值就是字符的编码。例如,我们给字符'A'赋予数值0x41,则0x41就是字符'A'的编码。字符编码是字符的表现、储存方式。
字符编码需要处理两件事
(1)规定一个字符集中的字符由多少个字节表示;
(2)制定该字符集的字符编码表,即该字符集中每个字符对应的(二进制)值。
到此这篇关于python源文件的字符编码知识点详解的文章就介绍到这了,更多相关python源文件的字符编码内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.py.cn/jishu/jichu/27231.html