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实现的石头剪子布代码分享
Aug 22 Python
Python实现爬取逐浪小说的方法
Jul 07 Python
基于python socketserver框架全面解析
Sep 21 Python
详解python使用递归、尾递归、循环三种方式实现斐波那契数列
Jan 16 Python
python2.7到3.x迁移指南
Feb 01 Python
Python分割指定页数的pdf文件方法
Oct 26 Python
Python的iOS自动化打包实例代码
Nov 22 Python
django foreignkey(外键)的实现
Jul 29 Python
Python中断多重循环的思路总结
Oct 04 Python
pytorch逐元素比较tensor大小实例
Jan 03 Python
python变量的作用域是什么
May 26 Python
使用pipenv管理python虚拟环境的全过程
Sep 25 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
extjs 学习笔记(三) 最基本的grid
2009/10/15 Javascript
JS类的封装及实现代码
2009/12/02 Javascript
open 动态修改img的onclick事件示例代码
2013/11/13 Javascript
file控件选择上传文件确定后触发的js事件是哪个
2014/03/17 Javascript
原生js和jquery实现图片轮播淡入淡出效果
2015/04/23 Javascript
JavaScript变量的作用域全解析
2015/08/14 Javascript
jQuery实现输入框邮箱内容自动补全与上下翻动显示效果【附demo源码下载】
2016/09/20 Javascript
NodeJs读取JSON文件格式化时的注意事项
2016/09/25 NodeJs
js 动态生成json对象、时时更新json对象的方法
2016/12/02 Javascript
jQuery实现获取隐藏div高度的方法示例
2017/02/09 Javascript
jquery实现静态搜索功能(可输入搜索文字)
2017/03/28 jQuery
利用require.js与angular搭建spa应用的方法实例
2017/07/19 Javascript
ComboBox(下拉列表框)通过url加载调用远程数据的方法
2017/08/06 Javascript
vue组件Prop传递数据的实现示例
2017/08/17 Javascript
vue父组件向子组件传递多个数据的实例
2018/03/01 Javascript
小程序从手动埋点到自动埋点的实现方法
2019/01/24 Javascript
微信小程序左右滚动公告栏效果代码实例
2019/09/16 Javascript
uni app仿微信顶部导航条功能
2019/09/17 Javascript
用Python从零实现贝叶斯分类器的机器学习的教程
2015/03/31 Python
python实现AES加密和解密
2019/03/27 Python
python pygame实现五子棋小游戏
2020/10/26 Python
Python argparse模块应用实例解析
2019/11/15 Python
Matplotlib.pyplot 三维绘图的实现示例
2020/07/28 Python
CSS3 icon font完全指南(CSS3 font 会取代icon图标)
2013/01/06 HTML / CSS
HTML5 Canvas概述
2009/08/26 HTML / CSS
5个你不知道的HTML5的接口介绍
2013/08/07 HTML / CSS
一波HTML5 Canvas基础绘图实例代码集合
2016/02/28 HTML / CSS
加拿大百叶窗和窗帘定制网站:Blinds
2017/01/30 全球购物
幼儿园家长评语
2014/02/10 职场文书
房产委托公证书
2014/04/08 职场文书
领导干部学习“三严三实”思想汇报
2014/09/15 职场文书
2014年计生协会工作总结
2014/11/21 职场文书
考试作弊检讨书怎么写?
2014/12/21 职场文书
银行给客户的感谢信
2015/01/23 职场文书
《合作意向书》怎么写?
2019/08/20 职场文书
Python绘制散乱的点构成的图的方法
2022/04/21 Python