Foros del Web » Programando para Internet » Python »

invalid syntax? como es posible?

Estas en el tema de invalid syntax? como es posible? en el foro de Python en Foros del Web. Hola a todos: Estoy iniciandome en esto de Python para hacer un proyecto para la universidad, y estoy actualmente usando Python 3.0.1 + PyDev. El ...
  #1 (permalink)  
Antiguo 22/03/2009, 09:00
 
Fecha de Ingreso: marzo-2009
Mensajes: 7
Antigüedad: 15 años
Puntos: 0
invalid syntax? como es posible?

Hola a todos:

Estoy iniciandome en esto de Python para hacer un proyecto para la universidad, y estoy actualmente usando Python 3.0.1 + PyDev.
El caso es que he escrito la clase más sencilla del mundo y aun asi me sigue dando un error:

Código:
class vehiculo:
    def __init__ (self, direccion, velocidad, aceleracion):
        self.direccion = direccion
        self.velocidad = velocidad
        self.aceleracion = aceleracion
        #print "El vehiculo tiene una velocidad de", velocidad, "y una aceleracion de", aceleracion,"siguiendo la direccion", direccion
        
        veh = vehiculo("norte",20,0)
        print veh.aceleracion
He estado siguiente el tutorial de mundogeek, probando incluso una clase de ejemplo que sale en el PDF, pero me sigue dando el mismo error!

Código:
print veh.aceleracion
            ^
SyntaxError: invalid syntax
Podriais ayudarme, por favor?
Muchas gracias por adelantado

EDITO: He estado probando otras clases, y el error siempre es el mismo:

Código:
class Vehiculo:
    "clase vehiculo"
    def __init__(self):
        self.ruedas = 0;
        self.pos = 0;
        self.combustible = 0;

    def andar(self,metros):
        if self.combustible >= metros:
            self.pos = self.pos + metros
            self.combustible = self.combustible - metros
            return metros
        else:
            return 0

    def cantRuedas(self):
        return self.ruedas

    def cargarCombustible(self,litros):
        self.combustible = self.combustible + litros

p = Vehiculo();

p.cargarCombustible(50)
print "Andar 60 anduvo ->" + str(p.andar(60))
print "Andar 20 anduvo ->" + str(p.andar(20))
print "Andar 30 anduvo ->" + str(p.andar(30))
print "Andar 30 anduvo ->" + str(p.andar(30))

Código:
print "Andar 60 anduvo ->" + str(p.andar(60))
                             ^
SyntaxError: invalid syntax

Última edición por meneillos; 22/03/2009 a las 11:03
  #2 (permalink)  
Antiguo 22/03/2009, 11:12
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: invalid syntax? como es posible?

No sé si será como para devolver un Invalid Syntax, pero tu indentación no está bien:

Código python:
Ver original
  1. class Vehiculo:
  2.     def __init__ (self, direccion, velocidad, aceleracion):
  3.         self.direccion = direccion
  4.         self.velocidad = velocidad
  5.         self.aceleracion = aceleracion
  6.  
  7. veh = Vehiculo("norte",20,0)
  8. print veh.aceleracion

Esas dos últimas líneas tienen que ir al nivel inicial. Añado: Y esas líneas vacías entremedias de los métodos... quítalas.

Última edición por venkman; 22/03/2009 a las 11:21
  #3 (permalink)  
Antiguo 22/03/2009, 11:20
 
Fecha de Ingreso: marzo-2009
Mensajes: 7
Antigüedad: 15 años
Puntos: 0
De acuerdo Respuesta: invalid syntax? como es posible?

Uf perfecto, era eso! :D

Al principio me di cuenta de que al estar en python 3, el print ya es una funcion y tiene que ir entre parentesis. Luego lo solucioné, pero no me mostraba nada en pantalla, y tu solucion fué lo que funciono

Lo que me falta ahora es aprender a manejar un poco el debugger, ya que no lo se aun

Por cierto, ¿cómo se pone el CODE para poder pegar el codigo en python y que automaticamente lo coloree y demás?

Muchas gracias por tu ayuda
  #4 (permalink)  
Antiguo 22/03/2009, 11:37
Avatar de dmassive  
Fecha de Ingreso: febrero-2002
Ubicación: Paraná - Entre Ríos - Argentina
Mensajes: 279
Antigüedad: 22 años, 1 mes
Puntos: 7
Respuesta: invalid syntax? como es posible?

Cita:
Iniciado por meneillos Ver Mensaje
Por cierto, ¿cómo se pone el CODE para poder pegar el codigo en python y que automaticamente lo coloree y demás?
En la primer pagina de threads estaba:

Para resaltar sintaxis python hay que colocar (sin el asterisco *)
[*highlight=python]el codigo[/highlight]

Para mas info visita el thread highlight-python-para-postear-codigo-python-664691
(((no me deja el foro postear el link )))
__________________
Blümchen... einfach die rave Prinzessin
http://www.dmassive.com.ar/
  #5 (permalink)  
Antiguo 22/03/2009, 16:02
 
Fecha de Ingreso: marzo-2009
Mensajes: 7
Antigüedad: 15 años
Puntos: 0
Respuesta: invalid syntax? como es posible?

genial, muchas gracias
  #6 (permalink)  
Antiguo 22/03/2009, 16:09
venkman
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: invalid syntax? como es posible?

También pueds hacerlo con el botón que tiene esta pinta: #

Es el último botón de la barra.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:54.