文件读写
文件读写,是Python代码调用电脑文件的主要功能,能被用于读取和写入文本记录、音频片段、Excel文档、保存邮件以及任何保存在电脑上的东西。
①读取文件
首先,我们在桌面新建一个text文件,然后再文件夹中新建一个txt的文件,随便添加文字。再同一文件夹下再新建.py文件
代码:
【第一步】使用Open()函数打开文件。
file1这个变量是存放读取的文件数据的,以便对文件进行下一步的操作。
open()函数中有三个参数:‘/Users/Aerben/Desktop/text/abc.txt'——文件的保存地址;文件存放的地址有两种:相对路径和绝对路径,拖带VScode的终端获取的地址是绝对路径。绝对路径就是最完整的路径,相对路径指的是相对于当前文件夹得路径,也就是你编写得这个py文件所放得文件夹路径。如果你要打开得文件和open.py在同一个文件夹里,这时只要使用相对路径就可以了,而要使用其他文件夹的文件则需要使用绝对路径。
但是,在windows系统里,常用来表示绝对路径,/来表示相对路径。但是由于在python中是转义字符,所以时常会有冲突。为了避免错误,windows的绝对路径通常要做处理,写成一下格式:
获取文件的相对路径还有一个小窍门,用VS Code打开文件夹,在文件点击右键。选择:
'r':第二个参数表示打开文件时的模式。这里是字符串'r',表示read,表示我们以读的模式打开了这个文件。
encoding = 'utf-8':表示的是返回的数据采用何种编码,一般采用utf-8或者gbk。注意这里是encoding而不是encode
【第二步】读
打开文件file1 之后,就可以用read()函数进行读取的操作。用print()函数打印出读取的数据
》》》
你发现,打印出了abc.txt文件里面的内容,它会读成字符串的数据形式。
【第三步】 关闭文件,使用的是close()函数
为什么要关闭文件呢?1.计算机能够打开的文件数量是有限制的,open()过多而不close(),就不能再打开文件了。2.能保证写入得内容已经在文件里被保存好了。
总结图:
写文件
【第一步】以写入的模式打开文件
open()中还是三个参数,其他都一样,除了要把第二个参数改为'w',表示write,即以写入的模式打开文件。
【第二步】往文件中写入内容,使用write()函数
运行程序后发现原来的数据不见了。怎么回事呢?
原因是因为,'w'写入模式会清空掉文件,然后再写入。如果你只是想增加东西,而不想完全覆盖原文件的化,就要使用'a'模式,表示append
》》》
【第三步】关闭文件,使用close()函数
小tip:1.write()函数写入文本文件的也是字符串 。2.在'w'和'a'模式下,如果你打开的文件不存在,那么open()函数会自动帮你创建一个
写文件的三步法总结:
如果我们想要写入的是音频和图片,该怎么做呢?
我们看到有'wb'的模式,它的意思是以二进制的方式打开一个文件用于写入。因为图片和音频是以二进制的形式保存的,所以使用wb模式就好。
补充一个用法:
为了避免打开文件后忘记关闭,占用资源或当不能正确关闭文件的时候,我们可以用到关键字with,即with open('......') as ......例如:
新函数 readlines(),也就是‘按行读取’。
split()函数,它会按空格把字符串里面的内容分开。
join()函数,把字符串合并起来。join()的用法是str.join(sequence),str代表在这些字符串之中,你要用什么字符串连接。上面有两个例子,一个是空字符串,一个是横杠,sequence代表数据序列,在这里是列表a