2011-10-21 18 views
5

¿Cómo se aceptan/se analizan los argumentos de línea de comando para un archivo py que no tiene clase? Aquí es lo que tengo dentro de mi archivo test.py:Python, análisis de argumento de línea de comando

import sys 

if __name__ == '__main__': 

¿Cómo consigo los argumentos cuando el archivo se ejecuta a través de la línea de comandos? Lo llamo a través de:

python test.py <arg1> 

y obviamente quiero el valor de "arg1".

+0

Hice y no pude encontrar mucho más que bibliotecas que no quiero importar. – CODe

+0

Cuando busca 'argv python'. primer enlace en Google es tu respuesta –

+5

@EknathIyer Eso está muy bien, pero ¿y si no sabes googlear para 'argv'? Esto es perfectamente apropiado. –

Respuesta

9

No busque más que sys.argv, que es una lista que contiene todos los argumentos pasados ​​al programa.

+0

Gracias señor, pensé que era algo así de fácil. Por algún motivo, no pude obtener una búsqueda en Google para proporcionarme esto. – CODe

+0

Recuerda "argv". Esa es una computadora estándar que habla por los argumentos pasados ​​a cualquier programa. Históricamente es la abreviatura de "argumento vector", un vector que es en su mayoría equivalente a lo que Python llama una "lista". – jathanism

5
try: 
    arg = sys.argv[1] 
except IndexError: 
    print "No argument specified." 
    sys.exit(1) 
Cuestiones relacionadas