Splitting string and removing whitespace Python
我想用逗号
例如,如果我有字符串:
我想拆分并剥离到:
有优雅的方式吗?可能使用列表理解?
python有一个名为
之后,python将拥有一个
1 | [item.strip() for item in my_string.split(',')] |
两种方法的基准如下:
1 2 3 4 5 6 7 | >>> import timeit >>> timeit.timeit('map(str.strip,"QVOD, Baidu Player".split(","))', number=100000) 0.3525350093841553 >>> timeit.timeit('map(stripper,"QVOD, Baidu Player".split(","))','stripper=str.strip', number=100000) 0.31575989723205566 >>> timeit.timeit("[item.strip() for item in 'QVOD, Baidu Player'.split(',')]", number=100000) 0.246596097946167 |
所以列表比较比地图快33%。
或许也值得注意的是,就"Python"而言,圭多自己也投了连卡佛的票。http://www.artima.com/weblogs/viewpost.jsp?线程=98196
一点实用的方法。
1 2 3 | >>> stripper = str.strip >>> map(stripper,"QVOD, Baidu Player".split(",")) ['QVOD', 'Baidu Player'] |
时间比较少
1 2 3 4 | import timeit stripper = str.strip print timeit.timeit('map(stripper,"QVOD, Baidu Player".split(","))',"from __main__ import stripper", number=100000) print timeit.timeit("[item.strip() for item in 'QVOD, Baidu Player'.split(',')]", number=100000) |
我机器上的输出
1 2 | 0.553178071976 0.569463968277 |
因此,列表理解方法和