arg_test.py 906 B

1234567891011121314151617181920212223242526272829
  1. import argparse
  2. def div_lister(_num, _res):
  3. if _num % 2 == 0:
  4. # print(2)
  5. return True
  6. return _res
  7. def pars_hnd(*args):
  8. return 'nothing downloaded'
  9. parser = argparse.ArgumentParser()
  10. # parser.add_argument('-n', action='store_false')
  11. parser.add_argument('-d', action='store_const', const=div_lister, dest='cmd')
  12. parser.add_argument('-integ', type=int)
  13. parser.add_argument('-integ2', type=int)
  14. parser.add_argument('-n', action='store_const', const=pars_hnd, dest='cmd')
  15. # sp = parser.add_subparsers(dest='cmdstr')
  16. # sp1 = sp.add_parser('-d')
  17. # sp1.set_defaults(cmd=div_lister(2))
  18. # sp2 = sp.add_parser('-n')
  19. # sp2.set_defaults(cmd=lambda: 'not downloading')
  20. # print(parser.argument_default)
  21. args = parser.parse_args() # ['-integ=2', '-integ2=6', '-d']
  22. print(args.cmd(args.integ, args.integ2))
  23. # print(args)
  24. # print(args.d)
  25. # print(div_lister(2))