python3写文件_python读写文件(三)

今天继续分享读写文件,之前说了那么多,都没说如何查看文件大小和文件夹内容

今天我就给大家说一下。

查看文件大小和文件夹内容

一旦有办法处理文件路径,就可以开始搜集特定文件和文件夹的信息。os.path 模 块提供了一些函数,用于查看文件的字节数以及给定文件夹中的文件和子文件夹。调用 os.path.getsize(path)将返回 path 参数中文件的字节数。

调用 os.listdir(path)将返回文件名字符串的列表,包含 path 参数中的每个文件 (请注意,这个函数在 os 模块中,而不是 os.path)。

>>> os.path.getsize('C:\\Windows\\System32\\calc.exe')

776192

>>> 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 程序是 776192 字节。在我的 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)

1117846456

当循环遍历 C:\Windows\System32 文件夹中的每个文件时,totalSize 变量依次增加 每个文件的字节数。请注意,我在调用 os.path.getsize()时,使用了 os.path.join()来连接文件夹名称和当前的文件名。os.path.getsize()返回的整数添加到 totalSize 中。在循环遍 历所有文件后,我打印出 totalSize,看看 C:\Windows\System32 文件夹的总字节数。

接下来再说一下如何检查路径有效性

如果你提供的路径不存在,许多 Python 函数就会崩溃并报错。os.path 模块提供了一些函数,用于检测给定的路径是否存在,以及它是文件还是文件夹。

如果 path 参数所指的文件或文件夹存在,调用 os.path.exists(path)将返回 True, 否则返回 False。

如果 path 参数存在,并且是一个文件,调用 os.path.isfile(path)将返回 True,否 则返回 False。

如果 path 参数存在,并且是一个文件夹,调用 os.path.isdir(path)将返回 True, 否则返回 False。

下面是我在交互式环境中尝试这些函数的结果:

>>> os.path.exists('C:\\Windows')

True

>>> os.path.exists('C:\\some_made_up_folder')

False

>>> os.path.isdir('C:\\Windows\\System32')

True

>>> os.path.isfile('C:\\Windows\\System32')

False

>>> os.path.isdir('C:\\Windows\\System32\\calc.exe')

今天就分享到这,晚安!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值