Ver Mensaje Individual
  #8 (permalink)  
Antiguo 13/03/2014, 21:47
Avatar de Instru
Instru
 
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 21 años, 5 meses
Puntos: 52
Respuesta: Objeto miembro de una lista.

Hola razpeitia. Gracias por tu respuesta.

Tienes razón, no puse el suficiente código.

Lo que pasa, es que es un poco mas complicado.

Aunque lo qu tu pusiste es un buen reusmen de lo que necesito hacer:

Código:
for nt in grammar:
            if nt.leftHand == currentNT:
                newItem = LRItem()
                newItem.rule = nt
                newItem.dot = 0
                newItem.lookAhead = lrItem.lookAhead
                newItem.show()
                lookAheads = getLookAheads(grammar, newItem)
               
                for la in lookAheads:
                    newItem.lookAhead = la

                    if newItem not in itemsList:
                        itemsList.append(newItem)
Sin embargo, sustituyendo newItem.lookAhead = la por:
Código:
 tempItem = LRItem()
                    tempItem.rule = newItem.rule
                    tempItem.dot = newItem.dot
                    tempItem.lookAhead = la
funciona de manera correcta.

Todavía me confunde la manera en que python maneja algunas cosas, como el caso de los objetos mutables y no mutables.
Me surge una duda aqui.

Si tengo 2 objetos que fueron creados, pero con el mismo contenido. ¿Cómo los toma el operador in?

Código:
class Foo(object):
    def __init__(self):
        self.data=0

objA = Foo()
objA.data = 1

objB = Foo()
objB.data = 1

mylist = [objA]
Como se evaluaría

Código:
objB in mylist
Supongo que daría falso porque son objetos diferentes apesar de que el contenido es el mismo.

Alguien que me despeje esta duda?
Como lo haría para que esa condicion evalue verdadero?

SAludos