aList = [123, 'xyz', 'zara', 'abc']
aList.append(2014)
print aList
qui produit o/p [123, 'xyz', 'zara', 'abc', 2014]
Que faut-il faire pour écraser/mettre à jour cette liste ... Je veux que le o/p soit
[2014, 'xyz', 'zara', 'abc']
Vous pouvez essayer ceci
alist[0] = 2014
mais si vous n'êtes pas sûr de la position de 123, vous pouvez essayer comme ceci:
for idx, item in enumerate(alist):
if 123 in item:
alist[idx] = 2014
Qu'en est-il de remplacer l'élément si vous connaissez la position:
aList[0]=2014
Ou si vous ne connaissez pas la boucle de position dans la liste, trouvez l'élément et remplacez-le.
aList = [123, 'xyz', 'zara', 'abc']
for i,item in enumerate(aList):
if item==123:
aList[i]=2014
print aList
Je le préférerais sans énumérer et utiliser plutôt "range" comme ceci:
for item in range(0, len(alist)):
if 123 in item:
alist[item] = 2014
Pour ceux qui débutent dans Python, il pourrait être plus lisible et un peu plus intelligent à récapituler.
Cordialement P.
J'apprends à coder et j'ai trouvé le même problème. Je pense que le moyen le plus simple de résoudre ce problème consiste à écraser littéralement la liste, comme le dit @ kerby82:
Un élément d'une liste en Python peut être défini sur une valeur à l'aide du formulaire
x [n] = v
Où x est le nom de la liste, n est l'index du tableau etv est la valeur que vous souhaitez définir.
Dans votre exemple:
aList = [123, 'xyz', 'zara', 'abc']
aList[0] = 2014
print aList
>>[2014, 'xyz', 'zara', 'abc']
Je pense que c'est plus Pythonic:
aList.remove(123)
aList.insert(0, 2014)
plus utile:
def shuffle(list, to_delete, to_shuffle, index):
list.remove(to_delete)
list.insert(index, to_shuffle)
return
list = ['a', 'b']
shuffle(list, 'a', 'c', 0)
print list
>> ['c', 'b']
Si vous essayez de prendre une valeur du même tableau et essayez de la mettre à jour, vous pouvez utiliser le code suivant.
{ 'condition': {
'ts': [ '5a81625ba0ff65023c729022',
'5a8161ada0ff65023c728f51',
'5a815fb4a0ff65023c728dcd']}
Si la collection est userData ['condition'] ['ts'] et que nous devons
for i,supplier in enumerate(userData['condition']['ts']):
supplier = ObjectId(supplier)
userData['condition']['ts'][i] = supplier
La sortie sera
{'condition': { 'ts': [ ObjectId('5a81625ba0ff65023c729022'),
ObjectId('5a8161ada0ff65023c728f51'),
ObjectId('5a815fb4a0ff65023c728dcd')]}