gpt4 book ai didi

python - 如何在 python 中创建命令行参数

转载 作者:太空宇宙 更新时间:2023-11-04 09:33:17 25 4
gpt4 key购买 nike

如何在 Python 中创建参数?假设我有一个在主机上执行包的脚本 install.py。我有另一个名为 config.py 的配置脚本,我在其中存储主机名和包名。但我想创建我的主机名作为我可以使用此命令在终端中运行的“参数”安装 。它应该捕获主机名作为参数。[即“安装 linuxServer1”,它应该直接安装到该主机。]

#codes from config.py
hostName = "linuxServer1"

package=['test1',
'test2'
]


#codes from install.py

Install = []

for i in config.package:
Install.append("deploy:"+i+",host=")

for f in Install:
subprocess.call(["fabric", f+config.hostName])

最佳答案

我认为你应该看看 python 的“argparse”模块,它会解决你当前的问题:)

让我们举一个例子 -

以下代码是一个 Python 程序,它接受一个整数列表并生成总和或最大值:

import argparse

parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('integers', metavar='N', type=int, nargs='+',
help='an integer for the accumulator')
parser.add_argument('--sum', dest='accumulate', action='store_const',
const=sum, default=max,
help='sum the integers (default: find the max)')

args = parser.parse_args()
print(args.accumulate(args.integers))

如果寻求帮助(假设上面的 Python 代码保存在一个名为 prog.py 的文件中)-

$ python prog.py -h
usage: prog.py [-h] [--sum] N [N ...]

Process some integers.

positional arguments:
N an integer for the accumulator

optional arguments:
-h, --help show this help message and exit
--sum sum the integers (default: find the max)

当使用适当的参数运行时,它会打印命令行整数的总和或最大值:

$ python prog.py 1 2 3 4
4

$ python prog.py 1 2 3 4 --sum
10

如果传入无效参数,它将发出错误:

$ python prog.py a b c
usage: prog.py [-h] [--sum] N [N ...]
prog.py: error: argument N: invalid int value: 'a'

关于python - 如何在 python 中创建命令行参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29277739/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com