中文目录文件显示问题

一、如果想让中文目录下的文件正常显示,可使用下面的方法:

#-*-coding:utf-8-*-

import os

filenames = os.listdir('E:\迅雷下载'.decode('utf8').encode('gbk'))      #返回一个list,只能通过分片返回结果值,decode进行解码,encode进行编码


for i in filenames:
    print i.decode('gbk')                          #再次解码

 

------------------------------------------------------------------------------------------------

显示结果:

77739C32FBE963CFA029D86868B282DF81015982.torrent
Wolf.Warriors.2015.1080P.WEB-DL.MPEG2.AC-3.mkv
[阳光电影www.ygdy8.com].狼图腾.HD.576p.国语中字.rmvb

 

 

二、UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3: ordinal not in range(128)

  今天遇到一个错误: UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3 搜索网上找到一个解决办法(转载自     http://blog.sina.com.cn/s/blog_727b603701019pyl.html) 异常: 'ascii' codec can't encode characters 字符集的问题,在文件前加两句话:

reload(sys)

sys.setdefaultencoding( "utf-8" ) 完美解决,ok 另外 当字符串里有 \n、\t、\r时,json.loads()失效,异常,要去掉

posted @ 2015-05-20 18:27  沉默的云  阅读(285)  评论(0编辑  收藏  举报