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实现将pvr格式转换成pvr.ccz的方法
Apr 28 Python
python计算方程式根的方法
May 07 Python
Python将图片批量从png格式转换至WebP格式
Aug 22 Python
Python 遍历列表里面序号和值的方法(三种)
Feb 17 Python
python itchat实现微信好友头像拼接图的示例代码
Aug 14 Python
python使用itchat实现手机控制电脑
Feb 22 Python
浅谈tensorflow中几个随机函数的用法
Jul 27 Python
教你利用Python玩转histogram直方图的五种方法
Jul 30 Python
Python2.7实现多进程下开发多线程示例
May 31 Python
python GUI库图形界面开发之PyQt5动态加载QSS样式文件
Feb 25 Python
详解Python yaml模块
Sep 23 Python
全网最全python库selenium自动化使用详细教程
Jan 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 object转数组示例
2014/01/15 PHP
golang 调用 php7详解及实例
2017/01/04 PHP
Laravel框架路由管理简单示例
2019/05/07 PHP
安装docker和docker-compose实例详解
2019/07/30 PHP
jQuery Div中加载其他页面的实现代码
2009/02/27 Javascript
JavaScript随机排序(随即出牌)
2010/09/17 Javascript
JS代码同步文本框内容的实例方法
2013/07/12 Javascript
javascript函数重载解决方案分享
2014/02/19 Javascript
解决jQuery uploadify在非IE核心浏览器下无法上传
2015/08/05 Javascript
JS焦点图,JS 多个页面放多个焦点图的实例
2016/12/08 Javascript
简单实现js菜单栏切换效果
2017/03/04 Javascript
js获取ip和地区
2017/03/10 Javascript
Angular.js实现获取验证码倒计时60秒按钮的简单方法
2017/10/18 Javascript
webpack中使用iconfont字体图标的方法
2018/02/22 Javascript
bootstrap下拉框动态赋值方法
2018/08/10 Javascript
详解ES6 CLASS在微信小程序中的应用实例
2020/04/24 Javascript
vue 插槽简介及使用示例
2020/11/19 Vue.js
JS实现可以用键盘方向键控制的动画
2020/12/11 Javascript
[50:02]完美世界DOTA2联赛PWL S2 Magma vs FTD 第三场 11.29
2020/12/03 DOTA
浅谈python对象数据的读写权限
2016/09/12 Python
python获取酷狗音乐top500的下载地址 MP3格式
2018/04/17 Python
python中in在list和dict中查找效率的对比分析
2018/05/04 Python
Python如何读取文件中图片格式
2020/01/13 Python
python 实现批量图片识别并翻译
2020/11/02 Python
Pandas的数据过滤实现
2021/01/15 Python
Spy++的使用方法及下载教程
2021/01/29 Python
Kickers鞋英国官网:男士、女士和儿童鞋
2021/03/08 全球购物
包装类的功能、种类、常用方法
2012/01/27 面试题
一套中级Java程序员笔试题
2015/01/14 面试题
媒体宣传策划方案
2014/05/25 职场文书
交通安全责任书范本
2014/07/24 职场文书
食品安全演讲稿
2014/09/01 职场文书
辩论赛新闻稿
2015/07/17 职场文书
nginx+lua单机上万并发的实现
2021/05/31 Servers
Windows中Redis安装配置流程并实现远程访问功能
2021/06/07 Redis
Python与C++中梯度方向直方图的实现
2022/03/17 Python