def __init__(self, origin, max_x, max_y, o_window, jugador): self.reportes = Report("") self.foo = open("true_snake_debug.txt", "w+") self.score = Lista() self.sh, self.sw = o_window.getmaxyx() self.w = o_window self.w.keypad(1) self.w.timeout(100) self.snake = origin self.food = Lista(self.sh / 2, self.sw / 2) self.key = curses.KEY_RIGHT self.level = 0 self.is_poison = False self.food_symbol = "+" self.obstacles = Lista() self.player = jugador self.difficulty = 80 self.thereshold = 15 try: fu = open("config.ren", "r") f1 = fu.readlines() c = 0 for content in f1: if (c == 0): self.difficulty = int(content.strip()) elif (c == 1): self.thereshold = int(content.strip()) c += 1 except: self.difficulty = 80
def get_new_snake(self): n_snake = Lista() snk_x = self.sw / 4 snk_y = self.sh / 2 n_snake.agregar(Lista(snk_y, snk_x - 2)) n_snake.agregar(Lista(snk_y, snk_x - 1)) n_snake.agregar(Lista(snk_y, snk_x)) return n_snake
def test_extend_empty_list(self): """Extend numa lista vazia mantém o tamanho igual da segunda lista""" lista = Lista() self.assertEqual(len(lista), 0) lista.extend(Lista()) self.assertEqual(len(lista), 0) size = len(self.lista) self.lista_vazia.extend(self.lista) self.assertEqual(len(self.lista_vazia), size)
def separar_por_calificacion(productos): clasificados = Lista() max_calificacion = 5 for i in range(0, max_calificacion+1): clasificados.append(Lista()) for producto in productos: clasificados[producto.calificacion].append(producto) return clasificados
def dividir_pares_impares(numeros_enteros: Lista): pares = Lista() impares = Lista() for numero in numeros_enteros: if numero % 2 == 0: pares.insert(numero) else: impares.insert(numero) return pares, impares
def make_obstacle(self): true_new_obs = None while (true_new_obs is None): new_obs = Lista() o_x = random.randint(1, self.sw - 1) o_y = random.randint(1, self.sh - 1) new_obs.agregar(Lista(o_y, o_x)) new_obs.agregar(Lista(o_y, o_x + 1)) new_obs.agregar(Lista(o_y, o_x + 2)) true_new_obs = new_obs if self.validate_obs(new_obs) else None self.obstacles.agregar(true_new_obs)
def test_two_lists_with_same_elements_are_equals(self): """Duas listas distintas com os mesmos elementos são iguais""" lista1 = Lista() lista2 = Lista() self.assertEqual(lista1, lista2) for i in range(0, 30): # operações caras :-) append e __eq__ x = randint(0, 10000) self.assertEqual(lista1, lista2) lista1.append(x) self.assertNotEqual(lista1, lista2) lista2.append(x) self.assertEqual(lista1, lista2)
def setUp(self): """Esse método é invocado antes de cada Teste. Prepara o ambiente""" self.MAX_VALUE = 10000 self.lista_vazia = Lista() self.x = randint(0, maxsize) self.lista_um = Lista(self.x) self.n = randint(100, 500) self.lista = Lista(self.x) self.python_list = list() self.python_list.append(self.x) for i in range(0, self.n): element = randint(0, self.MAX_VALUE) self.python_list.append(element) self.lista.append(element) self.n += 1 #conta o elemento x
def __init__(self, matricula, modelo, capacidad, cant_primera_clase): self.matricula = matricula self.modelo = modelo self.asientos = Lista() self.capacidad = capacidad self.capacidad_turista = capacidad - cant_primera_clase self.capacidad_primera_clase = cant_primera_clase
def mmasgis(self, user): self.util = utility( [], 0, user, user.getActiveDb()) #non potra' popolare' le tabelle self.selectionList = Lista(user, user.getActiveDb()) # create and show the dialog #####settrace() curLayer = self.iface.mapCanvas().currentLayer() #elenco tutti gli elementi del layer corrente featids = range(curLayer.featureCount()) #creo la lista della selezioni self.makeList() self.log("comuni selezionati mmasgis.py 297", self.selectionList.getList()) self.log( "lista inviata a testDialog {0} ".format( self.selectionList.getList()), "test.py 212") self.dlg = testDialog(self.selectionList.getList(), user, user.getActiveDb()) # show the dialog self.dlg.show() #app=QtGui.QApplication(["show",""],True) #resetto la lista self.selectionList.resetList() #sys.exit(app.exec_()) result = 1 #dlg.traccheggio() # See if OK was pressed if result == 1: # do something useful (delete the line containing pass and # substitute with your code pass
def analyze(self, user): print "***selezioni su finestra " + str(self.ui_tree.getList()) self.selectionList = Lista(user, user.getActiveDb()) self.util = utility( [], 0, user, user.getActiveDb()) #non potra' popolare' le tabelle # create and show the dialog curLayer = self.iface.mapCanvas().currentLayer() #elenco tutti gli elementi del layer corrente featids = range(curLayer.featureCount()) #creo la lista della selezioni self.makeList() print("SSScomuni selezionati mmasgis.py 430", self.selectionList.getList()) self.dlg = testDialog(self.selectionList.getList(), user, user.getActiveDb()) NomeDb = user.getActiveDb().getNameDb() self.dlg.setWindowTitle("Elenco Anagrafiche " + NomeDb.capitalize()) # show the dialog self.dlg.show() #app=QtGui.QApplication(["show",""],True) #resetto la lista self.selectionList.resetList() #sys.exit(app.exec_()) result = 1 #dlg.traccheggio() # See if OK was pressed if result == 1: # do something useful (delete the line containing pass and # substitute with your code pass
def __init__(self, tamanio=20): self.__tamanio_tabla = tamanio self.__tamanio_tabla = self.__siguiente_primo(self.__tamanio_tabla) self.__tabla = [] self.__cantidad_items = 0 for i in range(0, self.__tamanio_tabla): self.__tabla.append(Lista())
def test_extend_one_element_list(self): """Extend numa lista com 1 elemento resulta num tamanho agregado das duas listas""" lista = Lista(42) size_um = len(self.lista_um) size = len(lista) self.lista_um.extend(lista) self.assertEqual(len(self.lista_um), size_um + size)
def test_del_item_brute_force(self): """Testa del item para lista inteira""" for i in range(0, self.n): del self.lista[0] self.assertEqual(self.lista, Lista()) with self.assertRaises(KeyError): del self.lista[0]
def test_count_n_elements_list_same_element(self): """Count numa lista com o mesmo elemento retorna o tamanho da lista""" x = randint(0, maxsize) lista = Lista() for i in range(0, self.MAX_VALUE): lista.prepend(x) self.assertEqual(lista.count(x), len(lista))
def test_index_brute_force(self): """Testa o índice de todos os elementos da lista - a lista não pode ter repetidos""" lista = Lista() for i in range(0, 100): lista.append(i) for i in range(0, len(lista)): self.assertEqual(i, lista.index(lista[i]))
def tops(canciones: Lista): """Devuelve un top5, un top10 y un top40""" canciones = canciones.copy() #Para no modificar la lista original if len(canciones) < 40: raise IndexError('Debe haber mas de 40 canciones') def top1(canciones: Lista): """Devolver y eliminar el top1""" mas_escuchada = canciones[0] posicion = 0 i = 1 while i < len(canciones): if canciones[i].reproducciones > mas_escuchada.reproducciones: mas_escuchada = canciones[i] posicion = i i += 1 canciones.suprime(posicion) return mas_escuchada top5 = Lista() for i in range(0, 5): top5.insert(top1(canciones)) top10 = top5.copy() for i in range(0, 5): top10.insert(top1(canciones)) top40 = top10.copy() for i in range(0, 30): top40.insert(top1(canciones)) return top5, top10, top40
def test_remove_item_brute_force(self): """Testa remove item para lista inteira""" for i in range(0, self.n): self.lista.remove(self.lista[0]) self.assertEqual(self.lista, Lista()) with self.assertRaises(KeyError): self.lista.remove(i)
def insertar_vertice(self, dato, criterio='info', data=None): self.inicio.insertar( { 'info': dato, 'visitado': False, 'aristas': Lista(), 'data': data }, criterio)
def __init__(self): self.lists = {} with open("lists.json") as f: crude_lists = json.load(f) for list in crude_lists: self.lists[list["id"]] = Lista(**list)
def get_canciones_por_artista(artista, canciones: Lista): artista = artista.upper() canciones_artista = Lista() for cancion in canciones: if artista == cancion.artista: canciones_artista.insert(cancion) return canciones_artista
def usuarios_commit_cero_lineas(usuarios): lista_cero_lineas = Lista() for usuario in usuarios: for commit in usuario.commits: if commit.agregadas == 0: if commit.eliminadas == 0: lista_cero_lineas.append(usuario) break return lista_cero_lineas
def test_remove_rand_position(self): """Remover um elemento aleatório dentro dos limites diminui o tamanho em 1""" lista = Lista() for i in range(0, self.MAX_VALUE): lista.prepend(i) size = len(lista) i = randint(0, size - 1) x = lista[i] lista.remove(x) self.assertEqual(len(lista), size - 1)
def __init__(self, nombre, apellido, duracion, nombreCargo, numeroLista, partidoPolitico, departamento, provincia): Persona.__init__(self, nombre, apellido, dni=None, anioNac=None, direccion=None) self.cargo = Cargo(duracion, nombreCargo) self.lista = Lista(numeroLista, partidoPolitico) self.distrito = Distrito(departamento, provincia)
def cambios_archivo_entre_fechas(archivo, fecha_inicial, fecha_final, usuarios): usuarios_cambios = Lista() for usuario in usuarios: for commit in usuario.commits: if commit.nombre_archivo == archivo: if commit.timestamp >= fecha_inicial: if commit.timestamp <= fecha_final: usuarios_cambios.append(usuario) break return usuarios_cambios
def insertar_vertice(self, dato, data=None, criterio='info'): # ! agregar otro self.inicio.insertar( { 'info': dato, 'visitado': False, 'aristas': Lista(), 'data': data }, criterio)
def __init__(self, empresa, nro_vuelo, avion: Avion, fecha, origen, destino, kms): self.empresa = empresa self.nro_vuelo = nro_vuelo self.avion = avion self.fecha = fecha self.origen = origen self.destino = destino self.kms = kms self.precio_turista = 350 * kms self.precio_primera = 988* kms self.turista_vendidos = Lista() self.turista_no_vendidos = Lista() self.primera_vendidos = Lista() self.primera_no_vendidos = Lista() for i in range(0, avion.capacidad_primera_clase): self.primera_no_vendidos.append(Pasaje(i)) for i in range(avion.capacidad_primera_clase, avion.capacidad): self.turista_no_vendidos.append(Pasaje(i))
def test_extend_n_elements_list(self): """Extend numa lista com n elementos resulta num tamanho agregado das duas listas""" m = randint(200, 400) lista = Lista() for i in range(0, m): lista.append(randint(0, 100)) size = len(lista) size_n = len(self.lista) self.assertNotEqual(len(self.lista), size + size_n) self.lista.extend(lista) self.assertEqual(len(self.lista), size + size_n)
def test_prepend_turns_empty_list_into_one_element_list(self): """Prepend numa lista vazia transforma numa lista com 1 elemento, com Cabeça""" lista_vazia = Lista() self.assertFalse(lista_vazia) self.assertTrue(lista_vazia.is_empty()) self.assertEqual(len(lista_vazia), 0) self.assertEqual(lista_vazia.head(), None) lista_vazia.prepend(self.x) self.assertTrue(lista_vazia) self.assertFalse(lista_vazia.is_empty()) self.assertEqual(len(lista_vazia), 1) self.assertEqual(lista_vazia.head(), self.x)
def usuario_mas_commits(usuarios): mayor = usuarios[0] for usuario in usuarios: if usuario.cant_commits() > mayor.cant_commits(): mayor = usuario lista_mayores = Lista() for usuario in usuarios: if usuario.cant_commits() == mayor.cant_commits(): lista_mayores.append(usuario) return lista_mayores