导航:首页 > 编程语言 > python无法识别中文

python无法识别中文

发布时间:2022-07-17 04:14:42

⑴ 为什么使用python编程不能显示中文

可以的呀,记得在py文件的头上加上#coding=utf-8
使用中文字符串的时候字符串用unicode对象,即u’中文字符串‘

⑵ python无法匹配中文,源文件为gb2312

re.match只能匹配“4月”出现在字符串头部的情况,也就是每行头部的情况。
4月出现在中间是匹配不到的。

⑶ 为什么python脚本中使用中文会报错 解决方法已知.. 只想知道详细的原因

开头添上针对不同平台的中文编码。
一般linux下用
# -*- coding: utf-8 -*-
windows下gbk
# -*- coding: gbk -*-

⑷ 在pycharm学python 怎么识别汉子

PyCharm配置
PyCharm默认Python脚本编码是UTF-8,我们将其设置为GBK:
进入file>setting,在输入框搜索encoding

保存设置并重启PyCharm,这样默认编码就生效了,可在右下角查看

END
Python 2
笔者使用的Python版本是2.7.11。Python 2 的中文支持需要做两件事:
①在代码前端增加代码:# -*-coding:gbk-*-
②在中文前加u前缀,如:u"你好"

运行代码,检查是否已成功支持中文字符

END
Python 3
笔者使用的Python版本是3.5.1。Python 3 的中文支持只需要做一件事即可:
①在代码前端增加代码:# -*-coding:gbk-*-

⑸ python 无法显示汉字

实际上,这段代码所出现的问题和cPickle模块没什么关系。而是Python 2显示中文“乱码”的问题。
Python 2中,str是8-bit string sequence(有点像Python 3中的bytes)。而Python 3中str就相当于Python 2中的unicode。
所以,

>>>a='上海'
>>>repr(a)
"'\xc9\xcf\xba\xa3'"
>>>a#a中存储的8字节转义字符序列
'xc9xcfxbaxa3'
>>>printa#输出a,在此过程中,会对a进行解码操作,然后输出
上海

上例中,可以看到:
a = '上海'
a中实际存储的是:
'xc9xcfxbaxa3'
这样一个字节序列。它实际上是对'上海'这个unicode字符串按gbk/cp936/gb18030编码得到的(和简体中文Windows操作系统的默认编码有关)。
给你推荐一篇博客:
http://blog.csdn.net/kiki113/article/details/4062063

下面是我写的示例:

#_*_coding:gbk_*_

#TestwithPython2.7,Python3.3onWindowsXP

try:
importcPickleasp
except:
importpickleasp

address_file='address.txt'

classHuman(object):
def__init__(self,address):
self.address=address

deftxl(self):
af={'address':self.address}
print(af)
print(af['address'])
f=open(address_file,'wb')#Inpython3,usebinarymode.
#Inpython2.7,defaultprotocolis0.
#However,itis3inpython3.3.
p.mp(af,f,0)
f.close()

address='上海'
print(address)

dq=Human(address)
dq.txl()

af=open(address_file,'rb')#
print(p.load(af))
af.close()

"""
Output
----------------------------------------
Python2.7.6:
1.#-*-coding:utf-8-*-
涓婃捣
{'address':'xe4xb8x8axe6xb5xb7'}
涓婃捣
{'address':'xe4xb8x8axe6xb5xb7'}
2.#-*-coding:gbk-*-or#_*_coding:cp936_*_
上海
{'address':'xc9xcfxbaxa3'}
上海
{'address':'xc9xcfxbaxa3'}

Python3.3.3:
上海
{'address':'上海'}
上海
{'address':'上海'}
------------------------------------------
InPython3.3.3:
>>>'上海'.encode('utf-8')
b'xe4xb8x8axe6xb5xb7'
>>>_.decode('cp936')
'涓婃捣'
"""

从这个示例中可以看出,虽然把字典整个print出来不能正常解析address中的内容:

>>>addr={'addr':'上海'}
>>>addr
{'addr':'xc9xcfxbaxa3'}
>>>printaddr
{'addr':'xc9xcfxbaxa3'}

但是单独打印:

>>>addr['addr']
'xc9xcfxbaxa3'
>>>printaddr['addr']#print输出之前隐含了编码解码操作,但为何打印整个字典时输出不正常尚待研究
上海

一切OK。
所以,如果真的用Python 2的话,对于该问题可以考虑手工负责编码、解码操作(如果使用print单独打印地址信息,就不用这么麻烦了,因为这些事它帮你做了)。用Python3,就没这么多问题了。


最后补充一点,pickle模块只是提供了一种序列化Python对象的方法。所以序列化生成的文件中和想象的不一样也不足为奇。正如自由de王国所说的,只要序列化后还能够反序列化成功就行了。实际上,当protocol不是0的情况下,序列化生成的文件是二进制格式的,根本没法用记事本直接看。

⑹ Python 保存对话框无法识别中文

参考这几点

  1. 代码前面加上 #coding:utf-8

  2. 代码中设计到中文的时候 使用 u开头定义为unicode字符串,如 s=u'网络'

  3. 使用encode,decode方法进行编码转换

    s.encode('utf-8')unicode转换为utf-8编码str

    s.decode('gbk') gbk编码str转换为unicode

⑺ 请问,python打开中文字符文件,但显示不出中文怎么办

一般是编码格式的问题,python内部默认的编码格式是utf-8,常见的文本编码格式是utf-8,gbk。编码格式不不一致就会乱码。可以在代码前面申明编码格式。

⑻ python2中为什么交互界面可以识别中文,而文件无法识别

Python中的字符串的大概分为为str和Unicode两种形式,其中str常用的编码类型为utf-8,gb2312,gbk等等,Python使用Unicode作为编码的基础类型。str记录的是字节数组,只是某种编码的存储格式,终于输出到文件或是打印出来是什么格式,完全取决于其解码的编码将他解码成什么样子;Unicode是一种类似于符号集的抽象编码,它只规定了符号的二进制代码,却没有规定这个二进制代码该如何存储,也就是它只是一种内部表示,不能直接保存,所以存储时需要规定一种存储形式,比如utf-8等。
Python中有编码转换的函数有:
decode(char_set) 实现char_set解码成Unicodeencode(char_set) 实现Unicode编码成char_set

查看Python文档会发现:
open(filename, 'w')这个方法中,filename这个参数必须是Unicode编码的参数。
我之前加上#-*-coding:utf-8-*-将编码设置为utf-8,当调用这个方法往里传参数时,需要将这个变量filename解码成Unicode。
比如filename='中文.txt',使用open()时,这样写open(filename.decode('utf-8'), 'w'),这样创建的中文文件名就没有乱码问题了。

⑼ python3不能使用中文怎么办

Python3对中文的支持非常全面。在Python中,源文件默认使用的是UTF-8编码,这样一来,不单可方便地在源代码的字符串中使用中
文,而且变量名也可以使用中文。
2、在Python3中不需要来回的编码和解码,直接使用print函数即可输出变量的内容
3、在Python3中,字符串对象没有decode和encode方法。
推荐学习《python教程》。

⑽ Python中加了# -*- coding: utf-8 -*-,还是不能显示中文

应该是windows系统识别编码的问题。
将脚本文件的编码 设置成 ANSI看看。

看你的显示应该是learn python for hard way这本书呗,这书上都是py2的,你下一个py3版本,这种问题一般就不会出现了。

阅读全文

与python无法识别中文相关的资料

热点内容
小红书app如何保存视频 浏览:165
如何解开系统加密文件 浏览:794
linux切换root命令 浏览:280
c编译之后界面一闪而过怎么办 浏览:877
怎么看ic卡是否加密 浏览:722
lgplc编程讲座 浏览:806
cnc手动编程铣圆 浏览:720
cad中几种命令的意思 浏览:324
oraclelinux安装目录 浏览:133
安卓系统可以安装编译器吗 浏览:570
javajson实体类 浏览:690
板加密钢筋是否取代原钢筋 浏览:66
学习编程的思路 浏览:230
app易语言post怎么学 浏览:965
地梁的箍筋加密区位置 浏览:302
二分法排序程序及编译结果 浏览:679
日语命令形和禁止型 浏览:285
安装软件用管理员解压 浏览:505
编译原理代码块 浏览:400
小孩可以用压缩面膜吗 浏览:14