文件操作

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. Java集合框架汇总

    HashMap是一个最常用的Map,它根据键的HashCode值存储数据,根据键可以直接获取它的值,具有很快的访问速度,遍历时,取得数据的顺序是完全随机的.HashMap最多只允许一条记录的键为NUL ...

  2. python3 爬取汽车之家所有车型数据操作步骤(更新版)

    题记: 互联网上关于使用python3去爬取汽车之家的汽车数据(主要是汽车基本参数,配置参数,颜色参数,内饰参数)的教程已经非常多了,但大体的方案分两种: 1.解析出汽车之家某个车型的网页,然后正则表 ...

  3. [Poj3281]Dining(最大流)

    Description 有n头牛,f种食物,d种饮料,每头牛有nf种喜欢的食物,nd种喜欢的饮料,每种食物如果给一头牛吃了,那么另一个牛就不能吃这种食物了,饮料也同理,问最多有多少头牛可以吃到它喜欢的 ...

  4. Java程序占用实际内存大小

    很多人错误的认为运行Java程序时使用-Xmx和-Xms参数指定的就是程序将会占用的内存,但是这实际上只是Java堆对象将会占用的内存.堆只是影响Java程序占用内存数量的一个因素.要更好的理解你的J ...

  5. vijos1083:小白逛公园

    小白逛公园 描述 小新经常陪小白去公园玩,也就是所谓的遛狗啦…在小新家附近有一条“公园路”,路的一边从南到北依次排着n个公园,小白早就看花了眼,自己也不清楚该去哪些公园玩了. 一开始,小白就根据公园的 ...

  6. 转载: CRichEditCtrl使用大全

    richedit 常见使用问题 一.常见问题 a.可以编译,不能执行的 在需要在相应的对话框中加上InitInstance(void)函数中添加 AfxInitRichEdit(); b.升级默认的R ...

  7. Appium Windows服务端GUI详解

    Appium Windows服务端GUI各项的解释,从官方扒过来的,界面图标和最新版本有点不太一样,其他还是比较简单易懂的 原文https://github.com/appium/appium-dot ...

  8. Xmanager用法(export DISPLAY=客户端IP:0.0)

    1.在用户的目录下找到文件.bash_profile或profile,用vi对其进行编辑.加入下列命令行: DISPLAY=192.168.88.71:0.0;export DISPLAY 2.如果只 ...

  9. python-day5-装饰器第二弹之多层装饰器

    多层装饰器 #首先我们先实现一个简单的登陆与权限验证功能,注意看执行结果 USER_INFO = {} def check_login(func): def inner(*args,**kwargs) ...

  10. MapReduce 使用案例

    MapReduce 使用案例 MapReduce在面试过程中出现的频率还是挺高的,尤其是数据挖掘等岗位.通常面试官会出一个大数据题目,需要被试者根据题目设计基于MapReduce的算法来解答.我在一个 ...