Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

python modify item in list, save back in list

I have a hunch that I need to access an item in a list (of strings), modify that item (as a string), and put it back in the list in the same index

I'm having difficulty getting an item back into the same index

for item in list:     if "foo" in item:         item = replace_all(item, replaceDictionary)         list[item] = item         print item 

now I get an error

TypeError: list indices must be integers, not str 

due to this line list[item] = item

which makes sense! but I do not know how to put the item back into the list at that same index using python

what is the syntax for this? Ideally the for loop can keep track of the index I am currently at

like image 856
CQM Avatar asked May 25 '11 20:05

CQM


People also ask

How do you recall a value from a list in Python?

You can recall items on the list by typing the name of the list and then the ordered number of the item you're looking for, however, be aware that numbering in Python begins with 0 rather than 1. Ex: myFears[0] will recall 'clowns', myFears[3] recalls 'my mailman'.

Can lists be modified?

And while most of the data types we've worked with in introductory Python are immutable (including integers, floats, strings, Booleans, and tuples), lists and dictionaries are mutable. That means a global list or dictionary can be changed even when it's used inside of a function, just like we saw in the examples above.


1 Answers

You could do this:

for idx, item in enumerate(list):    if 'foo' in item:        item = replace_all(...)        list[idx] = item 
like image 53
Cat Plus Plus Avatar answered Sep 29 '22 08:09

Cat Plus Plus