首先,要明确encode()和decode()的差别

encode()的作用是将Unicode编码的字符串转换为其它编码格式。

比如:st1.encode("utf-8")  这句话的作用是将Unicode编码的st1编码为utf-8编码的字符串

decode()的作用是把其它编码格式的字符串转换成Unicode编码的字符串。

比如:st2.decode("utf-8") 这句话的作用是将utf-8编码的字符串st2解码为Unicode编码的字符串

第二,除Unicode编码的字符串以外,不论什么一种编码的字符串要想转换为其它编码格式,必须先解码后编码

非Unicode编码--> Unicode编码-->非Unicode编码

比如。utf-8编码的字符串st想要转换为gbk编码的字符串。必须经过下面步骤:

st=st.decode("utf-8")#解码为Unicode编码

st=st.encode("gbk") #从Unicode编码编码为gbk编码

第三。我们常常使用的utf-8编码还分为有BOM的和无BOM的。

能够參考这篇文章:

http://blog.csdn.net/lipeijs3/article/details/5062243

第四:关于json文件的中文编码。

用Python读取Json文件时经经常使用到json.load()函数,该函数对json文件的格式是有要求的

1)json文件是utf-8 without BOM编码的,那么能够直接用json.load(filename)函数读取json文件的内容

2)json文件是utf-8 with BOM编码的,不能用json.load()函数读取。json.load()不能正确识别

3)json文件时其它编码的,比方gbk, 要把json文件的编码格式作为一个參数传给json.load():

eg. json.load(filename,"gbk")

第五,怎么查看而且设置自己文件的编码呢?

介绍一个个人比較喜欢的工具"Nodtepad++",随便一个软件管家里就与一键安装。

用这个工具你能够方便的查看自己的文件的当前编码。并能够轻松转换成随意其它编码格式

转载于:https://www.cnblogs.com/blfbuaa/p/7253605.html

Python中文编码过程中遇到的一些问题相关推荐

  1. python之禅 中文_《Python之禅》中对于Python编程过程中的一些建议

    <Python之禅>中对于Python编程过程中的一些建议 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  <Python之禅>中对于Pyt ...

  2. Python爬虫过程中验证码识别的三种解决方案

    在Python爬虫过程中,有些网站需要验证码通过后方可进入网页,目的很简单,就是区分是人阅读访问还是机器爬虫.验证码问题看似简单,想做到准确率很高,也是一件不容易的事情.为了更好学习爬虫,后续推文中将 ...

  3. python处在哪个阶段_如何在学Python的过程中更好地成长技术

    Python是一门编程语言,所以重点在于如何用好这门语言,只有能够做好项目,才能证明自己逐步掌握好了这门语言.在学习阶段,最终的目标是要尝试着自己用Python搭建一个网站,也算是对自己学习成果的一种 ...

  4. 在学习python的过程中,遇到的最大的困难是什么?

    本人文科生,回顾自己近 2 年的Python 自学经历,有一些学习心得和避坑经验分享给大家,让大家在学习 Python 的过程中少走一些弯路!减少遇到不必要的学习困难! 首先,最开始最大的困难应该就是 ...

  5. python安装过程中关机_1234567,Python帮女神自动来关机

    在日常使用电脑的过程中,很多小伙伴都有让电脑定时自动关机的需求.通常而言,大家一般都会有几种选择. 假如哪一天,你女神问你,有没有什么定时关机的好方法,你怎么告诉她? 文章首发州的先生博客:使用Pyt ...

  6. python运行过程中会被编译成二进制_Python代码在运行过程中,会被编译成二进制代码。_学小易找答案...

    [单选题]1. ( )是违反设备安全操作规程的错误做法. [单选题]Thank you for your letter ___________ 24th March. (1.0分) [单选题]超外差接 ...

  7. python上一行的代码打错了怎么办_写Python代码过程中碰到各种错误异常要怎么样去处理?...

    错误异常即便Python程序的语法是正确的,在程序运行的过程中,也可能发生错误.运行期检测到的错误被称为异常. 如果发生了错误,可以事先约定返回一个错误代码,这样,就可以知道是否有错,以及出错的原因. ...

  8. python爬虫过程中遇到的问题_python爬虫过程中出现的问题汇总-Go语言中文社区

    1.出现 UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 7: ordinal not in range(12 ...

  9. python安装过程中出现文件或目录损坏且无法读取_解决安装python库时windows error5 报错的问题...

    python安装库时,有时候会报错windows error 5,可以尝试关闭所有使用python的编辑器.文件等,然后重新pip安装,如果还是不行,可以将报错最下层文件删除即可(如果不放心可以将该文 ...

最新文章

  1. CSS jQuery制作漂亮的文字模糊效果
  2. 37 函数的定义和调用
  3. 【方法整理】Oracle 获取trace跟踪文件名的几种常用方式
  4. Win64 驱动内核编程-24.64位驱动里内嵌汇编
  5. ABAP Pattern usage - define own custom user exit
  6. P3768 简单的数学题(杜教筛)
  7. 5g理论速度_快看看 5G 的实际网速,失望还是兴奋?
  8. JavaScript-声明变量的关键字
  9. linux图标大全——这些你认识多少?
  10. ThinkPHP添加谷歌验证码验证
  11. Kali Linux 软件源与更新源和更新命令
  12. html 讲课ppt,使用HTML制作网页讲课.ppt
  13. 论文笔记-LIO-SAM: Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping
  14. 软件工程概论期末复习笔记
  15. 装饰器python与python装饰器
  16. Windows文件夹开启大小写敏感
  17. 剑指 Offer 51-60
  18. [mysql] 变量、处理程序和流程控制
  19. HDLBITS笔记29:移位寄存器(包括4位移位寄存器,创建100位左/右旋转器,算术偏移,线性反馈移位寄存器等)
  20. #谷歌地图# 谷歌地图报错

热门文章

  1. 应用计算机金融 pdf,金融保险计算机技术及其在金融业中的应用.pdf
  2. AT1 one-dimensional objects
  3. 3.6 - Maya Commands: setAttr
  4. linux 无法启动matlab,在具有 jre 1.7.0 _05的科学linux上,无法启动 MATLAB gui ( 指南)_matlab_开发99编程知识库...
  5. java与c基本数据类型比较,C++与Java基本数据类型比较
  6. sqlserver 查询某个时间段执行sql语句_为什么 SQL 查询不是先执行SELECT语句?
  7. wine运行软件检测不到u盘_PE吧“U盘助理”——启动U盘制作图文教程-
  8. c语言中文本作图,C语言绘图问题
  9. vba替换字符串中的字符_R语言 | 字符串替换
  10. java基础知识点整理一