4

我有一个类似于下面显示的列表。您对如何将其转换为下面“预期输出”部分中的内容有任何想法吗?

list =['username1,username2', 'username3','username4,username5']

预期输出:-

list = ['username1','username2', 'username3','username4','username5']

谢谢

4

2 回答 2

14
>>> alist = ['username1,username2', 'username3','username4,username5']
>>> ','.join(alist).split(',')
['username1', 'username2', 'username3', 'username4', 'username5']

顺便说一句,不要list用作变量名。

于 2013-08-07T01:07:08.190 回答
2

你也可以使用

>>> alist = ['username1,username2', 'username3','username4,username5']
>>> [j for i in alist for j in i.split(',')]

但是@zhangyangyu的方法更快

>>> 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
于 2013-08-07T01:40:25.897 回答