Ver Mensaje Individual
  #4 (permalink)  
Antiguo 02/04/2012, 02:46
Avatar de bichomen
bichomen
 
Fecha de Ingreso: junio-2003
Ubicación: Barcelona y alrededores, España
Mensajes: 877
Antigüedad: 21 años, 6 meses
Puntos: 2
Respuesta: Pilas y colas

Pues si hice unas cuantas modificaciones, pero sigue fallando:

Código Python:
Ver original
  1. import random
  2.  
  3. #################################
  4. #Movie
  5.  
  6. #Creamos la clase Movie
  7. class Movie:
  8.        
  9.         def __init__(self,title="emptyTitle",
  10.                                           director=["emptyDirector"],
  11.                                           cast = ["emptyCast"],
  12.                                           producer = ["emptyProducer"],
  13.                                           writer = ["emptyWriter"],
  14.                                           country = ["emptyCountry"],
  15.                                           language = ["emptyLanguage"],
  16.                                           year = "emptyYear",
  17.                                           genres = ["emptyGenres"],
  18.                                           votes = "emptyVotes",
  19.                                           rating = "emptyRating",
  20.                                           runtime = ["emptyRuntime"],
  21.                                           plot = ["emptyPlot"],
  22.                                           cover_url = "emptyCorver"):
  23.                
  24.                 self.title = title
  25.                 self.director = director
  26.                 self.cast = cast
  27.                 self.producer = producer
  28.                 self.writer = writer
  29.                 self.country = country
  30.                 self.language = language
  31.                 self.year = year
  32.                 self.genres = genres
  33.                 self.votes = votes
  34.                 self.rating = rating
  35.                 self.runtime = runtime
  36.                 self.plot = plot
  37.                 self.cover_url = cover_url
  38.  
  39.         def GetTitle(self):
  40.                 return self.title
  41.  
  42.  
  43.  
  44.  
  45. #################################
  46. #función loadMovieList
  47.  
  48. def loadMovieList(filename):
  49.         peliculas = abrirarchivo(filename)
  50.         movieList = []
  51.        
  52.         for peli in range(len(peliculas)):
  53.                 pelicula = peliculas[peli].split("|")
  54.            
  55.                 p = Movie(pelicula[0],pelicula[1],pelicula[2],pelicula[3],pelicula[4],pelicula[5],pelicula[6],pelicula[7],pelicula[8],pelicula[9],pelicula[10],pelicula[11],pelicula[12],pelicula[13])
  56.                 movieList.append(p)
  57.  
  58.         movieList.sort()
  59.  
  60.         return movieList
  61.  
  62. #################################
  63. #Abrimos el archivo
  64.  
  65. def abrirarchivo(db):
  66.     file = open(db,"r")
  67.     peliculas = file.readlines()
  68.     file.close()
  69.  
  70.     return peliculas
  71.  
  72. movieList = loadMovieList('peliculas100.dat')
  73.  
  74. #Reducimos la lista de peliculas a 21 elementos
  75. movieList = movieList[0:20]
  76.  
  77.  
  78. #################################
  79. #Nodo
  80.        
  81. #Creamos la clase Nodo
  82. class Node:
  83.         m = Movie()
  84.         lista = m.GetTitle()
  85.  
  86.         def __init__(self,data=None):
  87.                 self.lista = None
  88.                 self.data = data
  89.                
  90. #################################
  91. #Stack
  92.        
  93. #Creamos la clase Stack
  94. class Stack:
  95.  
  96.         def __init__(self):
  97.                 pila = []
  98.                 self.sList = pila
  99.          
  100.         def push(self,node):
  101.                 n = Node()
  102.                 self.sList.append(n.data)
  103.                 return True
  104.  
  105.         def pop(self):
  106.                 if self.isEmpty():
  107.                     return "La pila esta vacia"
  108.                 else:
  109.                     return self.sList.pop()
  110.      
  111.         def isEmpty(self):
  112.                 return len(self.sList) == 0
  113.      
  114.         def printStack(self):
  115.                 print self.sList
  116.                 return True
  117.        
  118.  
  119. #################################
  120. #Queure
  121.        
  122. #Creamos la clase Queure
  123. class Queure:
  124.        
  125.         def __init__(self):
  126.                 cola = []
  127.                 self.qList = cola
  128.          
  129.         def enqueue(self,node):
  130.                 self.qList.append(node)
  131.                 return True
  132.              
  133.         def dequeue(self):
  134.                 if(self.isEmpty()):
  135.                         return "La cola esta vacia"
  136.                 else:
  137.                         node = self.qList[0]
  138.                         self.qList = self.qList[1:]
  139.                 return node
  140.      
  141.         def isEmpty(self):
  142.                 return len(self.qList) == 0
  143.      
  144.         def printQ(self):
  145.                 print self.qList
  146.                 return True
  147.  
  148.  
  149. #################################
  150. #Test de la clase Stack()
  151.  
  152. newStack = Stack()
  153. newStack.printStack()
  154.  
  155. newNode = Node(movieList[0])
  156. newStack.push(newNode)
  157. newStack.printStack()
  158.  
  159. newStack.push(Node(movieList[1]))
  160. newStack.printStack()
  161.  
  162. newStack.push(Node(movieList[2]))
  163. newStack.printStack()
  164.  
  165. m1 = newStack.pop()
  166. newStack.printStack()
  167.  
  168. m2 = newStack.pop()
  169. newStack.printStack()
  170.  
  171. m3 = newStack.pop()
  172. newStack.printStack()
  173.  
  174. m4 = newStack.pop()
  175. newStack.printStack()
  176.  
  177. print m1.GetTitle()
  178. print m2.GetTitle()
  179. print m3.GetTitle()
  180. ##print m4.GetTitle()  GUESS WHAT HAPPENS...
  181.  
  182. #################################
  183. #Test de la clase Queure()
  184.  
  185. #newQ = Queue()
  186. #newQ.printQ()
  187.  
  188. #newNode = Node(movieList[0])
  189. #newQ.enqueue(newNode)
  190. #newQ.printQ()
  191.  
  192. #newQ.enqueue(Node(movieList[1]))
  193. #newQ.printQ()
  194.  
  195. #newQ.enqueue(Node(movieList[2]))
  196. #newQ.printQ()
  197.  
  198. #m1 = newQ.dequeue()
  199. #newQ.printQ()
  200.  
  201. #m2 = newQ.dequeue()
  202. #newQ.printQ()
  203.  
  204. #m3 = newQ.dequeue()
  205. #newQ.printQ()
  206.  
  207. #m4 = newQ.dequeue()
  208. #newQ.printQ()
  209.  
  210. #print m1.GetTitle()
  211. #print m2.GetTitle()
  212. #print m3.GetTitle()
  213. #print m4.GetTitle()  GUESS WHAT HAPPENS...

A ver si me podéis guiar un poco.


bichomen
__________________
"Se sabe con exactitud, con cuanta imprecisión, se sabe algo"
Linux Registered User #320332