gpt4 book ai didi

python - 如何处理可能是一个值或多个值列表的输入参数?

转载 作者:太空宇宙 更新时间:2023-11-03 21:28:05 25 4
gpt4 key购买 nike

我正在使用某人编写的来自 GitHub 的脚本,该脚本是为命令行设计的。所有示例都显示如下内容:

thisscript.py -u 'teepee' -p pword999 -d 8

我想在另一个函数中运行它,我可以像这样使用它:

thisscript(username='teepee', password='pword999',...)

主文件包含许多定义和这个主函数(如下)。包装此函数以便我可以将其作为自己的函数调用的正确方法是什么?

if __name__ == '__main__':
parser = argparse.ArgumentParser(description='...', add_help=False, usage='thisscript.py -u username -p password [options]')
parser.add_argument('-u', metavar='<STR>', type=str, help='username')
parser.add_argument('-p', metavar='<STR>', type=str, help='password')
parser.add_argument('-a', metavar='<INT>', type=int, default=4, help='Number ascending [4]')
parser.add_argument('-d', metavar='<INT>', type=int, default=0, help='Number descending [0]')

我尝试过导入此脚本,但这似乎不起作用。

最佳答案

我认为最简单的解决方案是使用 subprocess 模块按照设计调用脚本的方式(在 shell 中)调用脚本。

import subprocess

def transcript(
username,
password,
descending_num=0,
ascending_num=4,
):

command = f'transcript.py -u {username} -p {password} -d {descending_num} -a {ascending_num}'
subprocess.call(command, shell=True)

提供函数关键字参数来镜像脚本的默认参数是可选的,但可以使用法更清晰。

关于python - 如何处理可能是一个值或多个值列表的输入参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53709803/

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