Python

Iniciado por josephb401, 18 Octubre 2016, 04:13 AM

0 Miembros y 1 Visitante están viendo este tema.

josephb401

no entiendo porque este programa me da error alquien puede ayudarme?

name = "";
print("What is your name");

input(name);

if name== "Amar":
    print("Hi Amar");
   
    elif name== "Brandy":
        print("Ahoy Brandy :D");
       
        else:
            print("Hello");

Poyoncio

#1
SI no recuerdo mal input devuelve un int, tienes que poner raw_input para que te devuelva un string

PD: Lee esto y comprenderas mejor la entrada de datos
https://showthebytes.wordpress.com/2011/04/13/python-uso-de-input-y-raw_input/
Curso de ensamblador desde cero

madoko

nombre=""
nombre = raw_input ("Como te llamas? ")

if nombre == "Amar":
    print "hola Amar"
elif nombre == "Brandy":
    print "Ahoy Brandy"
else:
    print "Hola"


No es necesario tanto ;
if, elif y else van en la misma linea
la forma correcta es variable=raw_input(texto)

Espero te sirva ^^

tincopasan

hola josephb401:

1- Hay un foro de scripting, esto tendría que ir ahí.
2- Cuando públiques sobre python, deberías decir si usas una versión 2.x ó 3.x
3- En caso de que genere un error poner que error da.
4-seguramente vienes de otro lenguaje de programación ya que este código está lleno de ";" y en python no se usan.
5- voy a suponer que la versión es 3.x por el uso de "()" en la función print
6-el principal error en tu código es el uso del input, que debería ser:
Código (python) [Seleccionar]

name=input()

7- la indentación también está mal, imagina que cada tabulación es poner una subfunción dentro de una función en vez de crear varias funciones distintas.
8- también es posible declarar todo en una sola línea y no es necesario en este caso, declarar la variable "name"
el código apenas modificado para 3.x:
Código (python) [Seleccionar]

name=input("What is your name: ")

if name== "Amar":
   print("Hi Amar")
   
elif name== "Brandy":
   print("Ahoy Brandy :D")
       
else:
   print("Hello")

9-si es para python 2.x es basicamente como lo que te dijeron antes, pero no voy a correjirlo.