python无法使用decode,Python处理文件名或路径名中无法decode代码问题
首先讨论的是python 2处理时的问题,其实不是单单指中文名的问题,即使是中文名称,如果能够decode还是没问题的,比如用如下这些方法:
–– coding: utf-8 –– 或者 –– coding: gbk ––
强制utf-8
import sys
reload(sys)
sys.setdefaultencoding('utf8')
.decode(‘gbk’).encode(‘utf-8’)
unicode(path_name,’utf8′)
当然path前加r, 或者wingdows转用反斜杠,然后用了这四种方法还不行,windows下执行提示windows error 123之类的错误,发现文件名中会有无法decode的符号问号 ?的,基本就是在python 2之下无法解决了。
Windows Error错误参考:
WindowsError:[Error 2] 不存在这个文件
WindowsError:[Error 3] 没有这个路径
WindowsError:[Error 5] 权限问题
WindowsError:[Error 13] 该文档被其它程序占用,处理不了
WindowsError:[Error 123] 路径语法有误
WindowsError:[Error 145] 目录非空,多在删除非空目录时出现
不要再花时间去解决python 2处理文件名的问题了,基本无法解决的,还是转用python 3吧,ITGeeker技术奇客测试已完美解决,用的是python 3.6的版本,而且是WSL的Ubunt版本测试的。而且现在更新到win10 2019 May的更新版,可以在微软商店直接下载3.7官方版本了,这是催促大家赶紧放弃python 2的节奏。
Python 3.6默认使用utf-8编码,当然你也可以再加上reload在文件首,但和python 2有所不同:
import importlib
import sys
importlib.reload(sys)
python无法使用decode,Python处理文件名或路径名中无法decode代码问题相关推荐
- python爬取图片然后保存在文件夹中
python爬取图片然后保存在文件夹中 直接上代码: import os import requests import redef getimg(soup,i):print('http:'+ soup ...
- 【python基础】python中常用字符串函数详解
文章目录 1 字符串查询(index,find) 2. 字符串大小写转换操作(upper.lower.swapcase.capitalize和title) 3. 字符串对齐(center,just和z ...
- python合并路径和文件名,python关于文件路径和文件名的操作
os.path.abspath(path) #返回绝对路径(包含文件名的全路径) os.path.basename(path) -- 去掉目录路径获取文件名 os.path.dirname(path) ...
- python 读取数据出现UnicodeDecodeError:: 'utf-8' codec can't decode byte 0xc8 in position 0: invalid contin
之前写程序时也出现过类似错误,每次解决了到第二次遇见又忘了具体方法,这次记录一下. 一.字符编码问题 先介绍一下字符编码问题 1.ASCLL与GB2312 由于计算机是美国人发明的,因此,最早只有12 ...
- python 读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multib
python 读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multib ...
- python | 查看pip支持的文件名和版本
python | 查看pip支持的文件名和版本 win下查询 大哥推荐已经解决 win下查询 import pip._internalprint(pip._internal.pep425tags.ge ...
- Python读取文件时出现UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position xx: 解决方案
Python读取文件时出现UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position xx: 解决方案 参考文章: (1)Py ...
- python 无法使用Ctrl-C终止Python脚本(ctrl+c 退出while True)
文章目录 无法使用Ctrl-C终止Python脚本 无法使用Ctrl-C终止Python脚本 写了一个死循环,类似: def function():while True:#my code 程序运行后想 ...
- 解决Python打开文件报错UnicodeDecodeError: 'gbk' codec can't decode byte
用Python打开文件时报错: UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 10: illegal multi ...
最新文章
- java获取随机正整数
- 【移动开发】安卓Lab2(02)
- 消费和部署ASP.NET WebApi服务–陷阱
- 长春理工大学计算机学院转专业,长春理工大学优秀本科学生转专业面试考核方案.PDF...
- Python之Mac上搭建集成开发环境
- 你知道什么是 MySQL 的模糊查询?
- java 中webservice
- 50岁开始学python_再过两年C语言就50岁了,这么老的编程语言怎么还没有过时?...
- java输出各国人的问候语_世界各国问候语及发音.doc
- ios sinaweibo 客户端(二)
- HBuilderX前端html功能应用
- Google快讯-UTStarcom
- 搜索引擎的百万免费流量
- dell服务器系统备份软件,使用 AlienRespawn 备份 Alienware 电脑的系统
- 移动机器人五种坐标系
- 使用RXTX实现简单串口通信调试工具
- 【案例分析】服务器数据恢复
- OpenFlow工作机制与流程
- MATLAB完成BSC信道
- 原始值(primitive value)