Python open函数打开文件路径
要以读文件的模式打开一个文件对象,使用Python内置的open()
函数,传入文件名和标示符,标示符'r'表示读。
>>> f = open('D:/test.txt','r')
注意了,对初学python的同学而言,open()函数着实存在一个不大不小的坑,而且十分不容易发现。
错误演示:
>>> f = open('D:\test.txt','r')
Traceback (most recent call last):
File"<ipython-input-56-6a0acaf613c9>", line 1, in <module>
f =open('D:\test.txt','r')
OSError: [Errno 22] Invalid argument: 'D:\test.txt'
仿佛没有什么不对的地方,一模一样的嘛!再仔细看,斜杠的方向不一样,为什么会出现这样的情况呢,原因在于我们从系统中直接复制文件所在路径所致,Windows系统文件路径中的斜线符号为'\'。
这就引出了转义字符的概念,需要在字符中使用特殊字符时,python用反斜杠’\’转义字符,所以错误案例中的’\’被用作转义,导致解释器解释文件路径错误。
改正的方法有两种:第一、将’\’的方向反向为’/’,即文首正确的写法;第二、在含有转义符的字符串前加‘r’表示字符串内按原始含义解释,不做转义处理。(推荐!)
>>> f = open(r'D:\test.txt','r')
另附:
转义字符表
转义字符 |
描述 |
\(在行尾时) |
续行符 |
\\ |
反斜杠符号 |
\' |
单引号 |
\" |
双引号 |
\a |
响铃 |
\b |
退格(Backspace) |
\e |
转义 |
\000 |
空 |
\n |
换行 |
\v |
纵向制表符 |
\t |
横向制表符 |
\r |
回车 |
\f |
换页 |
\oyy |
八进制数,yy代表的字符,例如:\o12代表换行 |
\xyy |
十六进制数,yy代表的字符,例如:\x0a代表换行 |
\other |
其它的字符以普通格式输出 |
open()函数标识符表
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
Python open函数打开文件路径相关推荐
- python open函数默认路径_Python open函数打开文件路径
要以读文件的模式打开一个文件对象,使用Python内置的open()函数,传入文件名和标示符,标示符'r'表示读. >>> f = open('D:/test.txt','r') 注 ...
- python open函数用法_Python使用open函数打开文件的常用模式
python 中open()的用法? open("/path/to/my/image.png", "rb") 中的'rb'代表了什么意思?所有试图感动你而做的事 ...
- python打开方式错误_浅谈python 调用open()打开文件时路径出错的原因
昨晚搞鼓了一下python的open()打开文件 代码如下 def main(): infile =open("C:\Users\Spirit\Desktop\bc.txt",'r ...
- python open找不到文件的原因_浅谈python 调用open()打开文件时路径出错的原因
昨晚搞鼓了一下python的open()打开文件 代码如下 def main(): infile =open("C:\Users\Spirit\Desktop\bc.txt",'r ...
- Python错误集锦:打开文件路径提示参数无效,OSError: [Errno 22] Invalid argument: ‘D:\juzicode\桔子code\readme.txt’
原文链接:http://www.juzicode.com/archives/2493 错误提示: 打开文件路径提示参数无效:OSError: [Errno 22] Invalid argument: ...
- fopen是python内置函数吗_Python内置的open函数,打开文件的时候可能会产生异常_学小易找答案...
[简答题]模仿操作一回. 上传JPG. [单选题]关于唐.宋诗之间的差异,缪钺.钱钟书.启功等学者都曾有过论述,请问以下哪一项评论出自钱钟书的<谈艺录>? [单选题]"羌笛何须怨 ...
- python win7正常的文件路径到win10报错_如何更改临时文件路径_win10怎么更改临时文件夹的路径图文步骤...
2015-09-16 17:27:19 最近,有位win10系统用户反映自己电脑中的临时文件夹存放空间已经满了,因此想要更改掉之前的临时文件夹路径.这该如何操作呢?接下来,小编就向大家分享window ...
- python读文件路径-python获取程序执行文件路径的方法(推荐)
1.获取当前执行主脚本方法:sys.argv[0]和_ file _ (1)sys.argv 一个传给Python脚本的指令参数列表.sys.argv[0]是脚本的名字.一般得到的是相对路径,用os. ...
- linux so lazyload,linux函数深入探索——open函数打开文件是否将文件内容加载到内存空间...
转自:https://blog.csdn.net/qq_17019203/article/details/85051627 问题:open(2)函数打开文件是否将文件内容加载到内存空间 首先,文件打开 ...
最新文章
- 智能文档理解:通用文档预训练模型
- TCP连接状态详解及TIME_WAIT过多的解决方法
- Mycat实现垂直拆分与水平拆分
- 使用Java语言从零开始创建区块链
- 程序设计基础(c语言),程序设计基础(C语言)
- Android下实现GPS定位服务
- JavaScript DOM 编程艺术 公用方法
- JZOJ 4.2 C组 打鼹鼠
- 美国能限制linux内核,美国大学教授「故意」向 Linux 提交含 Bug 代码,内核管理员“封杀”明尼苏达大学...
- nmake comment
- 博客营销为何这么神奇而不被淘汰的
- msvcr71.dll文件丢失——解决办法
- 曼德博集合|最直观的数学之美——用Python看到“上帝的指纹”
- outlook 2010 设置签名
- 自己动手实现简易光线追踪算法
- 使用vue写一个计时器
- android 6gb和8gb区别,6GB和8GB区别到底有多大?千万别再花冤枉钱了
- 锥度用计算机怎么算,大小头体积,表面积,锥度,展开圆心角,质量计算公式与在线计算器_三贝计算网_23bei.com...
- Certificate for <xx.xxx.xxx.xxx> doesn‘t match any of the subject alternative names: [xx.xxxx.xxxx.
- PID控制的理解与参数整定
热门文章
- qt 绘制消息框_Qt显示带文本输入的消息框
- RHCS+Conga+iSCSI+CLVM+GFS实现Web服务的共享存储HA集群
- 英特尔带来服务器的作用是,[精彩观点]英特尔7400带来x86服务器虚拟化新实践
- 抖音KOL达人推广传播靠谱吗?
- Eclipse中建多层级包时出现的问题
- python opencv白平衡算法
- RHEL8 新特性和安装方法
- 微信小程序:全局状态变量的使用
- 3.7V锂电池充满电时是多少伏?
- C++STL详解(六)unordered_setunordered_map介绍