Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python: split elements of a list

As a follow up to this question: split elements of a list in python

Given the list:

l = ['element1\t0238.94', 'element2\t2.3904', 'element3\t0139847', '']

How do I get everything after the \t?

I tried:

>>> [i.split('\t', 1)[1] for i in t]                                                                                                                           
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range

Is it because I have '' at the end? How do I exclude it?

like image 470
user1899415 Avatar asked Jan 10 '23 18:01

user1899415


1 Answers

In [175]: l = ['element1\t0238.94', 'element2\t2.3904', 'element3\t0139847', '']

In [176]: [i.partition('\t')[-1] for i in l]
Out[176]: ['0238.94', '2.3904', '0139847', '']

Or, if you only want to consider the elements with a '\t' in them:

In [177]: [i.partition('\t')[-1] for i in l if '\t' in i]
Out[177]: ['0238.94', '2.3904', '0139847']
like image 176
inspectorG4dget Avatar answered Jan 20 '23 08:01

inspectorG4dget