Python 通过命令行将param传递给asyncio.run()函数
我对Python有点陌生 我想问一下,如何通过命令行将参数传递给异步函数Python 通过命令行将param传递给asyncio.run()函数,python,Python,我对Python有点陌生 我想问一下,如何通过命令行将参数传递给异步函数 async def main(action): async with TelegramClient('session', api_id, api_hash) as client: time = get_time() if action == 'in': message = "It's " + time + ". Time to w
async def main(action):
async with TelegramClient('session', api_id, api_hash) as client:
time = get_time()
if action == 'in':
message = "It's " + time + ". Time to work."
else:
message = "It's " + time + ". Let's call it a day."
await client.send_message('me', message)
asyncio.run(main(WHAT_SHOULD_I_USE_HERE_OTHER_THAN_input()))
argparse是一条路要走
最起码的例子:
parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('--argument', metavar='N', type=str)
args = parser.parse_args()
然后使用pythonscript.py--argument my_argument
args.argument
将是字符串“my_argument”。argparse是一种方法
最起码的例子:
parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('--argument', metavar='N', type=str)
args = parser.parse_args()
然后使用
pythonscript.py--argument my_argument
args.argument
将是字符串“my_argument”。谢谢,它可以工作。顺便说一句,我自己也发现了另一个解决方案,它使用getopt,现在的行是asyncio.run(main(getopt.getopt([action],[action]))
在命令行中,我将只在中输入python app.py以获得结果。@TimothyGoh但请尝试使用ArgumentParser,因为它也适用于非nix系统。它更干净,将来可以扩展。谢谢,它可以工作。顺便说一句,我自己也发现了另一个解决方案,它使用getopt,现在的行是asyncio.run(main(getopt.getopt([action],[action]))
在命令行中,我将只在
中输入python app.py以获得结果。@TimothyGoh但请尝试使用ArgumentParser,因为它也适用于非nix系统。它更干净,将来可以扩展。