简介

使用python的过程中肯定少不了读取文件的操作,

传统的形式是使用 直接打开、然后在操作、然后再关闭,

这样代码量稍微大些不说,一旦在操作步骤中出现报错,则无法进行文件的关闭;

案例一(读取)

首先创建一个我们要读写的txt文件

txt内容如下:

z天赐复习文件读写
博客园地址:https://www.cnblogs.com/ztcbug/

一、读取文件 基本实现

f = open('test001.txt','r',encoding='utf-8')  #open 是打开的意思,()中是要打开的文件路径 'r'是只读的方式打开,打开后赋值给f,如果读取文件有中文,encoding = utf-8是编码格式
print(f.read()) #read是读取的意思,f,read() 是读取f里的所有数据,然后print输出出来
f.close() #读取后,然后再把打开的f 给关闭,close()是关闭的意思,切记一定要关闭

---------------------------------------------------------------------------------------------------------------------------------------------------------------------
返回结果如下

z天赐复习文件读写
博客园地址:https://www.cnblogs.com/ztcbug/

 

这样的缺点是如果我们在关闭文件前出现了程序报错,那么打开后的文件就没有进行关闭

二、读取文件 中级实现

try:       #首先try一下,如果程序打开以及在打开后读取一系列操作后有报错,则不中断程序
f = open('test001.txt','r',encoding='utf-8')
file = f.read()
print(file)
finally: #无论try中的程序是否存在报错,则都执行下面的关闭
if f: #判断下f是否打开了,如果没打开则不需要关闭,打开了则关闭
f.close()

---------------------------------------------------------------------------------------------------------------------------------------------------------------------
返回结果如下

z天赐复习文件读写
博客园地址:https://www.cnblogs.com/ztcbug/

可以看到这次对基本实现进行了优化,无论是否报错,我们都对打开后的文件进行了关闭

三、读取文件 终极实现

上面那种虽然好,但是代码太不简洁了,我们可以用with open的方式来写

with open('test001.txt','r',encoding='utf-8') as f:
file = f.read()
print(file)

---------------------------------------------------------------------------------------------------------------------------------------------------------------------
返回结果如下

z天赐复习文件读写
博客园地址:https://www.cnblogs.com/ztcbug/

案例二(写入)

一、写入文件 基本实现

还是用咱们刚才那个文件,刚才那个文件里的内容是 :

z天赐复习文件读写
博客园地址:https://www.cnblogs.com/ztcbug/

此时我们重新给这个文件 写入数据

f = open('test001.txt','w',encoding='utf-8') #open 打开要写入的文件,'w'就是写入的意思,如果有中文encoding进行编码
f.write('今天北京的天气非常好!!!!') #write是写入的意思,将()中的内容写入到f文件里
f.close() #写入完进行关闭

然后此时我们去看看 test001.txt  这个文件中的内容

写入成功

一、写入文件终极实现

with open('test001.txt','w',encoding='utf-8') as f: #使用with方法
f.write('今天去吃个黄焖鸡米饭!!!!') # 直接写入

然后此时我们去看看 test001.txt  这个文件中的内容


 

python读写文件with open的更多相关文章

  1. Python读写文件

    Python读写文件1.open使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. file_object = open('t ...

  2. [Python]读写文件方法

    http://www.cnblogs.com/lovebread/archive/2009/12/24/1631108.html [Python]读写文件方法 http://www.cnblogs.c ...

  3. Python读写文件实际操作的五大步骤

    Python读写文件在计算机语言中被广泛的应用,如果你想了解其应用的程序,以下的文章会给你详细的介绍相关内容,会你在以后的学习的过程中有所帮助,下面我们就详细介绍其应用程序. 一.打开文件 Pytho ...

  4. python的re模块一些方法 && Tkinter图形界面设计 && 终止python运行函数 && python读写文件 && python一旦给字符串赋值就不能单独改变某个字符,除非重新给变量赋值

    Tkinter图形界面设计见:https://www.cnblogs.com/pywjh/p/9527828.html#radiobutton 终止python运行函数: 采用sys.exit(0)正 ...

  5. Python 读写文件的正确方式

    当你用 Python 写程序时,不论是简单的脚本,还是复杂的大型项目,其中最常见的操作就是读写文件.不管是简单的文本文件.繁杂的日志文件,还是分析图片等媒体文件中的字节数据,都需要用到 Python ...

  6. python 读写文件和设置文件的字符编码

    一. python打开文件代码如下: f = open("d:\test.txt", "w") 说明:第一个参数是文件名称,包括路径:第二个参数是打开的模式mo ...

  7. Python读写文件乱码问题

    对开发者来说,最恼人的问题之一莫过于读写文件的时候,由于编码千差万别,出现乱码问题.好难快速解决啊... 最近我也遇到了这样的问题,经研究,把大致的解决思路拿出来共享. 1. python中习惯首先声 ...

  8. 从用python自动生成.h的头文件集合和类声明集合到用python读写文件

    最近在用python自动生成c++的类.因为这些类会根据需求不同产生不同的类,所以需要用python自动生成.由于会产生大量的类,而且这些类是变化的.所以如果是在某个.h中要用include来加载这些 ...

  9. Python 读写文件操作

    python进行文件读写的函数是open或file file_handler = open(filename,,mode) Table mode 模式 描述 r 以读方式打开文件,可读取文件信息. w ...

  10. python读写文件字符集

    操作I/O的能力是由操作系统的提供的,每一种编程语言都会把操作系统提供的低级C接口封装起来供开发者使用,Python也不例外.  读写文件是需要请求操作系统去操作磁盘的  所以默认的编码就是你平台的编 ...

随机推荐

  1. SpringCloud升级之路2020.0.x版-26.OpenFeign的组件

    本系列代码地址:https://github.com/JoJoTec/spring-cloud-parent 首先,我们给出官方文档中的组件结构图: 官方文档中的组件,是以实现功能为维度的,我们这里是 ...

  2. gcc、g++、gdb安装

    Windows安装 有闲工夫在Windows上安装g++/gcc/gdb,还不如装个虚拟机安装Linux,在Linux上安装 但是我还是要讲的 首先,需要安装MinGW,MinGW,是Minimali ...

  3. Serverless 的价值

    作者 | 许晓斌 阿里云高级技术专家 本文整理自<Serverless 技术公开课>,关注"Serverless"公众号,回复 入门 ,即可获取 Serverless ...

  4. 3DGIS开发使用的开源项目

    gdal proj4 vcglib assimp libjpg libpng osg libtess2 cesiumjs glm

  5. 生日礼物网页Javascript版本与锚点版本

    <style> #dv1{ width:60px; height:36px; margin:0 auto; background-color:orange; display:none; } ...

  6. [no_code]团队任务拆解Alpha

    项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 团队任务拆解 我们在这个课程的目标是 远程协同工作,采用最新技术开发软件 这个作业在哪个具体方面帮 ...

  7. 【二食堂】Alpha - Scrum Meeting 7

    Scrum Meeting 7 例会时间:4.17 11:40 - 12:00 进度情况 组员 昨日进度 今日任务 李健 1. 继续文本区域的开发,先完成目前简陋的添加方式,再区实现勾选功能issue ...

  8. C++链表常见面试考点

    链表常见问题: 单链表找到倒数第n个节点 用两个指针指向链表头,第一个指针先向前走n步,然后两个指针同步往前走,当第一个指针指向最后一个节点时,第二个指针就指向了倒数第n个节点. 判断链表有没有环 快 ...

  9. linux shell脚本中的开头#!/bin/bash的含义

    对于linux上需要执行 的shell脚本,通常第一行的内容是 #!/bin/bash 当然有很多时候不规范的写法可以忽略掉这一句,执行起来好像也是ok,结果没什么不一样 .. 这只是因为在我们常用 ...

  10. DDR3 IP和CIC IP仿真问题解决记录

    1.更新vivado的仿真库(data/secureip和verilog和vhdl文件夹)至最新的vivado库和生成IP的版本匹配: 2.vcs编译脚本里面把仿真库地址指向匹配的仿真库版本: 3.v ...