首页 / PYTHON / Python--文件的基本操作
Python--文件的基本操作
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python--文件的基本操作,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2827字,纯文字阅读大概需要5分钟。
内容图文
![Python--文件的基本操作](/upload/InfoBanner/zyjiaocheng/595/15dbb7c21c954ef59d0e0407505648f2.jpg)
1. 文件的基本操作
1.1 文件的打开和关闭
1.1.1 文件的打开
open()函数用于打开文件,该函数调用成功会返回一个文件对象。
常用的文件打开模式有r、w、a、b、+,这些模式的含义分别如下:
1.1.2 文件的关闭
关闭文件。关闭后文件不能再进行读写操作。
对文件进行读写操作后,关闭文件是一个很好的习惯。
关闭文件可以使用文件对象的close()方法实现。语法结构:
file.close()
file为打开的文件对象。
1.2 文件的读取和写入
1.2.1 文件的读取
read (size)方法:从指定文件中读取指定数据
参数size表示设置的读取数据的字节数,
若该参数缺省,则一次读取指定文件中的所有数据。
示例:
import os.path
file = open("resources/test.txt", mode="r")
print(file.read())
运行结果:
1.2.2 文件的写入
write(string)方法,从文件写入数据。
import os.path
file = open("resources/test.txt", mode="a")
file.write("aaa")
运行结果:
1.3 按行对文件进行读写
1.3.1 按行对文件进行写入
writelines()方法:
该方法需要通过制定一个字符串类型的列表,
该方法会将列表中的每一个元素值作为单独的一行写入文件。
import os.path
fo = open("resources/test.txt", "w")
print("读写的文件名:", fo.name)
seq = ["Hello\n", "life is short\n", "I want to learn python\n"]
line = fo.writelines(seq)
fo.close()
运行结果:
1.3.2 按行对文件进行读取
1.3.2.1 readline()方法
该方法返回一个字符串,用于文件指针当前位置读取一行文本,即遇到行结束符停止读取文本,但读取的内容包含了结束符。
示例:
import os.path
f = open("resources/test.txt")
while True:
line = f.readline()
if line == '':
break
else:
print(line)
f.close()
运行结果:
1.3.2.2 readlines() 方法
从文件指针当前的位置读取后面所有的数据,
并将这些数据按行结束符分隔后,放到列表中返回。
import os.path
f = open("resources/test.txt", "r")
datas = f.readlines()
print(datas)
print(type(datas))
for data in datas:
print(data)
f.close()
运行结果:
1.3.2.3 for循环
import os.path
f = open("resources/test.txt", "r")
for data in f:
print(data)
f.close()
运行结果:
1.3.2.4 消除多余的空白符
为何会出现这些空白行呢?因为在这个文件中,
每行的末尾都有一个看不见的换行符,而print 语句也会加上一个换行符,
因此每行末尾都有两个换行符:一个来自文件,另一 个来自print 语句。
要消除这些多余的空白行,可在print 语句中使用rstrip() :
import os.path
f = open("resources/test.txt", "r")
for data in f:
print(data.rstrip())
f.close()
**运行结果: **
1.4 使用fileinput对象读取大文件操作
如果需要读取一个大文件,使用readlines()方法会占用太多的内存,因为该方法会
一次性将文件的所有内容读取到列表中,列表中的数据都需要放到内存中,所有非常占
内存。为了解决这个问题,可以使用for循环和readline()方法逐行读取,也可以使用
fileinput模块中的input()方法进行读取。
input()方法返回一个fileinput对象,通过fileinput对象的相应方法可以对指定
文件进行读取,fileinput对象使用的缓存机制,并不会一次性读取所有文件的内容
所有比readlines()方法更节省内存资源
示例: 使用fileinput输出当前行号和行内容
import fileinput
for line in fileinput.input("resources/test.txt"):
line_no = fileinput.lineno()
print(line_no, line.rstrip())
运行结果:
内容总结
以上是互联网集市为您收集整理的Python--文件的基本操作全部内容,希望文章能够帮你解决Python--文件的基本操作所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。