简介

使用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. 拥抱开源,共建生态 - 开源生态与效能提升专场 | CIF 精彩看点

    随着软件技术日新月异的发展,GitHub 已经进化成为人类软件的基因库,遇到问题第一时间在 GitHub 上寻求合适的解决方案,已经逐渐变成工程师处理问题的常见方法.据 GitHub 年度报告显示,2 ...

  2. Java学习路线【转】

    Java学习路线[转] 第一阶段:JavaSE(Java基础部分) Java开发前奏 计算机基本原理,Java语言发展简史以及开发环境的搭建,体验Java程序的开发,环境变量的设置,程序的执行过程,相 ...

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

    gdal proj4 vcglib assimp libjpg libpng osg libtess2 cesiumjs glm

  4. [NOIP2013 提高组] 华容道 P1979 洛谷

    [NOIP2013 提高组] 华容道 P1979 洛谷 强烈推荐,更好的阅读体验 经典题目:spfa+bfs+转化 题目大意: 给出一个01网格图,和点坐标x,y空格坐标a,b,目标位置tx,ty要求 ...

  5. C语言对"不定长"字符串数组的遍历

    一般来说,c语言的数组的初始化可以通过三种方式: {0},在声明时使用,如 int a[10]={0} 使用memset, memset(array,0,sizeof(array)) 用for循环赋值 ...

  6. perl 不支持多条件比较

    perl 不支持多条件比较,if(a < $var < b),这个条件表达式在C语言里面是支持的,但是在Perl中必须写成if(($var > a)&&($var & ...

  7. django 1.11.16之环境搭建

    django版本:django1.11.16  windows环境 python 3.6.3    !!!可先安装虚拟环境在进行环境搭建  1.安装django:pip install django= ...

  8. 分布式事物SAGA

    目录 概述SAGA SAGA的执行方式 存在的问题 重试机制 SAGA VS TCC 实现SAGA的框架 概述SAGA SAGA是1987 Hector & Kenneth 发表的论文,主要是 ...

  9. 我们一起来回顾一下Synchronized关键字吧

    多线程一直Java开发中的难点,也是面试中的常客,趁着还有时间,打算巩固一下JUC方面知识,我想机会随处可见,但始终都是留给有准备的人的,希望我们都能加油!!! 沉下去,再浮上来,我想我们会变的不一样 ...

  10. [no_code][Beta]事后分析

    设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们要解决的目前的手写表单的电子化问题,办公电子化问题的一个key问题.定义十分清楚: 输入: 手写表单 ...