Python实现获取磁盘剩余空间的2种方法


Posted in Python onJune 07, 2017

本文实例讲述了Python实现获取磁盘剩余空间的2种方法。分享给大家供大家参考,具体如下:

方法1:

import ctypes
import os
import platform
import sys
def get_free_space_mb(folder):
  """ Return folder/drive free space (in bytes)
  """
  if platform.system() == 'Windows':
    free_bytes = ctypes.c_ulonglong(0)
    ctypes.windll.kernel32.GetDiskFreeSpaceExW(ctypes.c_wchar_p(folder), None, None, ctypes.pointer(free_bytes))
    return free_bytes.value/1024/1024/1024 
  else:
    st = os.statvfs(folder)
    return st.f_bavail * st.f_frsize/1024/1024
print(get_free_space_mb('C:\\'),'GB')

方法2:

import win32com.client as com
def TotalSize(drive):
  """ Return the TotalSize of a shared drive [GB]"""
  try:
    fso = com.Dispatch("Scripting.FileSystemObject")
    drv = fso.GetDrive(drive)
    return drv.TotalSize/2**30
  except:
    return 0
def FreeSpace(drive):
  """ Return the FreeSpace of a shared drive [GB]"""
  try:
    fso = com.Dispatch("Scripting.FileSystemObject")
    drv = fso.GetDrive(drive)
    return drv.FreeSpace/2**30
  except:
    return 0
workstations = ['dolphins']
print ('Hard drive sizes:')
for compName in workstations:
  drive = '\\\\' + compName + '\\c$'
  print ('*************************************************\n')
  print (compName)
  print ('TotalSize of %s = %f GB' % (drive, TotalSize(drive)))
  print ('FreeSpace on %s = %f GB' % (drive, FreeSpace(drive)))
  print ('*************************************************\n')

运行效果如下图:

Python实现获取磁盘剩余空间的2种方法

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python创建文件和追加文件内容实例
Oct 21 Python
Python中实现对list做减法操作介绍
Jan 09 Python
浅析Python中的join()方法的使用
May 19 Python
详解MySQL数据类型int(M)中M的含义
Nov 20 Python
Python正则表达式教程之一:基础篇
Mar 02 Python
Python读取MRI并显示为灰度图像实例代码
Jan 03 Python
详解python中的index函数用法
Aug 06 Python
用python的turtle模块实现给女票画个小心心
Nov 23 Python
如何基于Python创建目录文件夹
Dec 31 Python
PyQt5中向单元格添加控件的方法示例
Mar 24 Python
python 读取.nii格式图像实例
Jul 01 Python
Python中np.random.randint()参数详解及用法实例
Sep 23 Python
Python2.7基于淘宝接口获取IP地址所在地理位置的方法【测试可用】
Jun 07 #Python
Python中音频处理库pydub的使用教程
Jun 07 #Python
python中defaultdict的用法详解
Jun 07 #Python
浅谈numpy中linspace的用法 (等差数列创建函数)
Jun 07 #Python
python面向对象_详谈类的继承与方法的重载
Jun 07 #Python
windows下python连接oracle数据库
Jun 07 #Python
Python使用剪切板的方法
Jun 06 #Python
You might like
PHP图片等比例缩放生成缩略图函数分享
2014/06/10 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
2014/09/29 PHP
Symfony2使用第三方库Upload制作图片上传实例详解
2016/02/04 PHP
PHP微信支付开发实例
2016/06/22 PHP
使用ucenter实现多站点同步登录的讲解
2019/03/21 PHP
laravel配置Redis多个库的实现方法
2019/04/10 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
javascript中对对层的控制
2006/12/29 Javascript
Tips 带三角可关闭的文字提示
2010/10/06 Javascript
javascript实现博客园页面右下角返回顶部按钮
2015/02/22 Javascript
jquery实现漂亮的二级下拉菜单代码
2015/08/26 Javascript
javascript基于prototype实现类似OOP继承的方法
2015/12/16 Javascript
JavaScript+html5 canvas实现本地截图教程
2020/04/16 Javascript
javascript深拷贝(deepClone)详解
2016/08/24 Javascript
es6 symbol的实现方法示例
2019/04/02 Javascript
JS中async/await实现异步调用的方法
2019/08/28 Javascript
vue轮播组件实现$children和$parent 附带好用的gif录制工具
2019/09/26 Javascript
[02:00]DAC2018主宣传片——龙征四海,剑问东方
2018/03/20 DOTA
Linux下远程连接Jupyter+pyspark部署教程
2019/06/21 Python
Django框架创建mysql连接与使用示例
2019/07/29 Python
Python倒排索引之查找包含某主题或单词的文件
2019/11/13 Python
python实现堆排序的实例讲解
2020/02/21 Python
html5 http的轮询和Websocket原理
2018/10/19 HTML / CSS
凯特·丝蓓英国官网:Kate Spade英国
2016/11/07 全球购物
Carter’s官方旗舰店:美国受欢迎的婴童服装品牌
2018/01/21 全球购物
写一个方法1000的阶乘
2012/11/21 面试题
存储过程的优点有哪些
2012/09/27 面试题
土地转让协议书范本
2014/04/15 职场文书
金融系毕业生自荐书
2014/07/08 职场文书
爱护公物演讲稿
2014/09/09 职场文书
运动会广播稿200字
2014/10/18 职场文书
万能检讨书开头与结尾怎么写
2015/02/17 职场文书
观后感开头
2015/06/19 职场文书
营销策划分析:怎么策划才能更好销量产品?
2019/09/04 职场文书
Nginx 匹配方式
2022/05/15 Servers
python数字图像处理:图像简单滤波
2022/06/28 Python