如何运行一个python脚本,通过双击获取命令行参数

时间:2015-01-25 03:55:15

标签: python

作为提高我的python技能的个人项目,我创建了一个检索天气数据的脚本。它需要多个命令行参数来指定位置以及需要哪些特定信息。

我想使用双击创建第二个文件以使用特定的命令行参数运行它。我已经学会了如何将它变成可执行文件/使第二个文件执行它。但是,我不知道如何使用命令行参数运行它。

目前我的辅助文件(包装器?不确定术语)如下所示:

#! /usr/bin/env python
import weather
weather.main()

这样运行但我不知道如何为它创建命令行参数而不从shell运行。我希望有一个简单的可执行文件来快速运行天气。

2 个答案:

答案 0 :(得分:0)

好吧,您可以使用os.systemsubprocess模块调用shell进程。

os.system接受一个字符串并将其作为命令传递给shell。

import os
os.system("ls -1")

subprocess获取所有参数的列表(程序本身是第一个参数),并将其作为命令传递。

import subprocess

# Simple command
subprocess.call(['ls', '-1'], shell=True)

看到这些示例,很容易告诉您希望可执行程序调用其中一个(os.systemsubprocess)。我建议使用后者,因为它提供更多种类。

如果您想了解更多信息,建议您阅读the review of subprocess on Python Module of the Week.

答案 1 :(得分:0)

添加到您的包装器脚本:

import sys

sys.argv[1:] = ['what', 'ever', 'u', 'want']
在致电weather.main()之前