Python - Reemplazar un elemento de la lista uno por uno

 
Vista:

Reemplazar un elemento de la lista uno por uno

Publicado por MPG (1 intervención) el 06/12/2019 16:18:33
Estoy haciendo un proyecto y necesito la opción ranking en donde se debe de mostrar una lista de 10 nombres de jugadores y el numero de disparos pero esta inicialmente esta llena por palabras jugador y valores de defecto (0) cuando el jugador ingrese su nombre y el numero de disparo que realizo la lista debe de actualizarse y se debe de mostrar de mayor a menor
1
2
3
4
5
6
7
8
9
10
nombres = ["AAA","BBB","CCC","DDD","EEE","FFF","GGG","HHH","III","JJJ"]
disparo = [0,0,0,0,0,0,0,0,0,0]
n=0
nombre=input("Ingrese su nombre:")
for x in range(len(nombres)):
    nombres.pop(n)
    nombres.insert(n,nombre)
    disparo.pop(n)
    disparo.insert(n,nombre)
n+=1
trate de hacerlo pero solo se me reemplaza el primer indice de las listas
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Reemplazar un elemento de la lista uno por uno

Publicado por joel (901 intervenciones) el 06/12/2019 20:22:45
Hola MPG, no se si te he entendido bien... pero te he modificado tu código para que modifique el disparo del jugador aumentando en uno, y si no existe el jugador lo añade al final de la lista.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
nombres = ["AAA","BBB","CCC","DDD","EEE","FFF","GGG","HHH","III","JJJ"]
disparo = [0,0,0,0,0,0,0,0,0,0]
 
nombre=input("Ingrese su nombre:").upper()
 
if nombre in nombres:
    pos=nombres.index(nombre)
    disparo[pos]=disparo[pos]+1
else:
    nombres.append(nombre)
    disparo.append(1)
 
print(nombres)
print(disparo)

De todas maneras, yo utilizaría un diccionario en vez de dos listas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar