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

yipeiwu_com7年前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 从列表中取值和取索引的方法

如下所示: name_list["zhangsan","lisi","wangwu"] #1.取值 print(name_list[0]) print(name_list[1])...

python实现逆序输出一个数字的示例讲解

问题是:输入一个数字,按照指定要求逆序输出该数字,很简单,下面是实现: #!usr/bin/env python #encoding:utf-8 ''' __Author__:沂水...

pyqt5 comboBox获得下标、文本和事件选中函数的方法

如下所示: currentText()获得文本 currentIndex()获得下标 self.comboBox.currentIndexChanged.connect() comboB...

Python中使用装饰器来优化尾递归的示例

尾递归简介 尾递归是函数返回最后一个操作是递归调用,则该函数是尾递归。 递归是线性的比如factorial函数每一次调用都会创建一个新的栈(last-in-first-out)通过不断的...

python对csv文件追加写入列的方法

python对csv文件追加写入列的方法

python对csv文件追加写入列,具体内容如下所示: 原始数据 [外链图片转存失败(img-zQSQWAyQ-1563597916666)(C:\Users\innduce\Ap...