-1
votes

Comment remplacer une valeur spécifique dans la liste?

J'ai la liste suivante: xxx pré>

je veux remplacer 0_1 avec 0. p>

C'est ce que j'ai déjà essayé: p>

AttributeError: 'list' object has no attribute 'replace'


6 commentaires

x [0] est une liste ... Essayez x [0] [0]


mais je reçois l'erreur quand même


Est-ce le seul élément de la liste de la liste? Avez-vous seulement montré une partie de la liste? Parce que le commentaire ci-dessus ne doit pas donner une erreur pour l'exemple de liste que vous avez affichée.


Qu'est-ce que type (x [0])) dit?


Êtes-vous sûr que son '0_1 1_0' Un seul élément n'est pas un élément séparé. ou avez-vous simplement voulu dire, x = [['0_1', '1_0']]]


@webDev numpy listes d'impression comme ça.


4 Réponses :


4
votes

Il devrait être:

>>> x = [['0_1 1_0']]
>>> x
[['0_1 1_0']]
>>> x[0]
['0_1 1_0']
>>> x[0][0]
'0_1 1_0'
>>> x[0][0] = x[0][0].replace("0_1", "0")
>>> x
[['0 1_0']]


6 commentaires

Je pense que la liste des affiches devrait être quelque chose comme ceci x = [[0_1 ',' 1_0 ']]


Et comment le remplacer dans une liste complète par exemple: [[[0 1_0 '], [' 0_2 2_0 '], [' 0_3 3_0 '], [' 0_4 4_0 ']


@webdev pourquoi voudriez-vous penser de cette façon quand l'OP n'a pas dit que c'est comme ça? Pouvez-vous lire son esprit mieux que lui-même? Pour moi, il est clair que l'élément est une seule chaîne.


@Marek, c'est une autre question. Vous devriez peut-être modifier votre question pour cela ou demander à un autre.


@Marek, vous devriez faire une nouvelle question pour cela, car c'est une tâche différente de celle-ci.


@Marek N'hésitez pas à marquer ma réponse comme accepté si vous avez envie de répondre à cette question :)



0
votes

Puisque vous avez une liste 2D lorsque vous faites x [0], vous accédez à la liste dans la liste. Donc x [0] [0] .replace ("0_1", "0")


0 commentaires

-1
votes

Vous avez défini une liste dans une liste, vous devez donc fournir aux deux index d'accéder aux informations que, dans votre cas, est écrite comme un bloc '0_1 1_0'. En conséquence, vous devez changer l'ensemble du bloc, non seulement le "0_1" que vous voulez.

x[0] = '0'


0 commentaires

0
votes

Vous devez donc comprendre le système ECO que dans lequel vous pouvez utiliser la fonction Remplacer. Par exemple, s'il existe une chaîne je veux remplacer le fonctionnement de la chaîne correctement et vous souhaitez remplacer le remplacer par apprendre c'est comment ça fonctionne. xxx

Dans votre cas, l'élément de chaîne est à l'intérieur d'une liste imbriquée. Ainsi, vous devez d'abord accéder à l'article dans la liste imbriquée: xxx


0 commentaires