L'utilisateur entrait 2 entiers différents, le programme recherchent ensuite les numéros dans la liste et remplace le premier numéro avec le deuxième numéro, affiche la nouvelle liste et ce processus continue.
Explication: P>
1ère entrée -> 2
de nouvelle liste 1er entrée -> 3
de nouvelle liste2 ici est mon approche: p> Ceci modifie avec succès les 1ères valeurs, mais lorsque j'essaie d'entrer 3 et 4, le programme ne change que l'un des 3 dans la liste ci-dessous. est la sortie, la 1ère entrée d'itération> 2 et 3, 2e entrée d'entrée -> 3 et 4 p> sortie: p> Pourquoi le programme n'est-il pas Modification des valeurs en fonction de mes besoins dans les deuxième itérations (et à venir)? p> p> [0,1,2,3,4,5,6,7,8,9] code> p>
2e entrée -> 3 p> [0,1,3,3,4,5,6,7,8,9] code> p>
2e entrée -> 4 p> [0,1,4,4,4,5,6,7,8,9] code> p>
4 Réponses :
Lorsque vous dites mais maintenant vous utilisez maintenant bien sûr, vous Devrait ajouter un test conditionnel à la boucle ci-dessus afin qu'il finisse par terminer. Peut-être: p> pour i in b: code>,
i code> prend successivement valeurs em> de liste
B code>, pas indices em>. Lorsque vous trouvez une valeur
i code> qui équivaut à une entrée
a code>, vous dites ensuite:
i < / Code> Comme si c'était l'index em> de la valeur que vous souhaitez modifier, mais ce n'est pas le cas. Ce que vous voulez faire est d'utiliser
énumérer code> pour énumérer simultanément des indices et des valeurs de
B code>: p>
Vous allez ici:
b = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] while True: a1 = int(input("Enter a nmuber:")) a2 = int(input("Enter a number:")) for i in range(len(b)): if b[i] == a1: b[i] = a2 print(b)
Votre approche est gentille mais mon pote c'est faux.
Vous pouvez simplement utiliser la fonction énumérer ()
Ce sera comme ceci:
Je pense que nous pouvons tirer parti de usage Strong> p> dans code> et
index () code> pour résoudre ce problème:
% python3 test.py
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Enter a number: 2
Enter a number: 3
[0, 1, 3, 3, 4, 5, 6, 7, 8, 9]
Enter a number: 3
Enter a number: 4
[0, 1, 4, 4, 4, 5, 6, 7, 8, 9]
Enter a number: -1
%
Est-ce que cela répond à votre question? Modifier les entiers dans une liste Python
@Balajiambreh Hey! Malheureusement, non, j'ai vu cette question avant de demander ici ... merci tho
Dans votre code, vous remplacez l'élément à la 3ème position, ne remplacez pas les 3s.
@bousof omg, j'ai eu mon erreur Haha merci beaucoup