Python文件的使用

要点:Python能够以文本和二进制两种形式处理文件。

1.文件的打开模式,如表1:

 注意:使用open()函数打开文件,文件使用结束后耀使用close()方法关闭,释放文件的使用授权。

 2.文件的读写

2.1文件的写入方法,如表2:

 2.1.1示例一

 fname =input("请输入要写入的文件:")
#以追加形式写入文件
fo = open (fname,"w+")
#定义列表
ls = ["唐诗","宋词","元曲"]
fo.writelines(ls)
#从文件开头开始写入
fo.seek(0)
#循环打印出写入文件中的内容
for line in fo:
print(line)
#关闭文件(避免资源占用)
fo.close()

2.1.2运行结果

2.2文件的读取方法,如表3:

 注意:文件的换行符

1.如果采用二进制的方式打开文件,换行符只是一个符号,对应一个字节,表示为“\n”;

2.如果采用文本方式打开文件,换行符表示一行的结束,辅助程序对文件的处理。文件的换行符是真实存在的一个字符。

2.2.1示例二

 fname1 =input("请输入要打开的文件:")
# 以只读取的方式读取文件内容
fo1 = open (fname1,"r")
fo1.readlines()
# 从文件开头开始读取文件内容
fo1.seek(0)
# 循环打印出文件的内容
for line1 in fo1:
print(line1)
# 关闭文件(避免资源占用)
fo1.close()

2.2.2运行结果

3.由于在实际编码中,对文件的操作是十分频繁的,编写代码时,如果按照以往的规则,靠手动关闭文件,难免会出现忘记关闭文件的现象,因此,Python在技术上提供了自动关闭文件的功能,减轻程序员的代码编写负担,也避免忘记关闭文件,而造成的资源浪费和程序稳定。(小型操作文件时,不关闭文件,对程序的影响较小。但在大型的系统中,如果文件不及时关闭,会导致系统的崩溃)

 3.1优化后的代码如下:

 # 文件读写编码格式
# 'demo.txt'文件名,读取方式,文本格式
with open('demo.txt','r',encoding='utf-8') as f:
for line in f.readlines():
# end=''控制文本中换行时不读取出换行号
print(line,end='')
# 定义列表
ls = ["sunny","dghahdfg"]
with open('demo.txt','a',encoding='utf-8') as f:
for line in ls:
# 写入文件
f.write('{}\n'.format(line))

4.小练习----统计文件中内容的行数(三种方式实现)

 with open('demo.txt','r',encoding='utf-8') as f:
for line in f.readlines():
# end=''控制文本中换行时不读取出换行号
print(line,end='')
# 计算行数1
# 文档中的内容以行为单位为列表的一个元素,存入列表
ls=f
# 调用计算列表元素个数函数len()统计行数
print(len(ls))
# 计算行数2
count = len(open('demo.txt', 'r').readlines())
print(count)
# 计算行数3
count = 0
for index, line in enumerate(open('demo.txt','r')):
count += 1
print(count)

Python文件的读写操作的更多相关文章

  1. [ Python ] 文件的读写操作

    1. 文件读写操作 读写文件是最常见的 IO 操作, Python 内置了读写文件的函数.在磁盘上读写文件的功能是由操作系统提供的,所以读写文件是请求操作系统打开一个文件对象(通常称为文件描述符),然 ...

  2. 『无为则无心』Python基础 — 41、Python中文件的读写操作(一)

    目录 1.文件操作步骤 2.文件的读写操作 (1)文件的打开 (2)打开文件模式 (3)获取一个文件对象 (4)关于文件路径 1.文件操作步骤 当我们要读取或者写入文件时,我们需要打开文件,在操作完毕 ...

  3. python使用装饰器对文件进行读写操作'及遍历文件目录

    '''使用装饰器对文件进行读写操作''' # def check_permission(func): # '''演示嵌套函数定义及使用''' # def wrapper(*args,**kwargs) ...

  4. Python中xlrd、xlwt、win32com模块对xls文件的读写操作

    # -*- coding: utf-8 -*- #xlrd和xlwt只支持xls文件读写,openpyxl只支持xlsx文件的读写操作 import xlrd import xlwt import w ...

  5. INI 文件的读写操作

    在C#中对INI文件进行读写操作,在此要引入using System.Runtime.InteropServices; 命名空间,具体方法如下: #region 变量 private static r ...

  6. Android 对 properties文件的读写操作

    -. 放在res中的properties文件的读取,例如对放在assets目录中的setting.properties的读取:PS:之所以这里只是有读取操作,而没有写的操作,是因为我发现不能对res下 ...

  7. C++学习48 对ASCII文件的读写操作

    如果文件的每一个字节中均以ASCII代码形式存放数据,即一个字节存放一个字符,这个文件就是ASCII文件(或称字符文件).程序可以从ASCII文件中读入若干个字符,也可以向它输出一些字符. 对ASCI ...

  8. Delphi- ini文件的读写操作

    一.读INI文件示例 procedure TForm1.FormCreate(Sender: TObject); Var MyIni :Tinifile; glAppPath :string; beg ...

  9. android报错及解决2--Sdcard进行文件的读写操作报的异常

    报错描述: 对Sdcard进行文件的读写操作的时候,报java.io.FileNotFoundException: /sdcard/testsd.txt (Permission denied),在往S ...

随机推荐

  1. [转帖]为什么需要 Zookeeper

    为什么需要 Zookeeper 柳树 学习&思考&写作 | 公众号:柳树的絮叨叨 ​关注他 童话 . 沈万马 等 351 人赞同了该文章 很多中间件,比如Kafka.Hadoop.HB ...

  2. 为什么Apache Kafka如此受欢迎

    1.目标 今天,在这个Kafka教程中,我们将学习所有Kafka功能,如可扩展性,可靠性,耐用性,这些都说明了Kafka如此受欢迎的原因.我们将详细讨论Kafka的每个功能.但在那之前让我们明白什么是 ...

  3. 在Jenkins的pipeline项目中运行jmeter测试-教程

    Jenkins 2.0的发布引入了一种新的项目类型 - Pipeline,以前只能通过插件获得.从Jenkins 2.0开始,Pipeline项目开箱即用. 与通常的“自由式”项目相比,管道构建具有几 ...

  4. day32——进程、操作系统

    day32 进程的基础 程序 一堆静态的代码文件 进程 一个正在运行的程序进程.抽象的概念 被谁运行? 由操作系统操控调用交于CPU运行 ​ 操作系统 管理控制协调计算机中硬件与软件的关系 操作系统的 ...

  5. jenkins配合dockerfile部署项目

    前言 本节需要对jenkinsfile有点了解,对dockerfile有点了解,对shell有点了解,对docker有点了解 执行流程 jenkins拉取代码仓库中的代码 jenkins执行jenki ...

  6. R学习笔记1 介绍R的使用

    R脚本的一次执行叫做一个会话(Session),可以通过函数quit()退出当前的会话 quit(save = "default", status = 0, runLast = T ...

  7. [LOJ3048] [十二省联考2019] 异或粽子

    题目链接 LOJ:https://loj.ac/problem/3048 洛谷:https://www.luogu.org/problemnew/show/P5283 Solution 考虑每个子串都 ...

  8. 微软.NET CORE 3.0 预览版 7 发布:大幅减少 SDK 空间大小

    据悉,这个预览版是 .Net Core 3 中重要的版本,可以视为原计划在 7 月发布的 RC 版本 (引自微软 .NET Core 首席 Program Manager Richard 先生原话), ...

  9. C# HtmlAgilityPack+Selenium爬取需要拉动滚动条的页面内容

    现在大多数网站都是随着滚动条的滑动加载页面内容的,因此单纯获得静态页面的Html是无法获得全部的页面内容的.使用Selenium就可以模拟浏览器拉动滑动条来加载所有页面内容. 前情提要 C#HtmlA ...

  10. .net core使用ocelot---第五篇 服务质量

    简介 .net core使用ocelot---第一篇 简单使用  .net core使用ocelot---第二篇 身份验证使用 .net core使用ocelot---第三篇 日志记录  .net c ...