基于python 处理中文路径的终极解决方法

yipeiwu_com6年前Python基础

1 、据说python3就没有这个问题了

2 、u'字符串' 代表是unicode格式的数据,路径最好写成这个格式,别直接跟字符串'字符串'这类数据相加,相加之后type就是str,这样就会存在解码失误的问题。

别直接跟字符串'字符串'这类数据相加

别直接跟字符串'字符串'这类数据相加

别直接跟字符串'字符串'这类数据相加

unicode类型别直接跟字符串'字符串'这类数据相加

说四遍

3 、有些读取的方式偏偏是要读取str类型的路径,不是unicode类型的路径,那么我们把这个str.encode(‘utf-8')就可以了,保存到txt中也这样处理,因为保存到txt中,中文也得先转成utf-8格式的字符串。

4 、.decode(‘utf-8'),是只将原本utf-8的字符编码类型转成unicode,即统一的。encode(‘utf-8')是将unicode解码成utf-8类型的,中文数据需要解码成utf-8的才能看哦

5 、从文本读入然后再写入csv,.decode(“gb2312”).encode(“utf-8”)

以上这篇基于python 处理中文路径的终极解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python绘制KS曲线的实现方法

Python绘制KS曲线的实现方法

python实现KS曲线,相关使用方法请参考上篇博客-R语言实现KS曲线 代码如下: ####################### PlotKS #################...

python中如何使用朴素贝叶斯算法

python中如何使用朴素贝叶斯算法

这里再重复一下标题为什么是"使用"而不是"实现": 首先,专业人士提供的算法比我们自己写的算法无论是效率还是正确率上都要高。 其次,对于数学不好的人来说,为了实现算法而去研究一堆公式是很...

Python实现socket非阻塞通讯功能示例

本文实例讲述了Python实现socket非阻塞通讯功能。分享给大家供大家参考,具体如下: 非阻塞需要多线程编程 服务端 方式1: 使用threading库实现多线程 基本方法和单进程基...

详解python 注释、变量、类型

1、注释 单行注释,使用#,#号后面的都是注射,例如 #我是单行注释 print("Hello Python world") 多行注释:开始和结束用三个单引号扩起来 ''' 我是多行...

PyQt5实现QLineEdit添加clicked信号的方法

大家都知道很多控件是没有clicked信号的,我在网上找了很多终于总结出2个方法来实现类似需求,比如给QLineEdit添加clicked信号,这样的话,当点击输入框时就会发送click...