前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python下的subprocess.call()使用和注意事项

Python下的subprocess.call()使用和注意事项

作者头像
一个有趣的灵魂W
发布2020-09-15 16:21:45
8K0
发布2020-09-15 16:21:45
举报
文章被收录于专栏:一个有趣的灵魂W

一个有趣的灵魂W

Python虽然有许多优秀的第三方库,但在实际使用的时候免不了使用一些cmd调用的程序,毕竟这类程序比较底层,更快、也更稳定。比如GDAL、FFmpeg、 ImageMagick等。

利用Python调用cmd的方法也有不少,例如os.systemsubprocess.call(),本次主要介绍后者。同时也会说明一些避雷的注意事项。

subprocess 模块允许我们启动一个新进程,并连接到它们的输入/输出/错误管道,从而获取返回值。其中的subprocess.call()则可以调用windows系统cmd命令行执行额外的命令。

在使用subprocess.call()之前,需要保证调用的软件已经添加在系统的环境变量路径中。如GDAL:

我以GDAL中的gdalwarp函数为例

当程序能在cmd中正确运行时,我们才可能使用subprocess.call()调用它。

其次,你需要在python中安装subprocess这个库(好像有点废话)

完成这些废话步骤之后,就可以愉快的运行起来了。比如:

GDAL的影像拼接:

裁剪:(图略)

GIF制作:(图略)

图像拼接:

视频流的声音导入:(图略)

以下:

1、subprocess.call()的输出反馈有3个,分别是0,1,2。其中0代表正确执行,1和2都是错误执行,2通常是没有读取到文件,1的反馈目前未知。

2、windows的cmd是有输入字符长度限制的,据查,win7以上的系统大概是8k个字符长度(数字、英文),所以,一旦输入的字符长度过长,就需要分批次运行(暂时没有其他解法)。或者不使用cmd方法。其他操作系统未知。

到此为止

几个好看的Seaborn图样~(虽然官方配色一般般,但我还是忍不住夸它)

Python制作桑基图(我承认我低估了这个教程)

中国范围2019年道路网数据分享

PyCharm2019亲测破解方式

分享一套中国区域的矢量图层(到县级)-更新

微信号:一个有趣的灵魂W

关注我们,了解更多

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-06-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一个有趣的灵魂W 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档