Python 解决OPEN读文件报错 ,路径以及r的问题


Posted in Python onDecember 19, 2019

Python 中 ‘unicodeescape' codec can't decode bytes in position XXX: trun错误解决方案

背景描述

今天在运用Python pillow模块处理图片时遇到一个错误

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

刚开始以为是图片名字有中文,不识别,于是在python文件的头部加上

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

但是加完这个还是报错,然后我就把图片的中文去掉还成英文,然后报错,一脸懵逼呀。后来在stackoverflow 上找到了类似的错误,原来是图片路径写的 有问题,错误代码如下

im = Image.open('C:\Users\FrankYuan\Pictures\Camera Roll\WIN_20161010_08_51_57_Pro.jpg')

正确结果

im = Image.open('C:\\Users\\FrankYuan\\Pictures\\Camera Roll\\WIN_20161010_08_51_57_Pro.jpg')

或者

im = Image.open(r'C:\Users\FrankYuan\Pictures\Camera Roll\WIN_20161010_08_51_57_Pro.jpg')

抑或

im = Image.open(r'C:/Users/FrankYuan/Pictures/Camera Roll/WIN_20161010_08_51_57_Pro.jpg')

原因:

window 读取文件可以用\,但是在字符串中\是被当作转义字符来使用,所以'd:\a.txt'会被转义成'd:\a.txt'这是正确路径,所以不会报错。而‘C:\Users\FrankYuan\Pictures\Camera Roll\WIN_20161010_08_51_57_Pro.jpg '中经过转义之后可能就找不到路径的资源了,例如\t可能就转义成tab键了。

解决办法

python在描述路径时可以有多种方式,现列举常见的三种

方式一:转义的方式
 
'd:\\a.txt'
 
方式二:显式声明字符串不用转义
 
'd:r\a.txt'
 
方式三:使用Linux的路径/
 
'd:/a.txt'

我强烈推荐第三种写法,这在Linux和window下都是行的通的。

以上这篇Python 解决OPEN读文件报错 ,路径以及r的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
简单理解Python中基于生成器的状态机
Apr 13 Python
Python的Flask框架中实现简单的登录功能的教程
Apr 20 Python
Python中shutil模块的常用文件操作函数用法示例
Jul 05 Python
Python正则表达式使用范例分享
Dec 04 Python
浅谈python可视化包Bokeh
Feb 07 Python
Python实现接受任意个数参数的函数方法
Apr 21 Python
对python抓取需要登录网站数据的方法详解
May 21 Python
Python aiohttp百万并发极限测试实例分析
Oct 26 Python
python 截取XML中bndbox的坐标中的图像,另存为jpg的实例
Mar 10 Python
opencv之颜色过滤只留下图片中的红色区域操作
Jun 05 Python
Python的Tqdm模块实现进度条配置
Feb 24 Python
基于python定位棋子位置及识别棋子颜色
Jul 26 Python
简单了解Python3 bytes和str类型的区别和联系
Dec 19 #Python
Python监控服务器实用工具psutil使用解析
Dec 19 #Python
Python使用pymysql模块操作mysql增删改查实例分析
Dec 19 #Python
python 普通克里金(Kriging)法的实现
Dec 19 #Python
Python函数参数类型及排序原理总结
Dec 19 #Python
python中with语句结合上下文管理器操作详解
Dec 19 #Python
Django中密码的加密、验密、解密操作
Dec 19 #Python
You might like
主流PHP框架的优缺点对比分析
2014/12/25 PHP
php使用str_replace替换多维数组的实现方法分析
2017/06/15 PHP
详解php框架Yaf路由重写
2017/06/20 PHP
PHP 计算两个特别大的整数实例代码
2018/05/07 PHP
一个原生的用户等级的进度条
2010/07/03 Javascript
基于jquery的无刷新分页技术
2011/06/11 Javascript
jquery实现点击TreeView文本父节点展开/折叠子节点
2013/01/10 Javascript
解析Javascript中难以理解的11个问题
2013/12/09 Javascript
深入理解JSON数据源格式
2014/01/10 Javascript
web前端设计师们常用的jQuery特效插件汇总
2014/12/07 Javascript
jquery显示loading图片直到网页加载完成的方法
2015/06/25 Javascript
简介alert()与console.log()的不同
2015/08/26 Javascript
jquery对dom节点的操作【推荐】
2016/04/15 Javascript
JavaScript:Array类型全面解析
2016/05/19 Javascript
微信小程序 简单教程实例详解
2017/01/13 Javascript
基于webpack 实用配置方法总结
2017/09/28 Javascript
基于Vue+elementUI实现动态表单的校验功能(根据条件动态切换校验格式)
2019/04/04 Javascript
vue路由传参页面刷新参数丢失问题解决方案
2019/10/08 Javascript
12 种使用Vue 的最佳做法
2020/03/30 Javascript
Python实现股市信息下载的方法
2015/06/15 Python
python数据类型_元组、字典常用操作方法(介绍)
2017/05/30 Python
Python pyinotify模块实现对文档的实时监控功能方法
2018/10/13 Python
Python OOP类中的几种函数或方法总结
2019/02/22 Python
Python中捕获键盘的方式详解
2019/03/28 Python
Python多进程入门、分布式进程数据共享实例详解
2019/06/03 Python
python打包exe开机自动启动的实例(windows)
2019/06/28 Python
python之生产者消费者模型实现详解
2019/07/27 Python
对Python中 \r, \n, \r\n的彻底理解
2020/03/06 Python
Python爬虫爬取博客实现可视化过程解析
2020/06/29 Python
您的健身减肥和健康饮食专家:vitafy
2017/06/06 全球购物
牧马人澳大利亚官网:Wrangler澳大利亚
2019/10/08 全球购物
Sunglass Hut巴西网上商店:男女太阳镜
2020/10/04 全球购物
工程业务员岗位职责
2013/12/31 职场文书
财务人员求职自荐书范文
2014/02/10 职场文书
授权委托书格式模板
2014/04/03 职场文书
党支部对转正的意见
2015/06/02 职场文书