iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python 中有关中文编码解码小记
  • 767
分享到

Python 中有关中文编码解码小记

中有小记中文 2023-01-31 02:01:20 767人浏览 独家记忆

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

摘要

简单记录几点,以备后忘:1、python 中的默认编码方式为asciiIn [1]: import sys In [2]: sys.getdefaultencoding() Out[2]: 'ascii'2、设置Python 中的默认编码方

简单记录几点,以备后忘:


1、python 中的默认编码方式为ascii

In [1]: import sys
In [2]: sys.getdefaultencoding()
Out[2]: 'ascii'


2、设置Python 中的默认编码方式

In [1]: import sys
In [2]: reload(sys)
<module 'sys' (built-in)>
In [3]: sys.setdefaultencoding('utf-8')
In [4]: sys.getdefaultencoding()
'utf-8'


3、python 头顶部设置的编码格式 # _*_ coding: utf-8 _*_  不会影响默认python 的默认编码格式

#! /usr/bin/env python
# _*_ coding: utf-8 _*_

import sys
print sys.getdefaultencoding()

执行后的结果为 ascii 编码格式


那么python 头顶部设置的编码格式有什么作用呢?

#1、如果代码中有中文注释,就需要此声明
#2、比较高级的编辑器(比如我的eMacs),会根据头部声明,将此作为代码文件的格式
#3、程序会通过头部声明,解码初始化 u"人生苦短",这样的unicode对象,(所以头部声明和代码的存储格式要一致) 

以上观点来自于 Http://python.jobbole.com/81244/ 此文


那做个测试吧:

#! /usr/bin/env python
# _*_ coding: utf-8 _*_

import sys
print sys.getdefaultencoding()

#reload(sys)
#sys.setdefaultencoding('utf-8')

# 会被编码为unicode
s1 = u"这是一个测试1"

# 会被编码为ascii
s2 = "这是一个测试2"

s1.encode('gbk')
s2.encode('gbk')
print s1
print s2

以上测试结果:

ascii
Traceback (most recent call last):
  File "testunicoding.py", line 21, in <module>
    s2.encode('gbk')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position 0: ordinal not in range(128)

主要s2这个字符串的默认编码格式为ascii ,无法先decode 成unicode 。出了问题

将默认编码方式更改为utf-8后

#! /usr/bin/env python
# _*_ coding: utf-8 _*_

import sys
print sys.getdefaultencoding()

reload(sys)
sys.setdefaultencoding('utf-8')

print sys.getdefaultencoding()

# 会被编码为unicode
s1 = u"这是一个测试1"

# 会被编码为ascii
s2 = "这是一个测试2"

s1.encode('gbk')
s2.encode('gbk')
print s1
print s2


执行结果:

ascii
utf-8
这是一个测试1
这是一个测试2


--结束END--

本文标题: Python 中有关中文编码解码小记

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

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

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

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

下载Word文档
猜你喜欢
  • Python 中有关中文编码解码小记
    简单记录几点,以备后忘:1、python 中的默认编码方式为asciiIn [1]: import sys In [2]: sys.getdefaultencoding() Out[2]: 'ascii'2、设置python 中的默认编码方...
    99+
    2023-01-31
    中有 小记 中文
  • Python中,关于读取文件编码解码的问
    UnicodeDecodeError: 'gbk' codec can't decode byte 0xb1 in position 94: illegal multibyte sequence 有时候用o...
    99+
    2023-01-31
    文件 Python
  • python中文编码乱码问题的解决
    目录前言:一、什么是字符编码。1.ASCII2.GB23123.Unicode4.UTF-8二、Python2中的字符编码三、decode()与encode()方法四、一个字符编码的...
    99+
    2022-11-12
  • 详解python中文编码问题
    目录 1.        在Python中使用中文1.1     Windows控制台1.2     Wi...
    99+
    2022-06-02
    python中文编码 python 编码
  • SQLite3中文编码 Python
    读取十万多条文本写入SQLite类型数据库,由于文本中存在中文字符,插入到数据库没错,取出时一直是UnicodeDecodeError,导致折腾了一天。  最后的解决方法: Python连接数据时进行如下设置: db=sqlite3....
    99+
    2023-01-31
    中文 Python
  • python如何解决中文编码乱码问题
    小编给大家分享一下python如何解决中文编码乱码问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、什么是字符编码。要彻底解决字符编码的问题就不能不去了解到底...
    99+
    2023-06-25
  • Python有关UnicodeUTF-8GBK编码问题详解
    目录1.统一码(Unicode)2.UTF-8编码总结1.统一码(Unicode) Unicode也叫万国码、单一码,是计算机科学领域里的一项业界标准,包括字符集、编码方案等。对于世...
    99+
    2022-11-11
  • Python中文编码问题
        近日用Python写一个小程序,从数据库(MS SQL)中读取数据,对数据进行组织后发送到邮箱,在数据内容有中文的地方始终报错,汉字使用UTF-8进行编码倒是不报错了,但发送到邮箱的内容,从数据库中读取出来的汉字却成乱码了,经多方查...
    99+
    2023-01-31
    中文 Python
  • 关于Python中的编码规范
    目录编码规范1、分号2、命名3、行长度4、缩进5、空行6、空格7、类8、块注释和行注释9、字符串10、导包【总结】1.命名2.空白3.语句4.注释编码规范 Python 编码规范重要...
    99+
    2023-05-15
    Python规范 Python编码规范
  • 简单解决Python文件中文编码问题
    读写中文 需要读取utf-8编码的中文文件,先利用sublime text软件将它改成无DOM的编码,然后用以下代码: with codecs.open(note_path, 'r+','utf-8')...
    99+
    2022-06-04
    中文 简单 文件
  • python中文编码&json中文输出问
    python2.x版本的字符编码有时让人很头疼,遇到问题,网上方法可以解决错误,但对原理还是一知半解,本文主要介绍 python 中字符串处理的原理,附带解决 json 文件输出时,显示中文而非 unicode 问题。首先简要介绍字符串编...
    99+
    2023-01-30
    中文 python json
  • python中文转换url编码
            今天要处理百度贴吧的东西。想要做一个关键词的list,每次需要时,直接添加 到list里面就可以了。但是添加到list里面是中文的情况(比如‘丽江’),url的地址编码却是'%E4%B8%BD%E6%B1%9F',因此需 要...
    99+
    2023-01-31
    中文 python url
  • python 中文url编码处理
    可以直接处理中英混排的urlfrom urllib.parse import quote (python3)from urllib import quote (python2) url = 'http://www.baidu.co...
    99+
    2023-01-31
    中文 python url
  • Python中的字节编码和解码技巧有哪些?
    Python中的字节编码和解码技巧有哪些?字节编码和解码是我们在处理文本数据时常常遇到的问题。在Python中,有许多内置的函数和模块可以帮助我们进行字节编码和解码操作。本文将介绍几种常见的字节编码和解码技巧,并给出相应的代码示例。使用en...
    99+
    2023-10-22
    技巧 解码 字节编码
  • Python中文乱码解决
    python 添加中文注释时出现运行失败。需要在顶部设置编码。# coding=UTF-8 ''' Created on 2013-8-28 @author: xmyj-0210 ''' n...
    99+
    2023-01-31
    乱码 中文 Python
  • 关于Java中properties文件编码问题
    目录Java properties文件编码问题问题一:Transparent native-to-ascii conversion是什么Java中属性文件(*.properties)...
    99+
    2022-11-12
  • python中文转换url编码(转)
    今天修改一个天气预报的东西,但输入城市不能得到天气预报,感觉是编码不对,因为你输入一个城市(比如‘杭州’),url的地址编码却是'%E4%B8%BD%E6%B1%9F',因此需 要做一个转换。这里我们就用到了模块urllib。>>...
    99+
    2023-01-31
    中文 python url
  • SQLite3中文编码 Python的实现
    读取十万多条文本写入SQLite类型数据库,由于文本中存在中文字符,插入到数据库没错,取出时一直是UnicodeDecodeError,导致折腾了一天。 最后的解决方法: Python连接数据时进行如下设置...
    99+
    2022-06-04
    中文 Python
  • Python 3.x中的编码和解码问题
    最近在极客学院学习爬虫,老师用的是2.x版本,而我电脑里的版本是3.x,于是在网页上查找在输出中文时如何正确输出。 我原以为2.x 3.x在很多语法上没什么区别,在解码decode上应该也差不多,没想到竟然发现,很多博客提到2....
    99+
    2023-01-31
    Python
  • python shell 中文乱码解决
    python的默认文件编码是ASCll,当文件包含中文的时候,如果用python shell测试可能会出现以下错误: Non-ASCII character '\xe4' in file D:\Python27\test1.py on l...
    99+
    2023-01-31
    乱码 中文 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作