在python中启动程序时如何使用flags / launch参数?

时间:2014-01-25 15:29:15

标签: python python-3.3

我正在尝试创建一个程序,它将使用flags(-example)启动livestreamer.exe,但无法弄清楚如何执行此操作。

在Windows中使用内置的“运行”功能时,我输入: livestreamer.exe twitch.tv/streamer best

到目前为止,这是我的python代码:

import os

streamer=input("Streamer (full name): ")
quality=input("""Quality:
Best
High
Medium
Low
Mobile
: """).lower()
os.chdir("C:\Program Files (x86)\Livestreamer")
os.startfile("livestreamer.exe twitch.tv "+streamer+" "+quality)

我知道代码正在查找一个名为livestreamer.exe(FileNotFoundError)的文件,但是其中包含所有其他代码的文件。有人知道如何使用内置的参数启动程序吗?感谢。

2 个答案:

答案 0 :(得分:0)

subprocess.call怎么样?类似的东西:

import subprocess
subprocess.call(["livestreamer.exe", "streamer", "best"])

答案 1 :(得分:0)

使用os.system()代替os.file()。没有名为"livestreamer.exe twitch.tv "+streamer+" "+quality

的文件

,不鼓励使用os.system(),而是使用subprocess.Popen()Subprocess.Popen()语法看起来更复杂,但它更好,因为一旦你知道subprocess.Popen(),你就不需要任何其他东西了。 subprocess.Popen()取代了其他几个工具(os.system()只是其中之一),这些工具分散在其他三个Python模块中。

如果有帮助,请将subprocess.Popen()视为非常灵活的os.system()示例

sts = os.system("mycmd" + " myarg")

同样如下:

sts = Popen("mycmd" + " myarg", shell=True).wait()

sts = Popen("mycmd" + " myarg", shell=True)
sts.wait()

来源:Subprocess.Popen and os.system()