文件操作

Python3用open()方法打开文件并返回文件句柄,有了文件句柄就可以对文件进行各种操作了。

打开文件:

open(“文件名” , 打开方式)            如: f=open(“file.txt”, ‘r’)

# 文件名通常是文件全名,即有路径和扩展名的文件名,如果没有写路径默认为当前路径

# 打开方式决定了文件打开后的状态及如何操作:

r                 # 只读方式(默认的模式,打开的文件不存在会报错)

w               # 只写方式(不可读,文件不存在则创建,存在则清空内容)

a                # 追加写方式(不可读,文件不存在则创建,存在则追加内容)

r+               # 可读、可写;可追加,如果打开的文件不存在的话,会报错

w+             # 写读模式,存在的文件内容会被清空,可以读到已经写的文件内容

a+              #追加读写模式,不存在则创建;存在则只追加内容

文件操作的常用方法:

f = open('file.txt','r+',encoding='utf-8')    #encoding参数可以指定文件的编码

f.readline()                 # 读一行,返回数据的类型为‘字符串’

f.readable()                # 判断文件是否可读

f.writable()                 # 判断文件是否可写

f.encoding                  # 返回文件的编码

f.read()                        # 读取所有内容,返回数据的类型为‘字符串’

# 大文件时不要用,因为会把文件内容都读到内存中,内存不够的话,会把内存撑爆

f.readlines()               #读取所有文件内容,返回数据的类型是‘列表’,元素是每行的数据,大文件时不要用

# 因为会把文件内容都读到内存中,内存不够的话,会把内存撑爆

f.tell()                          # 获取当前文件的指针指向

f.seek(0)                     # 把当前文件指针指向哪

f.write('爱情证书')  # 写一个字符串到文件

f.writelines([‘123’,’456’,’789’])                  # 写一个列表到文件

f.fulsh()                       #写入文件后,立即从内存中把数据写到磁盘中

f.truncate()                #清空文件内容

f.close()                       # 关闭文件

高效读取文件的方法,是利用循环遍历读取文件的行:

f = open('file.txt')

for line in f:

  print(line)

# line是每行文件的内容,读完一行,就会释放一行的内存

使用with结构:

文件操作结束后需要关闭文件释放系统资源,但关闭文件常常会被忘记,使用whith方法后文件会被自动关闭。

#打开一个文件,把这个文件的句柄付给f

with open('file.txt','r') as f:

for line in f:

print(line)

#这个是多文件的操作,打开两个文件,fr是读file.txt,fw是新建一个file_bak文件

with open('file.txt') as fr,with open('file_bak','w') as fw:

for line in fr:                       # 循环file.txt中的每一行

fw.write(line)               #写到file_bak文件中

Python学习杂记_7_文件操作的更多相关文章

  1. Python学习:7.文件操作

    文件操作 我们曾将听过一个问题,将大象放入冰箱分为三步:1.打开冰箱门,2.将大象放进去,3.关上冰箱门.今天我们要讲的Python文件操作的步骤就像将大象放入冰箱的步骤一样. 使用Python操作文 ...

  2. 【Python学习之六】文件操作

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 一.文件的打开与关闭 使用open函数,可以打开一 ...

  3. python学习笔记之文件操作(三)

    这篇博客小波主要介绍一下python对文件的操作 对文件的操作主要分为三步: 1.打开文件获取文件的句柄,句柄也是文件描述符 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件,是小波随写的周杰伦 ...

  4. python学习笔记4(文件操作)

    文件操作: 1.f=open(”caidan”,”w”,encoding=”utf8”)      直接打开一个文件,如果文件不存在则创建文件 f.close() 2.with open (”caid ...

  5. python学习笔记三 文件操作(基础篇)

    文件操作 打开文件 open(name[,mode[,buffering]])   open函数使用一个文件名作为强制参数,然后返回一个文件对象.[python 3.5 把file()删除掉]   w ...

  6. python学习第十八天 --文件操作

    这一章节主要讲解文件操作及其文件读取,缓存,文件指针. 文件操作 (1)文件打开:open(filepath,filemode) filepath:要打开文件的路径 filemode:文件打开的方式 ...

  7. python学习笔记(三):文件操作和集合

    对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 文件基本操作: f = open('file.txt','r') #以只读方式打开一个 ...

  8. Python学习之路——文件操作

    文件操作分三步:打开文件,读写文件,关闭文件.读取操作时没有给read函数加括号,会出现下面这样的车祸 >>> data = open('/home/supersun/Documen ...

  9. Python学习笔记 - day5 - 文件操作

    Python文件操作 读写文件是最常见的IO操作,在磁盘上读写文件的功能都是由操作系统提供的,操作系统不允许普通的程序直接操作磁盘(大部分程序都需要间接的通过操作系统来完成对硬件的操作),所以,读写文 ...

随机推荐

  1. 科学计算库Numpy——文件读写

    读文件 要读取的文件 有分隔符的文件 备注:delimiter分隔符. 有多余行的文件 备注:skiprows去掉几行. 指定列 备注:usecols指定使用哪几列. 写文件 保存后的文件 备注:fm ...

  2. B - Sonya and Exhibition CodeForces - 1004B (思维题)

    B. Sonya and Exhibition time limit per test 1 second memory limit per test 256 megabytes input stand ...

  3. Diycode开源项目 LoginActivity分析

    1.首先看一下效果 1.1.预览一下真实页面 1.2.分析一下: 要求输入Email或者用户名,点击编辑框,弹出键盘,默认先进入输入Email或用户名编辑框. 点击密码后,密码字样网上浮动一段距离,E ...

  4. day05_07 标志位讲解

    continue: 需求:大于5才打印 for i in range(10): if i<6 : continue print(i) continue作用:结束本次循环,继续下次循环 break ...

  5. lcd1602如何自定义汉字(verilog)

    今天一鼓作气,再研究了一下如何用LCD1602自定义汉字 1.用字模软件获取汉字所对应的数据(因为嫌麻烦所以直接用了网上一个帖子里有关“电”的数据,如下:04,1f,15,1f,15,15,1f,04 ...

  6. Spring 简单而强大的事务管理功能

    开始之前 关于本教程 本教程将深入讲解 Spring 简单而强大的事务管理功能,包括编程式事务和声明式事务.通过对本教程的学习,您将能够理解 Spring 事务管理的本质,并灵活运用之. 先决条件 本 ...

  7. 欧拉路&&欧拉回路 概念及其练习

    欧拉路: 如果给定无孤立结点图G,若存在一条路,经过图中每边一次且仅一次,这条路称为欧拉路: 如果给定无孤立结点图G,若存在一条回路,经过图中每边一次且仅一次,那么该回路称为欧拉回路. 存在欧拉回路的 ...

  8. koa2 + webpack 热更新

    网上有很多express+webpack的热更新,但是koa2的很少,这两天研究了一下子,写一个简单的教程. 1.需要的包 webpack:用于构建项目 webpack-dev-middleware: ...

  9. node.js express 4.x 安装指南(Express不是内部或外部命令解决方案)

    前几天express 推出了4.0,得知这个消息,自己尝试了一下,突然发现用以前的文档上的操作出现了各种问题.结果只能去看文档,现在在这个给大家分享下4.0版本的安装. 先说下如果需要用express ...

  10. cf 853 D Michael and Charging Stations [dp]

    题面: 传送门 思路: 看到题目,第一思路是贪心,但是我很快就否决掉了(其实分类贪心也可以做) 然后就想,贪心不能解决的状态缺失,是否可以用dp来解决呢? 事实证明是可以的 我们设dp[i][j]表示 ...