f = open('users.txt',encoding='utf-8') #读文件的时候,必须存在在才可以读 文件对象,或者文件句柄
res = f.read()
print(res)
f.close()

fw = open('users',mode='a',encoding='utf-8')
fw.write('qiaomeiling,123456\n')
fw.close()

一.文件读写

读模式,r,不写默认为r模式;打开不存在的文件会报错;不能写入内容,会报错

写模式,w,打开不存在的文件,会新建一个文件;打开一个已经存在的,里面有内容的文件,会清空原有文件;不能读

追加模式,a,打开不存在的文件,会新建;不能读;打开一个已经存在的,里面有内容的文件,不会清空原有文件

读写模式,r+ 1,能写;打开不存在文件的时候会报错

写读模式,w+1,能读;读不到内容,因为w先把文件内容清空

追加读模式,a+1,能读;读不到内容,指针在最后,f.seek(0),指针移到前面;再写东西,还是在最后写入

f.seek(0) 移动文件指针到最前面

f.flush()  刷新缓冲区,立即写到磁盘上

f.tell()  记录读完之后文件指针

f.truncate() 清空文件内容

二.读

print('readline',f.readline())  读取一行的内容

print('readlines',f.readlines())  读取文件里面所有的内容,把每行的内容都放到一个list里面

print('read',f.read() )  读取所有的内容,读完文件指针指到最后

三.1.直接循环文件对象,每次取的就是文件里面的每一行
for line in f:
print(line)

2.write() 只能写进去字符串

writelines()会循环list里面的每个元素写进去

3.with open('users','a+') as fw 不用文件自动关闭

四.修改文件

第一种

# with open('users','a+') as fw:
# fw.seek(0)
# result = fw.read()
# new_result = result.replace('python','java')
# fw.seek(0)
# fw.truncate() #清空文件内容
# fw.write(new_result)

#第二种 大数据量 两个文件倒
import os
# fr =open('users')
# fw= open('.users','w')
with open('users') as fr,open('.users','w',encoding='utf-8') as fw:
for line in fr:#从需要修改的文件里面读
new_line = line.replace('java','修改文件')
fw.write(new_line)

os.remove('users')

os.rename('.users','users')

python简说(五)操作文件的更多相关文章

  1. python中OS模块操作文件和目录

    在python中执行和操作目录和文件的操作是通过内置的python OS模块封装的函数实现的. 首先导入模块,并查看操作系统的类型: >>> import os os.name # ...

  2. Python学习(五) —— 文件操作

    一.文件操作 1.文件操作:数据持久化的一种      步骤:找到文件,打开文件,操作:读.写.追写,关闭文件      打开文件:f = open(文件路径,操作模式,编码方式),f:文件句柄.文件 ...

  3. Python中通过open()操作文件时的文件中文名乱码问题

    最近在用Python进行文件操作的时候,遇到创建中文文件名的乱码问题. Python默认是不支持中文的,一般我们在程序的开头加上#-*-coding:utf-8-*-来解决这个问题,但是在我用open ...

  4. python模拟SQL语句操作文件

    1.需求 在文本界面输入SQL语句,查询相应的数据,例如输入下面的语句 print(''' 支持大小写的SQL语句查询,大写或者小写都可以 1. select * from db1.emp 2. se ...

  5. python中使用with操作文件,为什么不需要手动关闭?

    python中的with关键字,它是用来启动一个对象的上下文管理器的.它的原理是,当我们使用with去通过open打开文件的时候,它会触发文件对象的上下文管理器, 当with中的代码结束完成之后,去自 ...

  6. python(四)数据持久化操作 文件存储

    1.写入 导入pickle包 然后组织一个列表my_list,保存为pkl格式,可以是任意格式 在磁盘下回出现一个保存的文件 2.读取

  7. Python学习系列(五)(文件操作及其字典)

    Python学习系列(五)(文件操作及其字典) Python学习系列(四)(列表及其函数) 一.文件操作 1,读文件      在以'r'读模式打开文件以后可以调用read函数一次性将文件内容全部读出 ...

  8. devi into python 笔记(五)异常 文件操作 sys os glob模块简单实用

    异常: Java异常: try catch块处理异常,throw引发异常. Python异常: try except块处理异常,raise引发异常. 异常如果不主动处理,则会交给Python中的缺省处 ...

  9. Python学习笔记(二十五)操作文件和目录

    摘抄:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014319253241 ...

  10. python高级 之(五) --- 文件操作

    文件操作 """ 在程序中操作的文件内容: 1. 读取文件中的内容 2. 向文件中写入内容 首先: 在程序中与文件建立一个通道,通过通道操作文件指针,达到所要的结果 向文 ...

随机推荐

  1. histogram 和 bar plot的区别

    最本质的区别是这样的:histogram用来描述的是numerical变量,而bar plot用来描述的是categorical类型的变量.统计学当中关于变量的分类 这可以从它们的图形上面看到: hi ...

  2. iOS应用图标及尺寸

    Icon and Image Sizes Every app needs an app icon and a launch file or image. In addition, some apps ...

  3. C#将List<>转换为Json,将DataSet转成List<T>

    转换  参考:https://blog.csdn.net/u011176794/article/details/52670339 参考:https://blog.csdn.net/my98800/ar ...

  4. CSU 1838 Water Pump(单调栈)

    Water Pump [题目链接]Water Pump [题目类型]单调栈 &题解: 这题可以枚举缺口,共n-1个,之后把前缀面积和后缀面积用O(n)打一下表,最后总面积减去前缀的i个和后缀的 ...

  5. 初识Vue,简单的todolist

    vue开发源码:https://vuejs.org/js/vue.js todolist代码: <!DOCTYPE html> <html lang="en"&g ...

  6. word之论文摘要

    字数在500个汉字左右

  7. node事件循环和process

    1.node.js事件循环 node.js事件可以继续插入事件,如果有事件就继续执行下去,每一次事件处理结束后等待下一个事件的发生:没有要处理的事件了,那整个就结束了; setTimeout插入一个 ...

  8. Sitecore安装(手动方式)

    Sitecore安装 Sitecore提供手动安装压缩包(.zip)和自动安装程序包(.exe),当您运行自动安装程序时,引导界面会指导您一步步进行安装.为了让您更细致的了解Sitecore的安装配置 ...

  9. [openjudge-搜索]广度优先搜索之鸣人和佐助

    题目描述 描述 佐助被大蛇丸诱骗走了,鸣人在多少时间内能追上他呢?已知一张地图(以二维矩阵的形式表示)以及佐助和鸣人的位置.地图上的每个位置都可以走到,只不过有些位置上有大蛇丸的手下,需要先打败大蛇丸 ...

  10. maven 核心概念

    1). 项目构建过程中的各个环节 . 清理 . 编译 . 测试 . 报告 . 打包 . 安装 . 部署 2). 配置环境变量 . 配置 JDK 配置 JAVA_HOME + PATH maven 需要 ...