`
lin_llx
  • 浏览: 125128 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Python源代码中的编码声明字符串的作用

阅读更多

原来以为Python编源代码头部的#encoding: utf8的字符串对于python的实际编码解析是没有影响的。

但是今天发现一个很好玩的问题。Mark一下。

当python的代码中存在类似u'中文'这样的字符串的时候,假设是utf8编码,本地保存在py文件中的时候,是按照u'\xe4\xb8\xad\xe6\x96\x87'这样的实际本地编码保存的。

如果编码声明字符串是#encoding: utf8。

那么在使用的时候没有任何的影响。

但是如果编码声明字符串的时候使用#encoding: gbk

那么在执行import module的时候,python会尝试利用gbk编码去解析这个u'\xe4\xb8\xad\xe6\x96\x87',运行的结果当然会报错。

 

SyntaxError: 'gbk' codec can't decode bytes in position 2-3: invalid data (encode.py, line 2)

 

如果#encoding: utf8,那么这个字符串就会被解析成u'\u4e2d\u6587'。然后就可以像正常unicode字符串一样使用了。

 

0
0
分享到:
评论

相关推荐

    FindHardCodedStrings:从XCode Android项目的源代码中找到硬编码字符串

    FindHardCodedStrings 从XCode项目的源代码中找到硬编码字符串find_strings.py:适用于iOS项目(如果源代码在Objective-C中):Python脚本,在xcode项目的源文件中搜索硬编码的字符串,并将其替换为新文件中的...

    Python之字符串和编码共13页.pdf.zip

    Python之字符串和编码共13页.pdf.zip

    PySimpleGUI-Base64-Encoder:将您的JPG,PNG,GIF和ICO文件转换为Base64字符串,以包含在源代码中。 在您的Python源代码中添加图标,游戏图形等-python source file

    如果您正在开发GUI程序,有时更容易将所有资产与源代码本身一起包含在文件中。 这将使您能够通过提供一个.py文件而不是几个可能分开的文件来分发您的应用程序。 使用Python分发应用程序仍然是一个挑战。 这种技术使...

    Python语言程序设计源代码.zip

    学习本章,要熟练掌握Python组合数据类型(列表、元组、字符串、字典、集合)的创建、访问和常见基本操作,以及序列解包功能。 第4章 Python控制结构。针对物质随时间由简单向复杂、由低级向高级发展的顺序,Python...

    python的base64和pillow库实现的编码解码程序源代码

    使用base64库进行解码的步骤如下:将需要解码的Base64编码字符串转换为bytes类型。调用b64decode()函数,将Base64编码的数据进行解码,返回解码后的bytes对象。Pillow库是Python中常用的图像处理库,它的Image模块...

    总结Python基础面试题.docx

    从存储的字符串表示中检索原始Python 对象的过程称为unpickling。 2、作为解释型语言,Python 如何运行? Python 是一种解释型语言。Python 程序直接从源代码运行,将程序员编写的源代码转换成中间语言,再将中间语言...

    Python参考手册(第4版).pdf

    目录: 第一部分 Python语言 第1章 Python简介 1.1 运行Python 1.2 变量和算术表达式 ...2.9 源代码编码 第3章 类型与对象 3.1 术语 第二部分 Python库 第三部分 扩展与嵌入 附录 Python 3

    学习python处理python编码问题

    二、python源文件的编码与解码,我们写的python程序从产生到执行的过程如下: 编辑器—->源代码—->解释器—->输出结果 2.1、编辑器决定源代码的编码格式(在编辑器中设定) 2.2、也必须要解释器知道源代码的编码...

    Base64:图片到base64编码的字符串批量转换器

    源文件夹包含Python源代码。 这段代码可以同时由Python 2.x和Python 3.x执行。 源文件夹还包含一个与一起使用的setup.py文件,用于生成可执行文件。 docs文件夹包含用于本文档的信息。 指令 -h --help显示控制台...

    Python参考手册(第4版)

    中文名: Python参考手册 (第4版) 原名: Python Essential Reference, 4th Edition 别名: Python ...2.9 源代码编码 第3章 类型与对象 3.1 术语 第二部分 Python库 第三部分 扩展与嵌入 附录 python 3

    Python核心编程第二版

     6.4.2 字符串模板: 更简单的替代品   6.4.3 原始字符串操作符(r/R)   6.4.4 Unicode字符串操作符(u/U)   6.5 内建函数   6.5.1 标准类型函数   6.5.2 序列类型函数   6.5.3 字符串类型函数...

    Python核心编程第二版(ok)

     6.4.2 字符串模板c更简单的替代品   6.4.3 原始字符串操作符(rR)   6.4.4 Unicode字符串操作符(uU)   6.5 内建函数   6.5.1 标准类型函数   6.5.2 序列类型函数   6.5.3 字符串类型函数  ...

    Python核心编程(第二版).pdf (压缩包分2部分,第二部分)

     6.4.4 unicode字符串操作符(u/u)   6.5 内建函数   6.5.1 标准类型函数   6.5.2 序列类型函数   6.5.3 字符串类型函数   6.6 字符串内建函数   6.7 字符串的独特特性   6.7.1 特殊字符串...

    Python核心编程(第二版).pdf (压缩包分2部分,第一部分)

     6.4.4 unicode字符串操作符(u/u)   6.5 内建函数   6.5.1 标准类型函数   6.5.2 序列类型函数   6.5.3 字符串类型函数   6.6 字符串内建函数   6.7 字符串的独特特性   6.7.1 特殊字符串...

    python-syntax:Vim的Python语法突出显示

    字符串中的特殊符号 数值常数 增加了对以下内容的支持: Python 3 带下划线的数字 字符串%格式和f字符串 魔术评论:源代码编码和shebangs 新的例外和内建函数 文档测试 @decorator语法 类变量,例如self , cls...

    matlab查看qr分解函数源码-all-python-library:所有python库

    matlab查看qr分解函数源码 收集了 Python 中 1000 + 的库,包括内置库、第三方库。...uniout,提取字符串中可读写的字符 awesome slugify,一个Python slugify库,用于处理Unicode。 python-slugify,转换

    dive into python

    1.7. 从源代码安装 Python 1.8. 使用 Python 的交互 Shell 1.9. 小结 2. 第一个 Python 程序 2.1. 概览 2.2. 函数声明 2.2.1. Python 和其他编程语言数据类型的比较 2.3. 文档化函数 2.4. 万物皆对象 2.4.1. ...

    python练习题 :用户任意输入10个整数到列表中,然后由大到小排列并输出。

    3.python源代码被解释器转换后的格式为___.pyc______。 4.python3.x默认使用的编码是_UTF-8________。 5.如果想测试变量的类型,可以使用___type()_____来实现。 6.8.57E5表示的数是___8.57*10^5_______。 7.字符串...

Global site tag (gtag.js) - Google Analytics