python 仪表 驱动 代码_有没有办法列出所有可用的python驱动器号?

由于我的笔记本电脑领域没有安装win32api,所以我使用wmic使用此解决方案:

import subprocess

import string

#define alphabet

alphabet = []

for i in string.ascii_uppercase:

alphabet.append(i + ':')

#get letters that are mounted somewhere

mounted_letters = subprocess.Popen("wmic logicaldisk get name", shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)

#erase mounted letters from alphabet in nested loop

for line in mounted_letters.stdout.readlines():

if "Name" in line:

continue

for letter in alphabet:

if letter in line:

print 'Deleting letter %s from free alphabet %s' % letter

alphabet.pop(alphabet.index(letter))

print alphabet

或者,您可以从这两个列表中获得不同之处,比如这个更简单的解决方案(在以挂载字母形式启动wmic子进程之后):

#get output to list

mounted_letters_list = []

for line in mounted_letters.stdout.readlines():

if "Name" in line:

continue

mounted_letters_list.append(line.strip())

rest = list(set(alphabet) - set(mounted_letters_list))

rest.sort()

print rest

这两种解决方案速度都很快,但我想由于某种原因,设置列表更好,对吧?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值