Tag: ARGPARSE
Cuando intento probar las validaciones de argumentos en argparse utilizando Unittest, lo siguiente funciona: mymodule: def validate_mac_addr(mac_addr): regex = re.compile(r’^((([a-f0-9]{2}:){5})|(([a-f0-9]{2}-){5}))[a-f0-9]{2}$’, re.IGNORECASE) if re.match(regex, mac_addr) is not None: return mac_addr msg = f”[-] Dirección MAC no válida: ‘{mac_addr}'” raise argparse.ArgumentTypeError(msg) test: import mymodule import unittest def test_mac_address_false(self): self.assertRaises(Exception, mymodule.validate_mac_addr, “n0:ma:ca:dd:re:ss:here”) Pero . . . Read more
Estoy tratando de lograr un comando que tiene dos “modos” como este: cmd –list o cmd opción –bandera -abc En otras palabras, o el usuario especifica la opción “–list” o el analizador “elige” la ruta predeterminada. La ruta predeterminada debe ser una opción dentro de un conjunto conocido de elementos. . . . Read more
Tenía un tema aquí antes, pero mi problema no está resuelto… Utilicé una versión anterior de Gnome durante mucho tiempo y mi script funcionaba muy bien. He instalado la última versión de Gnome (3.36.9) y hay un pequeño problema que no interfiere con el uso del programa. Me refiero a . . . Read more
Estoy tratando de escribir un programa CLI con Python en Windows. Recientemente me encontré con un problema con argparse y mi solución temporal fue limpiar el símbolo del sistema y volver a ejecutar mi script con los mismos argumentos utilizando este código: sys.stdout.flush os.execl(sys.executable, ‘python’, __file__, *sys.argv[1:]) Esto funciona perfectamente . . . Read more
Tengo múltiples ArgumentParser() en mi script de Python. Sin embargo, cuando lo ejecuto con -h, la ayuda solo se imprime para el primer argparser cuyos argumentos fueron analizados. Código: %%writefile ./test_argparse.py import argparse ap1 = argparse.ArgumentParser() ap1.add_argument(“-a”, “–abcd”, help=”ayuda a”) var1 = ap1.parse_known_args() ap2 = argparse.ArgumentParser() ap2.add_argument(“-e”, “–efgh”, help=”ayuda e”) . . . Read more