❤️Python文件操作保姆式教程❤️,计算机那么多文件,你绕不过这一关的!

Posted 退休的龙叔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了❤️Python文件操作保姆式教程❤️,计算机那么多文件,你绕不过这一关的!相关的知识,希望对你有一定的参考价值。

😏前言

在Python写代码做项目时,我们往往需要对多个文件进行操作,在现在的源代码文件中怎么导入其他文件?怎么对其他文件进行操作?这都是经常要面临的问题,尤其是爬虫,爬到的数据放在哪里?用到的时候怎么调出来?

这就涉及到了Python的文件操作知识了,我们不可能永远都只会在一个源文件上做所有的操作,这也是必须掌握的一个知识板块。

与此同时,我的Python新手入门教程系列文章也已经快更新完了,欢迎大家的订阅:

Python新手入门教程系列文章专栏


文章目录


💼一、文件的定义和操作

计算机中的文件通常是指计算机硬盘为载体的、存储在计算机中的信息集合,主要的表现形式为视频、音频、图片以及文档四类,比如执行性文件.exe、文档文件.txt、网页文件.html等等。


💼二、文件的基本操作

在现实中,我们对文件进行操作可以大致总结为“打开→操作(阅读、删除、修改等)→保存→关闭”,在Python当中依然是如此,在用Python开始文件操作之前,我们先学几个方法。

1.open(name,mode) ----打开文件

这是Python打开文件的方法,用于打开一个文件,返回的是一个文件对象。

name指的是文件名,一定要写全,何为写全?就是要写清楚 存储路径+文件名+后缀 。

为何要写这么全?因为就算是相同的存储路径下,文件名相同的文件也可能不止一个,只要后缀不一样,计算机是允许存在同名文件,所以不写全的话,计算机是不知道你指的是谁

mode是打开文件的模式,默认是r,也就是只读的方式。mode的方式有很多,比如读、写等等,后面我们会讲到。


2.write(“内容") ------写

顾名思义,就是向文件对象中写入内容。


3.read() -------读

向文件中写入内容,括号里面可以写数字也可以不写,不写的话默认是读取全部内容,写数字则表示读取X个字符,比如说read(6)则读取文件对象的6个字符。


4.close() ------关闭文件

关闭文件的方法,如果你在进行文件操作之后不进行关闭文件,则文件一直处于打开和操作的状态,会占用内存。


5.案例

在了解了这4个基本方法之后,我们来开始做1个小案例:新建一个项目,然后新建一个名为“文件”的Python文件用于写代码,然后我们用写的方式向1个叫“文件1”的.txt文件写入“hello world”,代码如下:

f = open("文件一.txt",'w') #以写入的方式,打开文件
f.write("hello world")  #向文件一中写入内容
f.close()   #关闭文件

前面讲过 open() 这个方法返回的是一个文件对象,所以我们用f进行接收一下,这是没有运行前的界面:

运行后:

粉丝福利

运行后生成了一个新的名为“文件一.txt”文件,打开它之后就能看到我们输入的内容。进行写操作时,如果文件不存在,则默认会创建一个。

同样的,我们也可以对这个文件进行读的操作:

f = open("文件一.txt",'r') #以写入的方式,打开文件
print(f.read()) #读文件
f.close()   #关闭文件

运行结果:

hello world

这就是一个最基本的文件操作流程。

在这里要注意一点,open(name,mode)在一开始写的时候,mode就已经决定了你能做什么操作,也就是说如果你在开始写代码的时候写的是:

f = open("文件一.txt",'r')	#只读的方式打开文件

那么后面你想进行write()的写操作是会报错的,因为mode里面声明了r只读模式,所以你没有写的权限,这一点要注意一下。


6.mode的其他操作模式

mode中有很多的操作模式,我们以表格的方式来看看:

模式描述
r以只读的形式打开文件,文件的指针在开头
r+读写,文件指针在开头
rb以二进制的形式,只读文件指针在开头
w只写,文件不存在,则创建新的,存在则覆盖,指针在开头
w+读写,文件不存在,则创建新的,存在则覆盖,指针在开头
wb只写,以二进制的形式
a追加模式,文件指针在结尾
a+读写,不存在则创建,存在直接追加
ab以二进制形式追加

指针在这里可以理解为光标,它在哪里,你的操作就从哪里开始。

举例:新建1个名为 “test” 的.txt文件,第一次向里面写入aaa,第二次向里面写入bbb。

f = open("test.txt", 'a+')
f.write("aaa")
f.close()

f = open("test.txt")  # 默认只读模式
print(f.read())  # 打印内容

f = open("test.txt", 'a+')
f.write("bbb")
f.close()

f = open("test.txt")  # 默认只读模式
print(f.read())  # 再次打印内容

运行结果:

aaa
aaabbb

💼三、文件的方法与属性

1.file的对象属性

有三个常用的方法可用于查看文件对象的属性:

1. closed
   	如果文件对象已关闭,返回True,否则返回False
2. mode
   	返回文件对象的访问模式
3. name
   	返回文件的名称

案例:对文件进行操作(随意),查看被操作的文件名、操作模式和是否关闭。

f = open("test.txt", 'a+')
f.write("aaa")
f.close()

print(f.closed) #查看是否关闭
print(f.name)   #查看文件名字
print(f.mode)   #查看操作模式

运行结果:

True
test.txt
a+

2.file的对象方法

文件的方法有很多,前面我们已经讲过一点,比如read()和write(),但还有一些常用的方法需要掌握的,比如下面的:

1. close()
		关闭文件---非常重要
2. read([count])
		读取文件中的内容
		count:字节数量
3. readlines()
		读取所有内容,打包成列表
4. readline()
		读取一行数据,追加读取,读取过的不能再次读取
5. seek(offset,[from])
		修改指针的位置:从from位置移动了offset个字节
		from:0则表示从起始位置,1则表示从当前位置开始,2则表示从末尾开始
		oofset:要移动的字节数
6. write()
		向文件中写入内容

举例:向test.txt文件中写入aaabbbccc,将文件中的内容输出为列表。

f = open("test.txt", 'a+')
f.write("aaabbbccc")
f.close()

f = open("test.txt")
print(f.readlines())
f.close()

运行结果:

['aaabbbcccaaabbbccc']

💼四、os模块

os模块是一个用于访问操作系统的模块,在进行文件操作的时候常会用到它。模块在使用之前要进行导入。

import os

1.关于文件的功能

1.os.rename(原文件名,新的文件名)	——文件重命名
2.os.remove(文件名)	——删除文件
	如果不说明路径,则在源代码所在文件夹下寻找,寻找不到会报错。
	若想删除指定文件夹下的文件,文件名则需要具体路径,例如 os.remove(r"D:\\test_1\\文件名"),r防止斜杠发生转义

举例:已有文件test1.txt,将其修改成test20.txt。

import os
os.rename("test1.txt","test20.txt")

运行结果:


2.文件夹的功能

1.os.mkdir(文件夹名)	——创建文件夹
2.os.rmdir(文件夹名)	——删除文件夹
3.os.getced()	——获取当前目录
4.os.chdir(目录)	——切换目录
5.os.listdir(目录)	——获取当前文件夹下所有的文件或者文件夹,返回一个列表
	os.listdir("aa") #获取aa文件夹下的所有文件或文件夹,返回一个列表

举例:在现有文件夹venv里面新建一个新建文件夹。

import os

os.chdir(r"D:\\文件\\venv")  #切换到venv文件夹下,r是防止转义
os.mkdir("新建文件夹")   #在venv文件夹下创建一个新建文件夹
print(os.getcwd())  #输出当前目录位置

运行结果:


🎓结语

关于文件其实还有很多的方法,用到的时候可以去网上查查资料去深入了解,比如说os模块里面还有其他的方法,我们可以ctrl+鼠标左键进入模块内部查看,比如说不止os模块,还有os.path这个模块也是比较常用的文件操作模块。

那么今天的分享就先到这里,看完可以收藏起来多练练,文件操作也就不再困难了。

准备了很久,我的公众号终于是开始运作了,关于我的技术和经验文章都会优先在上面进行推送,目前还在不断完善中,欢迎大家的关注。

以上是关于❤️Python文件操作保姆式教程❤️,计算机那么多文件,你绕不过这一关的!的主要内容,如果未能解决你的问题,请参考以下文章

❤️万字Python基础保姆式教学❤️,小白快速入门Python!

❤️万字Python基础保姆式教学❤️,小白快速入门Python!

❤️Python异常捕获和处理❤️保姆式教学,代码异常报错也能那么和谐且个性!

❤️Python异常捕获和处理❤️保姆式教学,代码异常报错也能那么和谐且个性!

29.❤️保姆级教程带你做一个属于自己的博客网站❤️纯python实现&&附带源码

29.❤️保姆级教程带你做一个属于自己的博客网站❤️纯python实现&&附带源码