/ src / error_arg.py
error_arg.py
 1  from argparse import ArgumentParser, ArgumentError
 2  
 3  
 4  def check_error(av: list[str]) -> int:
 5      if len(av) != 9:
 6          print("Not enough or too more arguments")
 7          return 84
 8      parser = ArgumentParser(exit_on_error=False)
 9      parser.add_argument("opt", type=int)
10      parser.add_argument("xp", type=int)
11      parser.add_argument("yp", type=int)
12      parser.add_argument("zp", type=int)
13      parser.add_argument("xv", type=int)
14      parser.add_argument("yv", type=int)
15      parser.add_argument("zv", type=int)
16      parser.add_argument("p", type=int)
17      try:
18          args = parser.parse_args()
19      except ArgumentError:
20          print("Error: Bad argument retry with -h")
21          return 84
22      if int(av[8]) < 0:
23          print("Error : bad radius or angle (inferior as 0)")
24          return 84
25      if int(av[8]) > 90 and int(av[1]) == 3:
26          print("Error: bad angle (superior as 90)")
27          return 84
28      if int(av[5]) == 0 and int(av[6]) == 0 and int(av[7]) == 0:
29          print("Error: null direction vector")
30          return 84
31      return 0