I want to slice every string in a list in Python.
This is my current list:
['One', 'Two', 'Three', 'Four', 'Five']
This is the list I want for result:
['O', 'T', 'Thr', 'Fo', 'Fi']
I want to slice away the two last characters from every single string in my list.
How can I do this?
Use a list comprehension to create a new list with the result of an expression applied to each element in the inputlist; here the [:-2]
slices of the last two characters, returning the remainder:
[w[:-2] for w in list_of_words]
Demo:
>>> list_of_words = ['One', 'Two', 'Three', 'Four', 'Five']
>>> [w[:-2] for w in list_of_words]
['O', 'T', 'Thr', 'Fo', 'Fi']
You can do:
>>> l = ['One', 'Two', 'Three', 'Four', 'Five']
>>> [i[:-2] for i in l]
['O', 'T', 'Thr', 'Fo', 'Fi']
x=['One', 'Two', 'Three', 'Four', 'Five']
print map(lambda i:i[:-2],x) #for python 2.7
print list(map(lambda i:i[:-2],x)) #for python 3