作为提高python技能的个人项目,我创建了一个检索天气数据的脚本。它需要多个命令行参数来指定位置和所需的特定信息。
我想使用双击创建第二个文件,使用特定的命令行参数运行它。我已经学习了如何将它变成可执行文件/使第二个文件执行它。但是,我不知道如何使用命令行参数来运行它。
目前我的次要文件(包装器?..(不确定术语)如下所示:
#! /usr/bin/env python
import weather
weather.main()这将运行,但我不知道如何为它创建命令行参数,而不需要从shell运行。我想有一个简单的可执行文件来快速运行天气。
发布于 2015-01-25 04:05:45
您可以使用os.system或subprocess模块调用shell进程。
os.system接受一个字符串并将其作为命令传递给shell。
import os
os.system("ls -1")而subprocess则接受所有参数的列表(程序本身是第一个参数),并将其作为命令传递。
import subprocess
# Simple command
subprocess.call(['ls', '-1'], shell=True)看到这些示例,很容易看出您希望可执行程序调用其中任何一个(os.system或subprocess)。我建议使用后者,因为它提供了更多的多样性。
如果你想要更多的信息,我建议你读每周Python模块的子流程回顾。。
发布于 2015-01-25 04:05:55
添加到包装脚本中:
import sys
sys.argv[1:] = ['what', 'ever', 'u', 'want']在打电话给weather.main()之前。
https://stackoverflow.com/questions/28133043
复制相似问题