52matlab技术网站,matlab教程,matlab安装教程,matlab下载

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 7336|回复: 0
打印 上一主题 下一主题

windows下Python打开包含中文路径名文件

[复制链接]

125

主题

209

帖子

3072

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3072
跳转到指定楼层
楼主
发表于 2017-4-1 09:27:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    在windows使用gbx(gb2312,gbk,gb18030我也不知道是哪个)对文件名及文件路径进行编码保存。打开文件的函数中使用诸如open(filename.encode('gbk'))可以很好的解决。另外路径分隔符要写Unix风格的'/',不要写'\'.
#coding:utf8

if __name__  == '__main__':
    srcfile = r"D:/测试路径/测试文件.txt"
    f = open(srcfile.decode('utf8').encode('gbk'))
    for text in f.readlines():
        print text.decode('gbk')
    f.close()

或者:

#coding:utf8

if __name__  == '__main__':
    srcfile = u"D:/测试路径/测试文件.txt"
    f = open(srcfile.encode('gbk'))
    for text in f.readlines():
        print text.decode('gbk')
    f.close()

上述两种方法均可。
另外,不要下面被这句话干扰:

print text.decode('gbk')
它只表示文件内容是用gbk编码的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|52matlab技术网站 ( 粤ICP备14005920号-5 )

GMT+8, 2024-11-25 13:57 , Processed in 0.060829 second(s), 19 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表