一、语法简介

函数基本使用语法:open(文件名,文件打开模式=’rt’)

其中:

1、文件名为可带路径的文件名,注意windows下路径的反斜杠会被作为转义符处理,因此可以采用前面再加反斜杠或使用原始字符串(字符串前面带标记r,关于原始字符串请见《第3.7节 再说字符串》的有关介绍。

2、文件打开模式,默认为读取模式,取值与对应文件操作模式对应关系如下:



返回:一个可操作的文件对象,通过该文件对象可以进行后续的读写操作以及访问相关文件属性。

二、 示例

  1. 打开一个文本文件读取

    以下三个语句的效果等价,都是打开一个文本文件读取,不能写:
>>> fp=open(r'c:\temp\test.txt')#打开一个文本文件读取,文件名采用原始字符串
>>> fp=open('c:\\temp\\test.txt','r')#打开一个文本文件读取,文件名采用普通字符串,反斜杠需要使用两个来表示
>>> fp=open(r'c:\temp\test.txt','rt')#打开一个文本文件读取,文件名采用原始字符串,模式为rt

当文件不存在时,报FileNotFoundError错误。

2. 创建一个新文本文件写

当一个文件不存在时,以下语句都能创建一个新文本文件写入:

>>> fp=open(r'c:\temp\test2.txt','w')
>>> fp=open(r'c:\temp\test3.txt','a')
>>> fp=open(r'c:\temp\test4.txt','x')
>>> fp=open(r'c:\temp\test5.txt','xt')

注意:t模式是默认模式,没有给出b和t的模式默认就是t模式。在文件已经存在情况下,x模式如果文件已经存在会报错,w和a模式不会报错,w模式会清空原文件内容,文件长度为0,a模式不会清空。

3. 打开一个已有文件写且不清空已有文件内容

当要打开一个已有文本文件写入且不清空原文件的内容时,可以使用下面语句:

>>> fp=open(r'c:\temp\test.txt','a')
>>> fp=open(r'c:\temp\test.txt','r+')

不过二者还是有差别,追加模式打开文件写入内容是在文件末尾写入的,而更新模式(r+)是在文件开头开始写入,写入内容会覆盖原有位置的内容。

4. 打开一个已有文件写且清空已有文件内容

>>> fp=open(r'c:\temp\test.txt','w')
>>> fp=open(r'c:\temp\test.txt','w+')。

以上案例是以文本文件举例的,如果是二进制文件,只要把t模式换成b模式就可以了,其他是一样的,如:

打开一个已有二进制文件写且不清空已有文件内容可以使用:

>>> fp=open(r'c:\temp\test.txt','ab')
>>> fp=open(r'c:\temp\test.txt','r+b')

追加模式打开文件写入内容是在文件末尾写入的,而更新模式(r+b)是在文件开头开始覆盖原有内容写入。

好了,本节简单介绍了文件的打开操作,如果要稍微深入了解open函数,请看下节。

老猿Python,跟老猿学Python!

博客地址:https://blog.csdn.net/LaoYuanPython


请大家多多支持,点赞、评论和加关注!谢谢!

第9.1节 Python的文件打开函数open简介的更多相关文章

  1. 第9.2节 Python的文件打开函数open详解

    一. 引言 在操作一个文件前,大部分情况需要先打开文件,才能进行,在Python中使用内置函数open来打开一个文件.open函数是Python的一个内置函数,io模块 定义的函数open是该内置函数 ...

  2. 第9.3节 Python的文件行读取:readline

    一. 语法 readline(size=-1) readline函数顾名思义就是从文件内读取一行,用来处理文本文件读取的典型方法之一,但readline可不只是读取文本文件,也能读取二进制文件,只是在 ...

  3. python csv文件打开错误:_csv.Error: line contains NULL byte

    当python读取文件出现_csv.Error: line contains NULL byte时, # -*- coding:utf-8 -*- import csv with open(r'E:\ ...

  4. python自学——文件打开

    #文件的打开 新建一个文件new file.txt #方法一:f=open("yesterday","r",encoding="utf-8" ...

  5. python中文件打开的各个标识含义

    w代表清空后写入 r代表打开后追查 +代表可以写 b代表二进制写入

  6. 第3章 Python基础-文件操作&函数 文件操作 练习题

    一.利用b模式,编写一个cp工具,要求如下: 1. 既可以拷贝文本又可以拷贝视频,图片等文件 2. 用户一旦参数错误,打印命令的正确使用方法,如usage: cp source_file target ...

  7. 文件I/O——文件打开函数(open/openat)

    一.open函数 1.函数原型:int open(const char *path,int oflag,.../* mode_t mode */); 2.头文件:#include <fcntl. ...

  8. 第11.3节 Python正则表达式搜索支持函数search、match、fullmatch、findall、finditer

    一. 概述 re模块的函数search.match.fullmatch.findall.finditer都是用于搜索文本中是否包含指定模式的串,函数的参数都是一样的,第一个参数是模式串.第二个是搜索文 ...

  9. python常用文件处理函数_1

    1.range()函数 函数原型:range(start,end,scan) 参数含义:start:计数从start开始.默认是从0开始的,如range()等价于range(0,5)  end:计数到 ...

随机推荐

  1. 16、Auth认证组件

    1 Auth模块是什么 Auth模块是Django自带的用户认证模块: 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统.此时我们需要实现包括用户注册.用户登录.用户认证.注销.修改密码 ...

  2. ASP.NET MVC过滤器粗略总结

    mvc的过滤器总共分为:授权认证过滤器.行为过滤器.异常过滤器.自定义行为过滤器 授权认证过滤器: 异常过滤器: 行为过滤器的调用顺序: 几个过滤器在Controler的使用

  3. 大数据分析中数据治理的重要性,从一个BI项目的失败来分析

    很多企业在做BI项目时,一开始的目标都是想通过梳理管理逻辑,帮助企业搭建可视化管理模型与深化管理的精细度,及时发现企业经营管理中的问题. 但在项目实施和验收时,BI却变成了报表开发项目,而报表的需求往 ...

  4. Cacti如何实现电话告警

    Cacti是一套基于PHP,MySQL,SNMP及RRD Tool开发的网络流量监测图形分析工具.Cacti提供了一个快速轮询器,高级图表模板,多种数据采集方法和用户管理功能.所有这一切都被包装在一个 ...

  5. high Performance

    目的 找出系统性能瓶颈(包括硬件瓶颈和软件瓶颈): 提供性能优化的方案(升级硬件?改进系统系统结构?): 达到合理的硬件和软件配置: 使系统资源使用达到最大的平衡. CPU过渡使用会造成大量进程等待C ...

  6. AHB SRAM控制器设计

  7. @AliasFor注解

    @AliasFor注解 @AliasFor是一个注解,用于为注解属性声明别名. 代码如下:它有两个属性value和attribute @AliasFor注解注释了 自身,并且value和attribu ...

  8. 一篇文章了解_unittest

    1. 基本概念 2018年10月7日 星期日 11:39 unittest是python自带的单元测试框架,有时候又被称为"PyUnit",是python版本的JUint实现. 该 ...

  9. 缩点Tarjan算法解析+[题解]受欢迎的牛

    (注:我在网上找了一些图,希望原博主不要在意,谢谢,(。☉౪ ⊙。)) 首先来了解什么是强连通分量 有向图强连通分量:在有向图G中,如果两个顶点vi,vj间(vi>vj)有一条从vi到vj的有向 ...

  10. html 小米商城导航栏示例

    1.小米导航栏示例 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset=&q ...