当前位置:首页 » 编程语言 » python中文路径处理

python中文路径处理

发布时间: 2022-04-29 13:46:02

㈠ 您好 python用open打开文件 其中路径有中文应该怎么解决 自己搞不太明白 谢谢大神了:)

脚本开头加上下面这句:

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

这句用于定义Python的默认编码格式。

若代码或注释中含中文,python会使用unicode编码格式,这样会报错。

所以,python编程时最好习惯性地加上这句编码格式的声明。

㈡ 关于python处理文件路径的问题

tim@crunchbangtime:~/Documents$ls*.txt
tasks.txt中文文件.txt
tim@crunchbangtime:~/Documents$python
Python2.7.3(default,Mar142014,11:57:14)
[GCC4.7.2]onlinux2
Type"help","right","credits"or"license"formoreinformation.
>>>importos.path
>>>os.path.exists(r'/home/tim/Documents/中文文件.txt')
True
>>>

㈢ 如何用Python 打开包含中文的路径(是打开文件夹,不是文件)

start_directory="D:\\我的项目文件\\8482\\".dencode('utf8').encode('cp936') # 转换一下编码应该就OK了

㈣ 如何解决Python中文问题

python的中文问题一直是困扰新手的头疼问题,Python的发行版至今尚未包括任何中文支持模块。当然,几乎可以确定的是,在将来的版本中,python会彻底解决此问题,不用我们这么麻烦了。 笔者使用的是2.5版本。Python的版本可以通过调用sys模块的sys.version查看。在几个月的学习中,主要遇到以下问题:

1. print打印中文的问题:

在编辑器中输入一段测试代码:

s=’测试’

print s
运行结果如下:

Non-ASCII character '\xb2' in file c:\Documents and Settings\Administrator\桌面\2.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details: 2.py, line 1, pos 0

原因是如果文件里有非ASCII字符,需要指定编码声明。把2.py文件的编码重新改为utf-8,并加上编码声明:

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

s=’测试’

print s
运行后可以正确打印中文。

2.中文路径的问题。

在D盘下保存一个名字为‘中文.txt‘的文件。运行如下测试代码:

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

f=open('D:\\中文.txt', 'r')

print f.read()
运行结果如下:

IOError: [Errno 2] No such file or directory: 'D:\\\xe4\xb8\xad\xe6\x96\x87.txt'

字符串有很多的编码,不同的系统和平台有各自的编码 ,为了实现系统或平台之间的信息交互可能需要编码转换。这里只需要先使用UNICODE编码一下,这样再读取中文路径就不会有问题了:

复制代码

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

path='D:\\中文.txt'
spath=unicode(path , "utf8")
f=open(spath,'r')
print f.read()
复制代码
然后就可以正确显示文件内容

总结:

所有的中文显示问题都可以归结为编码问题,遇到其他类似的问题,那只能仔细看文档,靠你的经验,靠你多做测试。而且根据python所报出来的错误一般也可以判断出来。那么当发现需要编码转换时,剩下的就是如何正确进行码制转换。

为了正确处理多语言文本,Python在2.0版后引入了Unicode字符串。从那时起,Python语言中的字符串就分为两种:一种是2.0版之前就已经使用很久的传统Python字符串,一种则是新的Unicode字符串。在Python语言中,一般的解决办法是使用unicode()内建函数对一个传统Python字符串进行“解码”,得到一个Unicode字符串,然后又通过Unicode字符串的encode()方法对这个Unicode字符串进行“编码”,将其“编码”成为传统Python字符串。

㈤ python中读取文件(路径含中文)出现乱码问题。

没有Python3 。

你试一下

path='Py....'#下面添加一行
path=path.decode('gbk')

㈥ python 中文路径名问题

没装windows,不过windows用cp936不是utf8

㈦ 读取python遍历中文目录得到的文件路径报错

这是因为路径里面包含中文的原因:

  1. linux的系统字符编码默认为utf-8,而要搜索的文件路径nameFile是Unicode,需要进行解码成unicode,因此作如下修改:

  2. fout=codecs.open(nameFile.encode("utf-8"),"w","utf-8"
  3. 当然,另外一种方法就是修改为英文的路径;

  4. 关于编码和解码的知识,请参考:http://www.cnblogs.com/qiernonstop/p/3634462.html

热点内容
没有被调用的函数会参与编译吗 发布:2025-05-15 13:42:51 浏览:260
在计算机中ftp的中文 发布:2025-05-15 13:41:07 浏览:1000
国网校招要网签密码和账号干什么 发布:2025-05-15 13:40:25 浏览:179
java分 发布:2025-05-15 13:34:36 浏览:846
如何下载卡巴斯基安卓版 发布:2025-05-15 13:34:36 浏览:480
排序函数c语言 发布:2025-05-15 13:06:28 浏览:6
韩服lol挂机脚本 发布:2025-05-15 12:42:56 浏览:462
监控存储服务器如何调试 发布:2025-05-15 12:36:30 浏览:219
一万级净化车间有哪些配置 发布:2025-05-15 12:16:41 浏览:98
javazip解压加密 发布:2025-05-15 12:15:02 浏览:943