广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python中出现中文乱码如何解决
  • 565
分享到

Python中出现中文乱码如何解决

2023-06-17 16:06:16 565人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

今天就跟大家聊聊有关python中出现中文乱码如何解决,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在Python 中文乱码中提到unicode,一般指的是unicode对象,例如&

今天就跟大家聊聊有关python中出现中文乱码如何解决,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

Python 中文乱码中提到unicode,一般指的是unicode对象,例如'哈哈'的unicode对象为而str,是一个字节数组,这个字节数组表示的是对unicode对象编码(可以是utf-8、gbk、cp936、GB2312)后的存储的格式。这里它仅仅是一个字节流,没有其它的含义,如果你想使这个字节流显示的内容有意义,就必须用正确的编码格式,解码显示。

例如:

Python中出现中文乱码如何解决

对于unicode对象哈哈进行编码,编码成一个utf-8编码的str-s_utf8,s_utf8就是是一个字节数组,存放的就是'\xe5\x93\x88\xe5\x93\x88',但是这仅仅是一个字节数组,如果你想将它通过print语句输出成哈哈,那你就失望了,为什么呢?

因为print语句它的实现是将要输出的内容传送了操作系统,操作系统会根据系统的编码对输入的字节流进行编码,这就解释了为什么utf-8格式的字符串“哈哈”,输出的是“鍝堝搱”。

因为 '\xe5\x93\x88\xe5\x93\x88'用GB2312去解释,其显示的出来就是“鍝堝搱”。这里再强调一下,str记录的是字节数组,只是某种编码的存储格式,至于输出到文件或是打印出来是什么格式,完全取决于其解码的编码将它解码成什么样子。

这里再对print进行一点补充说明:当将一个unicode对象传给print时,在内部会将该unicode对象进行一次转换,转换成本地的默认编码(这仅是个人猜测) str和unicode对象的转换,通过encode和decode实现,具体使用如下:

Python中出现中文乱码如何解决

将GBK'哈哈'转换成unicode,然后再转换成UTF8 后就可以转换成功,为什么呢?在python中str和unicode在编码和解码过程中。如果将一个str直接编码成另一种编码,会先把str解码成unicode,采用的编码为默认编码,一般默认编码是 ansci i,所以在上面示例代码中***次转换的时候会出错,当设定当前默认编码为'gbk'后,就不会出错了。

在***节已经说过,Python 中文乱码中的字符串,只是一个字节数组,所以当把a情况的str输出到gbk编码的控制台时,就将显示为乱码:鍝堝搱;而当把b情况下的str输出utf-8编码的控制台时,也将显示乱码的问题,是什么也没有,也许'\xb9\xfe\xb9\xfe'用utf-8解码显示,就是空白吧至于reload(sys)是因为 Python2.5 初始化后会删除 sys.setdefaultencoding 这个方法,我们需要重新载入 。

看完上述内容,你们对Python中出现中文乱码如何解决有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网Python频道,感谢大家的支持。

--结束END--

本文标题: Python中出现中文乱码如何解决

本文链接: https://www.lsjlt.com/news/290785.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python中出现中文乱码如何解决
    今天就跟大家聊聊有关Python中出现中文乱码如何解决,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在Python 中文乱码中提到unicode,一般指的是unicode对象,例如&...
    99+
    2023-06-17
  • Python中出现文本乱码如何解决
    今天就跟大家聊聊有关Python中出现文本乱码如何解决,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在处理utf8文本格式的时候,由于这些文本是含BOM(byte order mar...
    99+
    2023-06-17
  • postgresql中出现中文乱码如何解决
    postgresql中出现中文乱码的解决方法:1.启动postgresql服务;2.登录postgresql数据库;3.使用数据库;4.使用show命令查看数据库编码;5.使用set命令将数据库编码修改为GBK;具体步骤如下:首先,在命令行...
    99+
    2022-10-22
  • Samba中出现中文乱码如何解决
    今天就跟大家聊聊有关Samba中出现中文乱码如何解决,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Samba显示中文乱码,添加下面的内容到smb.conf中client code p...
    99+
    2023-06-07
  • SpringMVC中出现中文乱码如何解决
    SpringMVC中出现中文乱码如何解决?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。表单<%@ page contentType="t...
    99+
    2023-06-14
  • Docker容器中出现中文乱码如何解决
    本篇文章给大家分享的是有关Docker容器中出现中文乱码如何解决,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。前台上传文件到服务器后,服务器返回给前台的文件列表中出现中文乱码,...
    99+
    2023-06-07
  • CentOS 6.4中出现Vsftpd中文乱码如何解决
    这篇文章主要介绍“CentOS 6.4中出现Vsftpd中文乱码如何解决”,在日常操作中,相信很多人在CentOS 6.4中出现Vsftpd中文乱码如何解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Cen...
    99+
    2023-06-10
  • Python连接数据库出现中文乱码如何解决
    Python连接数据库出现中文乱码如何解决,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。如何使用python exe?假设有一Python script 名为"hel...
    99+
    2023-06-17
  • python读取文件出现乱码如何解决
    读取文件出现乱码的原因可能是文件的编码格式与代码中指定的编码格式不一致。解决办法如下: 使用正确的编码格式打开文件。可以使用op...
    99+
    2023-10-20
    python
  • tomcat输出中文乱码如何解决
    要解决Tomcat输出中文乱码的问题,可以参考以下几个步骤:1. 在Tomcat的配置文件server.xml中,找到Connect...
    99+
    2023-09-23
    tomcat
  • node.js输出中文乱码如何解决
    这篇文章主要介绍“node.js输出中文乱码如何解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“node.js输出中文乱码如何解决”文章能帮助大家解决问题。node.js输出中文乱码的解决办法:1...
    99+
    2023-07-04
  • SpringMVC中出现中文乱码怎么解决
    这篇文章将为大家详细讲解有关SpringMVC中出现中文乱码怎么解决,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。问题使用SpringMVC在返回一个字符串时发生了中文乱码问题。produc...
    99+
    2023-06-20
  • MySQL中文出现乱码怎么解决
    本篇内容主要讲解“MySQL中文出现乱码怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL中文出现乱码怎么解决”吧! MYSQL经典问题...
    99+
    2022-10-18
  • ajax出现中文乱码怎么解决
    这篇文章主要讲解了“ajax出现中文乱码怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ajax出现中文乱码怎么解决”吧! ...
    99+
    2022-10-19
  • Android中HTTP请求中文出现乱码如何解决
    Android中HTTP请求中文出现乱码如何解决,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Android中HTTP请求中文乱码解决办法 编码参数List<N...
    99+
    2023-05-30
    android http
  • Python中文乱码解决
    python 添加中文注释时出现运行失败。需要在顶部设置编码。# coding=UTF-8 ''' Created on 2013-8-28 @author: xmyj-0210 ''' n...
    99+
    2023-01-31
    乱码 中文 Python
  • 在php中使用mssql出现中文乱码如何解决
    这篇文章给大家介绍在php中使用mssql出现中文乱码如何解决,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。php显示mssql中文乱码的解决办法:1、根据页面情况来设置utf-8编码;2、直接在程序中通过iconv函...
    99+
    2023-06-14
  • Android Studio控制台中出现中文乱码如何解决
    本篇文章给大家分享的是有关Android Studio控制台中出现中文乱码如何解决,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。乱码显示结果如下:解决办法很简单,设置字体为Ya...
    99+
    2023-05-31
    android studio 台中
  • html 中出现form乱码如何解决
    这篇文章给大家介绍html 中出现form乱码如何解决,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。html中form表单提交中文乱码问题基本解决办法办法很简单,只需在form表单中加入下面的话:<html>...
    99+
    2023-06-15
  • navicat出现中文乱码的解决方法
    小编给大家分享一下navicat出现中文乱码的解决方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!navicat是强大的可视化...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作