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读写ini配置文件方法实例分析
Jun 30 Python
解读! Python在人工智能中的作用
Nov 14 Python
python获取多线程及子线程的返回值
Nov 15 Python
python实现linux下抓包并存库功能
Jul 18 Python
python利用百度AI实现文字识别功能
Nov 27 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
Dec 10 Python
python GUI库图形界面开发之PyQt5简单绘图板实例与代码分析
Mar 08 Python
Jupyter Notebook的连接密码 token查询方式
Apr 21 Python
Python实现UDP程序通信过程图解
May 15 Python
python获取系统内存占用信息的实例方法
Jul 17 Python
5款实用的python 工具推荐
Oct 13 Python
如何用六步教会你使用python爬虫爬取数据
Apr 06 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操作sqlserver关于时间日期读取的小小见解
2009/11/29 PHP
PHP 验证码的实现代码
2011/07/17 PHP
PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解
2013/04/26 PHP
PHP容易忘记的知识点分享
2013/04/30 PHP
基于Zend的Config机制的应用分析
2013/05/02 PHP
PHP实现的memcache环形队列类实例
2015/07/28 PHP
微信公众平台DEMO(PHP)
2016/05/04 PHP
php自定义函数实现二维数组按指定key排序的方法
2016/09/29 PHP
PHP实现的注册,登录及查询用户资料功能API接口示例
2017/06/06 PHP
php获取'/'传参的值简单方法
2017/07/13 PHP
Prototype使用指南之base.js
2007/01/10 Javascript
11款新鲜的jQuery插件[附所有demo下载]
2011/01/24 Javascript
JavaScript高级程序设计 阅读笔记(十二) js内置对象Math
2012/08/14 Javascript
判断文档离浏览器顶部的距离的方法
2014/01/08 Javascript
javaScript中slice函数用法实例分析
2015/06/08 Javascript
Vue.js render方法使用详解
2017/04/05 Javascript
JavaScript设置名字输入不合法的实现方法
2017/05/23 Javascript
ES6新增的math,Number方法
2017/08/06 Javascript
nodejs async异步常用函数总结(推荐)
2017/11/17 NodeJs
解决Layui数据表格中checkbox位置不居中的方法
2018/08/15 Javascript
python删除指定类型(或非指定)的文件实例详解
2015/07/06 Python
python删除列表内容
2015/08/04 Python
浅谈Pycharm调用同级目录下的py脚本bug
2018/12/03 Python
python实现Dijkstra静态寻路算法
2019/01/17 Python
Django urls.py重构及参数传递详解
2019/07/23 Python
django实现用户注册实例讲解
2019/10/30 Python
Python定时任务APScheduler原理及实例解析
2020/05/30 Python
印度最大的时尚购物网站:Myntra
2018/09/13 全球购物
医药大学生求职简历的自我评价
2013/10/17 职场文书
护士自我介绍信
2014/01/13 职场文书
社会实践活动总结报告
2014/04/29 职场文书
房屋出租协议书范本(标准版)
2014/09/24 职场文书
教师党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
工程部岗位职责范本
2015/04/11 职场文书
Python实现天气查询软件
2021/06/07 Python
sql server删除前1000行数据的方法实例
2021/08/30 SQL Server