Reputation:
I have a list similar to the one shown below. Do you have any ideas on how I can convert it to the one in the EXPECTED OUTPUT section below?
list =['username1,username2', 'username3','username4,username5']
EXPECTED OUTPUT:-
list = ['username1','username2', 'username3','username4','username5']
Thanks
Upvotes: 4
Views: 139
Reputation: 21680
you can also use
>>> alist = ['username1,username2', 'username3','username4,username5']
>>> [j for i in alist for j in i.split(',')]
but @zhangyangyu's method is faster
>>> import timeit
>>> timeit.timeit("[j for i in ['username1,username2', 'username3','username4,us
ername5'] for j in i.split(',')]", number=10000)
0.05875942333452144
>>> timeit.timeit("','.join(['username1,username2', 'username3','username4,usern
ame5']).split(',')", number=10000)
0.023530085527625033
Upvotes: 2
Reputation: 8610
>>> alist = ['username1,username2', 'username3','username4,username5']
>>> ','.join(alist).split(',')
['username1', 'username2', 'username3', 'username4', 'username5']
By the way, don't use list
as the variable name.
Upvotes: 14