11-查看文件大小和文件夹内容
9.1.9 查看文件大小和文件夹内容
一旦有办法处理文件路径,就可以开始搜集特定文件和文件夹的信息了。 os.path
模块提供了一些函数,用于查看文件的字节数以及给定文件夹中的文件和子文件夹。
- 调用
os.path.getsize(path)
将返回path
参数中文件的字节数。 - 调用
os.listdir(path)
将返回文件名字符串的列表,包含path
参数中的每个文件(请注意,这个函数在os
模块中,而不是在os.path
中)。
下面是我在交互式环境中使用这些函数的结果:
>>> os.path.getsize('C:\\Windows\\System32\\calc.exe')
27648
>>> os.listdir('C:\\Windows\\System32')
['0409', '12520437.cpx', '12520850.cpx', '5U877.ax', 'aaclient.dll',
--snip--
'xwtpdui.dll', 'xwtpw32.dll', 'zh-CN', 'zh-HK', 'zh-TW', 'zipfldr.dll']
可以看到,我的计算机上的 calc.exe
程序是 27648
字节。在我的C:\Windows\ system32下有许多文件。如果想知道这个目录下所有文件的总字节数,就同时使用 os.path.getsize()
和 os.listdir()
:
>>> totalSize = 0
>>> for filename in os.listdir('C:\\Windows\\System32'):
totalSize = totalSize + os.path.getsize(os.path.join('C:\\Windows\\System32', filename))
>>> print(totalSize)
2559970473
当循环遍历C:\Windows\System32文件夹中的每个文件时, totalSize
变量依次增加每个文件的字节数。请注意,我在调用 os.path.getsize()
时,使用了 os.path.join()
来连接文件夹名称和当前的文件名。 os.path.getsize()
返回的整数添加到 totalSize
中。在循环遍历所有文件后,输出 totalSize
,看看C:\Windows\System32文件夹的总字节数。