A. python 读取文本里有多种编码

读取ANSI编码文件
建立一个文件test.txt,文件格式用ANSI,内容为:
abc中文
用Python来读取
# coding=gbk
print open("Test.txt").read()
结果:abc中文
读取utf-8编码文件(无BOM)
把文件格式改成UTF-8:
结果:abc涓 枃
显然,这里需要解码:
# -*- coding: utf-8 -*-
import codecs
print open("Test.txt").read().decode("utf-8")
结果:abc中文
读取utf-8编码文件(有BOM)
某些软件在保存一个以UTF-8编码的文件时,默认会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。在有些软件可以控制是否插入BOM。如果在有BOM的情况下,在读取时需要自己去掉这些字符,python中的codecs mole定义了这个常量:

B. python怎么查看字符串编码

安装chardet模块
chardet文件夹放在/usr/lib/python2.4/site-packages目录下版

[root@sha-sso-data01 chardet]# python
Python 2.4.3 (#1, Sep 21 2011, 19:55:41)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-51)] on linux2
Type "help", "right", "credits" or "license" for more information.
>>> import chardet
>>> chardet.detect("我权")
{'confidence': 0.505, 'encoding': 'utf-8'}
>>>

C. python中如何获取中文的utf8编码

  • 首先要表示一个汉字,至少需要2个字节码

  • 如果需要以utf解码你的内汉字,可以用如下办法容

>>>unicode('人','utf-16')
u'ucbc8'
  • 如果需要以gbk解码你的汉字,可以用如下办法

>>>unicode('人','gbk')
u'u4eba

D. python 如何获取本地电脑某一文件夹下所有文件的编码格式encoding,并将结果导出

一个文件的编码格式并不是程序能检测出来的
而是我们预先知道存文件的时候用了什么编码,读文件的时候就要用相应的编码

E. python列表读取编码的问题

这个复结果不是什么编码,而是 list 的表示制形式


1. 对于一个不是 str 的 obj, print obj 等价于 print str(obj)

2. str(obj) 的等价形式是 obj.__str__()

3. 对于 list 类型, __str__ 的定义是 '[%s]' % ', '.join(repr(i) for i in self)

(每个元素的 repr 值拼接起来)

4. 对于 unicode 对象, repr 形式为

printrepr(u'中文')
>>u'u4e26587'

所以

array=[u'中文',u'中文',u'中文']

printarray
>>[u'u4e26587',u'u4e26587',u'u4e26587']

print'[%s]'%','.join(repr(i)foriinarray)
>>[u'u4e26587',u'u4e26587',u'u4e26587']


printu'中文'
>>中文
printstr(u'中文')
>>中文

array=[u'中文',u'中文',u'中文']
print'[%s]'%','.join(array)
>>[中文,中文,中文]

F. python怎样查看当前字符串的编码格式

查看当前字符抄串的编码格式的代码为:Type "now", "right", "credits" or "license" for more information.

G. python里如何让判断输入的编码是什么比如,如果输入中文则判断为GB2312

中文不一定是gb2312也可能是utf8或者其他编码。
如果要判断字符串的编码类型目前而言并没有很好的办法,有一个chardet 的包可以用来判断字符串编码你可以找找。

H. 怎么知道Python Shell的编码是什么

解决方法:使用sys.stdout.encoding;sys.stdin.encoding

示例:

impotsys
sys.stdout.encoding

结果专:属

I. python用什么找到字符编码

安装来chardet模块自
chardet文件夹放在/usr/lib/python2.4/site-packages目录下

[root@sha-sso-data01 chardet]# python
Python 2.4.3 (#1, Sep 21 2011, 19:55:41)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-51)] on linux2
Type "help", "right", "credits" or "license" for more information.
>>> import chardet
>>> chardet.detect("我")
{'confidence': 0.505, 'encoding': 'utf-8'}
>>>