Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Sentex en 24 Septiembre 2017, 20:38 pm



Título: Args en python
Publicado por: Sentex en 24 Septiembre 2017, 20:38 pm
Hola buenas me preguntaba como podría hacer lago así en python:

python script.py hola

la salida seria asi:

hola

osea que lo que pongas detrás se escriba he buscado por Internet y no entiendo lo que hacen.


Título: Re: Args en python
Publicado por: n1sen en 24 Septiembre 2017, 20:44 pm
Código
  1. import sys
  2.  
  3. if __name__ == '__main__':
  4. if len(sys.argv) == 1:
  5. print("Es necesario colocar por lo menos una arguento") # Funcion que se ejecutara en caso de no introducir ningun argumento
  6. else:
  7. if sys.argv[1] == 'ping': # En este caso, ping es el argumento
  8. print("Pong!") # La funcion que se ejecutara al poner el argumento
  9. print(sys.argv[1]) # Este print es para imprimir el argumento que se ha introducido, es opcional, si quieres lo borras
  10.  
Si tienes más dudas, avísame :)


Título: Re: Args en python
Publicado por: **Aincrad** en 25 Septiembre 2017, 00:44 am
hola , hay muchas maneras de hacer lo que pides.

Te lo pongo con códigos super simples:

code 1:

Código
  1. raw_input("hola")

code 2:

Código
  1. print ("hola")
  2. raw_input("Pulsa una tecla para continuar...")

code 3:
Código
  1. print ("hola")
  2. raw_input()

                              Mas simple imposible, Comenta si te funciono.


Título: Re: Args en python
Publicado por: n1sen en 25 Septiembre 2017, 01:11 am
El no se refiere a leer el teclado, el se refiere a como hacer para que el script tome argumentos, es decir
Por ejemplo, en el cmd yo pongo: archivo.py hola
En este caso "hola" es el argumento.
Los argumentos no son lo mismo que leer el teclado.
Saludos  :)


Título: Re: Args en python
Publicado por: **Aincrad** en 25 Septiembre 2017, 01:50 am
Lo se, solo que como puso que:

cita de Sentex
Citar
la salida seria asi:

hola

y por eso le puse un code fácil que mostrara en pantalla hola.   ;) entendí mal. solo me deje llevar por lo que queria que saliera en pantalla.