Python编码相关
1、#coding=utf-8的作用
作用是这个文件代码的编码格式,如果没有声明代码中不能出现中文字符,包括注释中也不能出现。否则会报错SyntaxError: Non-ASCII character。
2、sys.setdefaultencoding('utf-8')的作用
可以使用sys.getdefaultencoding()获取系统编码格式。python2和python3的默认编码格式是不相同的,2是ascii码,3默认是utf-8。
如果不设置默认的编码,使用中文的时候,在2中重新去encode的时候就会报错。因为ascii中没有中文,而encode的时候python会自动要先进行decode,而decode解码的方式会使用默认的系统编码。这样,中文就会出错了。因此,可以指定解码的方式,如s.decode('utf-8').encode('gb2312')。
或者在代码开始处加:
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
报错信息
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position 0: ordinal not in range(128)
s = '中文字符'
s.encode('gb2312')
3、reload(sys)的作用
因为,在sys加载后,setdefaultencoding方法被删除了,所以我们要通过重新导入sys来设置系统编码。如果,不reload会报下面的错误。
AttributeError: 'module' object has no attribute 'setdefaultencoding'
Python编码相关的更多相关文章
- Python编码相关文章推荐
Table of Contents 1. 分享 分享 python2里面编码对很多人来说是个很头疼的问题,今天分享一篇编码相关的文章,是前几天读到的相比于大部分解释编码问题的一知半解模糊不清,这篇写得 ...
- PYTHON编码处理-str与Unicode的区别
一篇关于STR和UNICODE的好文章 整理下python编码相关的内容 注意: 以下讨论为Python2.x版本, Py3k的待尝试 开始 用python处理中文时,读取文件或消息,http参数等等 ...
- 【转】python编码的问题
摘要: 为了在源代码中支持非ASCII字符,必须在源文件的第一行或者第二行显示地指定编码格式: # coding=utf-8 或者是: #!/usr/bin/python # -*- coding: ...
- python 文件相关知识
字符编码相关 什么是字符编码 字符编码的类型 字符编码的使用 python2和python里字符编码的区别 文件的相关 文件的基础操作 打开文件的模式 字符编码 什么是字符编码在计算机里只识别二进制, ...
- python编码详解--转自(Alex的博客)
原文地址:http://www.cnblogs.com/alex3714/articles/7550940.html 编码回顾 在备编码相关的课件时,在知乎上看到一段关于Python编码的回答 这哥们 ...
- python书籍推荐:python编码推荐(高清完整pdf)
目录INF-qa Python 编码规范................................................................................ ...
- python经典书籍推荐:python编码规范
目录INF-qa Python 编码规范................................................................................ ...
- python编码问题在此终结
转载:https://www.cnblogs.com/whatisfantasy/p/6422028.html 1 版本差异概览 1.1 Python 2.X: str(用于8位文本和二进制数据) ...
- 说说Python编码规范
前言 已有近两个月没有发表过文章了,前段时间外甥和女儿过来这边渡暑假,平常晚上和周末时间都陪着她们了,趁这个周末有空,再抽空再把这块拾起来. 这么久没写了,再次拿起键盘,想想,发表些什 ...
随机推荐
- Java入门基础知识点总结(详细篇)
Java入门基础知识点总结(详细篇)~~~~~目录 1.1 图解 1.1.1 Java基础知识点 1.1.2 Java基础语法的相关内容 1.2 关键字 1.3 标识符 1.3.1 标识符概念 1.3 ...
- rbd的删除回收站功能
前言 rbd 提供了一个回收站功能,这个是属于防呆设计,防止误操作删除rbd引起无法恢复的情况,rbd正常情况下的删除是马上会在后台回收空间的,这个也听说过有人做过误删除的操作,那么这个设计就是从操作 ...
- 医学AI论文解读 |Circulation|2018| 超声心动图的全自动检测在临床上的应用
文章来自微信公众号:机器学习炼丹术.号主炼丹兄WX:cyx645016617.文章有问题或者想交流的话欢迎- 参考目录: @ 目录 0 论文 1 概述 2 pipeline 3 技术细节 3.1 预处 ...
- mysql数据库新增、修改、删除字段和修改表名
Mysql 删除,添加或修改表字段 删除 ALTER TABLE testalter_tbl DROP i; 新增 ALTER TABLE testalter_tbl ADD i INT; 指定位置新 ...
- Flink处理函数实战之五:CoProcessFunction(双流处理)
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 精尽MyBatis源码分析 - MyBatis 的 SQL 执行过程(一)之 Executor
该系列文档是本人在学习 Mybatis 的源码过程中总结下来的,可能对读者不太友好,请结合我的源码注释(Mybatis源码分析 GitHub 地址.Mybatis-Spring 源码分析 GitHub ...
- 手把手为大家演示fat32转ntfs操作过程,一看就会
fat32和ntfs是两种我们较为常见的u盘或者硬盘格式.它们都有着各自的特点,但是相比之下,使用ntfs文件格式我们可以做出很多fat32不能实现的功能.在日常生活中,我们会面临到需要把fat32转 ...
- FL studio系列教程(八):如何打开和新建FL Studio的文件
FL Studio编曲软件中制作和编辑的音乐将存储在FL Studio的项目文件中.我们随时都可以打开这些对项目文件进行二次编辑和修改等等.操作的方法同很多软件都相同,但也有其独特的地方.下面就跟小编 ...
- open()和with open() as的区别
2020-03-18 20:37:55 open()和with open() as的区别 1 file = open("test.txt","r") 2 fo ...
- Java基础教程——模拟浏览器发送请求
JAVA访问网页 分别测试使用get和post方法访问网页,可以收到服务器的请求,并写入到html文件中. import java.io.*; import java.net.*; import ja ...