python源文件的字符编码知识点详解


Posted in Python onMarch 04, 2021

默认情况下,Python 源码文件以 UTF-8 编码方式处理。在这种编码方式中,世界上大多数语言的字符都可以同时用于字符串字面值、变量或函数名称以及注释中——尽管标准库中只用常规的 ASCII 字符作为变量或函数名,而且任何可移植的代码都应该遵守此约定。要正确显示这些字符,你的编辑器必须能识别 UTF-8 编码,而且必须使用能支持打开的文件中所有字符的字体。

1、如果不使用默认编码,要声明文件所使用的编码,文件的第一行要写成特殊的注释。

语法如下所示:

# -*- coding: encoding -*-

其中 encoding 可以是 Python 支持的任意一种 codecs。

比如,要声明使用 utf-8 编码,你的源码文件要写成:

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

2、关于第一行规则的一种例外情况是,源码以 UNIX "shebang" 行开头。这种情况下,编码声明就要写在文件的第二行。

例如:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

知识点扩展:

编码的定义

我们从“SOS“(国际通用求助信号)开始,它的摩斯密码的编码是:

“…---…”,想一下为什么选用S、O、S来作为求救信号?因为它简单,容易辨别且不容易发错呀!
那么,字符编码就是:

´给定一系列字符,对每个字符赋予一个数值,用数值来代表对应的字符,这一数值就是字符的编码。例如,我们给字符'A'赋予数值0x41,则0x41就是字符'A'的编码。字符编码是字符的表现、储存方式。

字符编码需要处理两件事

(1)规定一个字符集中的字符由多少个字节表示;

(2)制定该字符集的字符编码表,即该字符集中每个字符对应的(二进制)值。

到此这篇关于python源文件的字符编码知识点详解的文章就介绍到这了,更多相关python源文件的字符编码内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
用Python创建声明性迷你语言的教程
Apr 13 Python
用Python进行行为驱动开发的入门教程
Apr 23 Python
python计算牛顿迭代多项式实例分析
May 07 Python
Python使用filetype精确判断文件类型
Jul 02 Python
Python 操作文件的基本方法总结
Aug 10 Python
python函数式编程学习之yield表达式形式详解
Mar 25 Python
详解Numpy中的广播原则/机制
Sep 20 Python
使用50行Python代码从零开始实现一个AI平衡小游戏
Nov 21 Python
Python 根据日志级别打印不同颜色的日志的方法示例
Aug 08 Python
python词云库wordCloud使用方法详解(解决中文乱码)
Feb 17 Python
Python使用itcaht库实现微信自动收发消息功能
Jul 13 Python
Python爬取数据并实现可视化代码解析
Aug 12 Python
python3判断IP地址的方法
Mar 04 #Python
Python解析m3u8拼接下载mp4视频文件的示例代码
Mar 03 #Python
python和opencv构建运动检测器的实现
Mar 03 #Python
Python3自带工具2to3.py 转换 Python2.x 代码到Python3的操作
Mar 03 #Python
详解python第三方库的安装、PyInstaller库、random库
Mar 03 #Python
聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明
Mar 03 #Python
对Pytorch 中的contiguous理解说明
Mar 03 #Python
You might like
PHP读取PPT文件的方法
2015/12/10 PHP
php框架CodeIgniter主从数据库配置方法分析
2018/05/25 PHP
15个款优秀的 jQuery 图片特效插件推荐
2011/11/21 Javascript
JavaScript中检查对象property的存在性方法介绍
2014/12/30 Javascript
使用AngularJS和PHP的Laravel实现单页评论的方法
2015/06/19 Javascript
plupload+artdialog实现多平台上传文件
2016/07/19 Javascript
Angular的自定义指令以及实例
2016/12/26 Javascript
使用JS编写的随机抽取号码的小程序
2017/08/11 Javascript
分享vue.js devtools遇到一系列问题
2017/10/24 Javascript
jQuery+SpringMVC中的复选框选择与传值实例
2018/01/08 jQuery
Vue中使用Sortable的示例代码
2018/04/07 Javascript
如何解决.vue文件url引用文件的问题
2019/01/18 Javascript
[01:09]模型精美,特效酷炫!TI9不朽宝藏Ⅰ鉴赏
2019/05/10 DOTA
python检测是文件还是目录的方法
2015/07/03 Python
Python2和Python3之间的str处理方式导致乱码的讲解
2019/01/03 Python
在Django admin中编辑ManyToManyField的实现方法
2019/08/09 Python
python3 requests库文件上传与下载实现详解
2019/08/22 Python
计算pytorch标准化(Normalize)所需要数据集的均值和方差实例
2020/01/15 Python
Python matplotlib实时画图案例
2020/04/23 Python
Python Tornado实现WEB服务器Socket服务器共存并实现交互的方法
2020/05/26 Python
python对一个数向上取整的实例方法
2020/06/18 Python
美国网上花店:JustFlowers
2017/02/12 全球购物
英国羊绒服装购物网站:Pure Collection
2018/10/22 全球购物
思想政治自我鉴定
2013/10/06 职场文书
教导处工作制度
2014/01/18 职场文书
幼儿园秋游感想
2014/03/12 职场文书
新品发布会主持词
2014/04/02 职场文书
锦旗标语大全
2014/06/23 职场文书
改进作风怎么办发言材料
2014/08/17 职场文书
大学生党员学习焦裕禄精神思想汇报
2014/09/10 职场文书
大学生作弊检讨书
2014/09/11 职场文书
公司合作协议范文
2014/10/01 职场文书
2015年学校教务处工作总结
2015/05/11 职场文书
社区低保工作总结2015
2015/07/23 职场文书
Python opencv缺陷检测的实现及问题解决
2021/04/24 Python
Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解
2022/03/03 Python