我们之前练习时所编写的程序,大多用变量来保存数据,当程序运行结束,我们计算机中的数据也随之消失。如果我们希望程序运行结束后数据仍然保留,则需要将数据保存到文件中。本节将讲解如何在我们的计算机上创建、读取和保存文件。OS模块的使用
构建文件路径什么是文件路径?所谓文件路径指明了文件在计算机上的位置。比如Windows系统下 C:UsersHicoderPictures 指的是我们计算机中C盘中用户文件夹下的Hicoder文件夹下的图片文件夹。如下图:
![Python中级教程——读写文件(一) Python中级教程——读写文件(一)](https://static.linjianming.com/wp-content/uploads/2022/01/1643273403-1c8cbdab34a0bb0cfca9e39def915c0e.jpeg?imageView2/2/w/1500/interlace/1/q/70#)
几点注意:1、在Windows系统中,路径是使用反斜杠来分隔文件夹。在OS X 和 Linux 系统中,使用正斜杠作为路径分隔符来分隔文件夹。2、Windows系统有盘符的概念,即C盘、D盘等。OS X 和 Linux 系统没有盘符概念,统一称作文件夹或者目录。3、第一个文件夹通常称之为根文件夹或根目录。Windows系统第一个文件夹为某个盘,如C盘。OS X 和 Linux 系统第一个文件夹则为路径上第一个文件夹。构建文件路径os.path.join() 函数用来构建文件路径,将单个文件或文件夹名称传递给它,将返回一个文件路径字符串。
![Python中级教程——读写文件(一) Python中级教程——读写文件(一)](https://static.linjianming.com/wp-content/uploads/2022/01/1643273404-cf87c54526aca8265786a2ca7a23bd9b.jpeg?imageView2/2/w/1500/interlace/1/q/70#)
如果你在交互式环境中,即IDLE中输入代码 os.path.join('C:\', 'Users', 'Hicoder', 'Pictures') 运行,得到的结果为:'C:\Users\Hicoder\Pictures' 。多了一个反斜杠,为转义字符。
获取当前文件路径os.getcwd() 函数可以获取当前工作路径的字符串。
![Python中级教程——读写文件(一) Python中级教程——读写文件(一)](https://static.linjianming.com/wp-content/uploads/2022/01/1643273404-c20a8e0ee369827f13db491d7c208de9.jpeg?imageView2/2/w/1500/interlace/1/q/70#)
将上面代码保存到一个文件,将其放在你电脑的某个文件夹,用IDLE打开该文件并运行,将显示当前文件路径。尝试一下吧。
创建新文件夹os.makedirs() 函数可以创建新的文件夹。该函数接受你指定的文件路径,从而创建文件夹。
![Python中级教程——读写文件(一) Python中级教程——读写文件(一)](https://static.linjianming.com/wp-content/uploads/2022/01/1643273405-05ec86a0ae419455ca18afc0af7bf7c9.jpeg?imageView2/2/w/1500/interlace/1/q/70#)
注意:该函数只能创建文件夹,无法创建文件查看C盘,成功生成路径:C:python3-tutoriallesson-00
查看文件大小os.path.getsize(file_path) 函数将返回所给参数 file_path 中文件的字节数(文件大小)。我们先手动在上面创建的文件夹中创建一个空的文本文件 python3.txt。
![Python中级教程——读写文件(一) Python中级教程——读写文件(一)](https://static.linjianming.com/wp-content/uploads/2022/01/1643273405-05ec86a0ae419455ca18afc0af7bf7c9.jpeg?imageView2/2/w/1500/interlace/1/q/70#)
在 python3.txt 文件中添加一些字符,保存。再查看文件大小。试一试。
查看文件夹内容os.listdir(path) 将返回所给文件夹中所有的文件或文件夹。我们先手动在上面创建的文件夹 lesson-00 中创建一些文件和文件夹。随意创建。我创建的:
![Python中级教程——读写文件(一) Python中级教程——读写文件(一)](https://static.linjianming.com/wp-content/uploads/2022/01/1643273405-7c5c562325a43db1919361e5d548fe3b.jpeg?imageView2/2/w/1500/interlace/1/q/70#)
![Python中级教程——读写文件(一) Python中级教程——读写文件(一)](https://static.linjianming.com/wp-content/uploads/2022/01/1643273407-ee15033cacfe8fc2c84506b0fcd6ce95.jpeg?imageView2/2/w/1500/interlace/1/q/70#)
实战-编写一个程序统计某个文件夹中所有文件的大小
我们先将上面创建的 lesson-00 文件夹中的文件添加一些内容,以供下面测试。
![Python中级教程——读写文件(一) Python中级教程——读写文件(一)](https://static.linjianming.com/wp-content/uploads/2022/01/1643273407-6972077bd3e3360f05c9af4b2f91f434.jpeg?imageView2/2/w/1500/interlace/1/q/70#)
将上面代码保存到一个文件中,运行看看结果如何。
@学点Python本作品采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)进行许可.
2 评论
日暮归途
2022-01-28🙂
日暮归途
2022-01-28很不错的样子