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 相关文章推荐
rhythmbox中文名乱码问题解决方法
Sep 06 Python
Python协程的用法和例子详解
Sep 09 Python
Python通过OpenCV的findContours获取轮廓并切割实例
Jan 05 Python
Android基于TCP和URL协议的网络编程示例【附demo源码下载】
Jan 23 Python
分析Python读取文件时的路径问题
Feb 11 Python
python实现监控某个服务 服务崩溃即发送邮件报告
Jun 21 Python
Python3.4学习笔记之常用操作符,条件分支和循环用法示例
Mar 01 Python
Python3 翻转二叉树的实现
Sep 30 Python
Python pickle模块实现对象序列化
Nov 22 Python
Python之关于类变量的两种赋值区别详解
Mar 12 Python
tensorflow安装成功import tensorflow 出现问题
Apr 16 Python
asyncio异步编程之Task对象详解
Mar 13 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
虫族 Zerg 历史背景
2020/03/14 星际争霸
WAR3重制版DOTA 5V5初体验
2020/04/09 DOTA
php另类上传图片的方法(PHP用Socket上传图片)
2013/10/30 PHP
Destoon实现多表查询示例
2014/08/21 PHP
Codeigniter检测表单post数据的方法
2015/03/21 PHP
php中 ob_start等函数截取标准输出的方法
2015/06/22 PHP
PHP使用Mysqli类库实现完美分页效果的方法
2016/04/07 PHP
php实现带读写分离功能的MySQL类完整实例
2016/07/28 PHP
PHP getDocNamespaces()函数讲解
2019/02/03 PHP
JavaScript加密解密7种方法总结分析
2007/10/07 Javascript
jQuery源码分析之Event事件分析
2010/06/07 Javascript
Javascript图像处理—虚拟边缘介绍及使用方法
2012/12/27 Javascript
理解Javascript闭包
2013/11/01 Javascript
使用javascript实现有效时间的控制,并显示将要过期的时间
2014/01/02 Javascript
JavaScript中常见获取元素的方法汇总
2015/03/04 Javascript
JS中的Replace方法使用经验分享
2015/05/20 Javascript
浅析JS运动
2015/12/28 Javascript
微信小程序使用canvas自适应屏幕画海报并保存图片功能
2019/07/25 Javascript
使用Python编写简单的端口扫描器的实例分享
2015/12/18 Python
Python 操作MySQL详解及实例
2017/04/30 Python
influx+grafana自定义python采集数据和一些坑的总结
2018/09/17 Python
Python实现计算长方形面积(带参数函数demo)
2020/01/18 Python
CSS3弹性布局内容对齐(justify-content)属性使用详解
2017/07/31 HTML / CSS
HTML5本地存储之Web Storage详解
2016/07/04 HTML / CSS
ABOUT YOU罗马尼亚:超过600个时尚品牌
2019/09/19 全球购物
阿拉伯时尚购物网站:Nisnass
2021/02/07 全球购物
学生自我鉴定
2013/12/18 职场文书
岗位竞聘演讲稿范文
2014/04/24 职场文书
保护环境建议书300字
2014/05/13 职场文书
个人查摆问题及整改措施
2014/10/16 职场文书
单位证明范文
2015/06/18 职场文书
教师节校长致辞
2015/07/31 职场文书
关于企业的执行力标语大全
2020/01/06 职场文书
Mysql基础知识点汇总
2021/05/26 MySQL
MySQL里面的子查询的基本使用
2021/08/02 MySQL
使用CSS连接数据库的方式
2022/02/28 HTML / CSS