Python由于语法非常简洁,第三方库支持较多,因此大量的应用于编写脚本程序批处理解决一些任务。而编写的Python程序通常情况下在命令行中运行,并且会加上参数信息。通过接收命令行的参数信息,这样便于自定义处理一些任务。
Python在命令行中执行,如何接收命令行的参数信息?本文将为大家介绍一种非常简洁、易懂的方式,并且被Google等大型企业广泛的应用于开源项目中,其中最典型的就是Google的深度学习框架TensorFlow中就有大量的使用。
下面的代码非常的简单易懂,基本不用任何解释就可以看的非常明白,这就是优秀代码的典型代表。
from absl import appfrom absl import flags
FLAGS = flags.FLAGS
flags.DEFINE_string('name', 'Justin', 'Your Name')flags.mark_flag_as_required('name')
def main(argv): del argv print('Your input name is: {}'.format(FLAGS.name))
if __name__ == '__main__': app.run(main)
编写代码完成以后,接下来就可以查看其用法。首先来看一下默认的--help信息。
(base) ➜ tool-absl git:(master) ✗ python main.py --help
USAGE: main.py [flags]flags:
main.py: --name: Your Name (default: 'Justin')
Try --helpfull to get a list of all flags.
接下来加上--name参数信息,来看一下结果。
(base) ➜ tool-absl git:(master) ✗ python main.py --name JohnYour input name is: John
本文为大家介绍了利用absl库的flags工具如何从命令行中接收一些参数信息,快速的实现任务的定制化。