python程序中调用其他程序的实现

 更新时间:2023年02月01日 08:58:50   作者:y6y6y666  
本文主要介绍了python程序中调用其他程序的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1.os.system函数

wget 是一个下载软件的程序,如果已经下载好该软件,可以用py调用该软件。假如该软件目录在d:\tools\wget

import os
cmd =r'd:\tools\wget http://mirrors.sohu.com/nginx/nginx-1.13.9.zip'
os.system(cmd)
 
print('安装完毕')

实际上有三个程序:

py、shell、wget

py程序在哪里就下载到那里。

缺点:1.只有调用程序执行完后才能向下运行,不能获取页面内容。

解决以上两种缺点可以使用subprocess模块。

2.subprocess模块

可以获取内容。比如获取磁盘使用情况。

subprocess中的Popen类。照着视频写了一遍,好像是权限不够,就在管理员终端运行了,但是因为视频的格式输出和我的不一样所以切割方式也不一样,经过反复调试,终于切割出来了。

from subprocess import PIPE,Popen
#返回的是Popen实例对象
proc=Popen(
    'fsutil volume  diskfree c:',
    stdin=None,
    stdout=PIPE,
    stderr=PIPE,
    shell=True)
#communicate方法返回 输出到  标准输出  和标准错误  的字节串内容
#标准输出设备和标准错误设备 当前都是本终端设备
#获取输出和错误
outinfo,errinfo=proc.communicate()
 
#注意返回的内容是bytes 不是 str,解码,将机器码解码为字符串
outinfo =outinfo.decode('gbk')
errinfo =errinfo.decode('gbk')
print(outinfo)
print('------------')
 
print(errinfo)
 
#结果分行输出
outputList=outinfo.splitlines()
print(outputList)
#剩余量
#第0(1)行,split用于切片,replace用于重写,strip()用于将字符串的首尾中空格删除
free=int(outputList[0].split(':')[1].replace(',',"").strip().split(' ')[0])
 
#总空间
total=int(outputList[1].split(':')[1].replace(',',"").strip().split(' ')[0])
 
print('使用百分比:{:.2%}'.format(free/total))
if(free/total<0.1):
    print('!!剩余空间告急!!!')
 
else:
    print('剩余空间足够')

终于写完了。。。。。。。。。。。

subprocess可以同实进行下边的任务。

from subprocess import Popen
proc=Popen(
        args='wget  http://mirrors.sohu.com/nginx/nginx-1.13.9.zip',
        shell=True
    )
 
print('让他下载,我们先作其他的的事情')

到此这篇关于python程序中调用其他程序的实现的文章就介绍到这了,更多相关python程序调用其他程序内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • 浅谈Python列表嵌套字典转化的问题

    浅谈Python列表嵌套字典转化的问题

    这篇文章主要介绍了浅谈Python列表嵌套字典转化的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • 如何写python的配置文件

    如何写python的配置文件

    在本篇文章里小编给大家分享了关于python写配置文件方法,对此有兴趣的朋友们可以学习参考下。
    2020-06-06
  • python执行js脚本报错CryptoJS is not defined问题

    python执行js脚本报错CryptoJS is not defined问题

    这篇文章主要介绍了python执行js脚本报错CryptoJS is not defined问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • Python中使用Minio实现图像或视频文件存储的步骤

    Python中使用Minio实现图像或视频文件存储的步骤

    本文章向大家介绍了Minio这一款简易的云存储服务器,并讲述了如何在Python中去使用Minio,实现了视频文件的上传和获取,感兴趣的朋友一起看看吧
    2025-02-02
  • Python实现读取csv文件并进行排序

    Python实现读取csv文件并进行排序

    这篇文章主要为大家详细介绍了一个python简单案例并进行代码展示,本文的案例是利用pandas库实现读取csv文件并按照列的从小到大进行排序,需要的可以参考一下
    2023-02-02
  • python在OpenCV里实现投影变换效果

    python在OpenCV里实现投影变换效果

    这篇文章主要介绍了python在OpenCV里实现投影变换效果,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • Python3批量生成带logo的二维码方法

    Python3批量生成带logo的二维码方法

    今天小编就为大家分享一篇Python3批量生成带logo的二维码方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • Python列表删除所有出现元素的两种方法

    Python列表删除所有出现元素的两种方法

    今天写代码的时候遇到一个小问题,Python中要删除列表中的所有元素,本文主要介绍了Python列表删除所有出现元素的两种方法,非常具有实用价值,需要的朋友可以参考下
    2023-06-06
  • 使用python-pptx创建PPT演示文档功能实践

    使用python-pptx创建PPT演示文档功能实践

    这篇文章主要介绍了使用python-pptx创建PPT演示文档功能实践,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Python拼接字符串的7种方法总结

    Python拼接字符串的7种方法总结

    这篇文章主要给大家总结介绍了关于Python拼接字符串的7种方法,分别是来自C语言的%方式、format()拼接方式、() 类似元组方式、面向对象模板拼接、join()拼接方式以及f-string方式,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-11-11

最新评论