Python处理中文路径

 

最近在windows下写python,需要打印中文字符,使用下述方法处理:

import sys
reload(sys)
sys.setdefaultencoding('utf-8') #允许打印unicode字符

 

但是如果打开或者写入带有中文的文件或路径时,依然会报错,中文显示为乱码,这时用下述方法处理:

转自:http://hi.baidu.com/susdisk/item/0543f8d94e57e3ffca0c390d

 

其实只是编码问题。一般在UNIX环境下,在程序开头使用:

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

标识使用UTF8编码,就可以避免很多问题。但如果你写了一个CGI,在程序中返回一个文件路径并打开时还是会有问题,正如你在PYTHON SHELL中输入一个中文字符后直接输出(不用PRINT)也会有编码问题。

对于中文路径的读入可以这样:(假设filepath是你要读出的含有中文的文件路径):

filepath=unicode(filepath,'utf8')

fobj=open(filepath,"r")

即先使用UNICODE编码一下,这样再读取中文路径就不会有问题了。

你可能感兴趣的:(python,python,中文,文件路径,乱码,unicode)