[使用Python "os.system"]调用非系统程序失败(阻塞)的问题

本文详述了使用Python的os.system调用系统及非系统程序的技巧,特别是针对matlab和网易云音乐等特定软件的调用失败问题。通过调整输入参数和确保文件路径的正确性,解决了在Windows和Linux系统下遇到的阻塞问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用Python os.system调用非系统程序失败

问题描述

使用Python import os库,可以调用系统中的计算器程序、画图程序,但是当调用matlab程序或者网易云音乐等程序时会一直出现调用失败的提示(返回值为1)
图一

问题原因

在查阅了大量资料后发现,执行os.system会出现阻塞问题:在执行os.system函数的时候通常会阻塞它的调用者,直到所启动的命令行程序退出。需要注意两点问题即可解决:
第一点:更改输入参数

  1. windows系统:

    os.system(“start C:\Program Files\MATLAB\R2017a\bin\matlab.exe”)

  2. Linux系统

    os.system(“C:\Program Files\MATLAB\R2017a\bin\matlab.exe &”)

第二点:文件路径的正确性
如果文件路径中有空格,应该使用如下方式:双引号+空格,即" "

os.system('start C:\\Program" "Files\\MATLAB\\R2017a\\bin\\matlab.exe')

注意:参数中单双引号的使用

问题解决

图二

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值