python分隔列表中的元素

时间:2014-11-25 15:05:37

标签: python

我有一个只包含一个元素的列表,如下所示:

[<div class="closeColor">0</div>, <div class="closeColor">0</div>, <div class="openColor">6</div>]

我希望有一个这样的列表(在这种情况下,列表中有3个不同的元素:

["<div class="closeColor">0</div>", "<div class="closeColor">0</div>", "<div class="openColor">6</div>"]

更多:
有人可以帮助我找到一种方法在列表中只有数字吗? ["0","0","6"]

由于 费德里科

1 个答案:

答案 0 :(得分:2)

通过re.search功能。

>>> lst = ['<div class="closeColor">0</div>', '<div class="closeColor">0</div>', '<div class="openColor">6</div>']
>>> [re.search(r'(?<=>)[^<>]*(?=<)', i).group() for i in lst]
['0', '0', '6']

正则表达式:

(?<=                     look behind to see if there is:
  >                        '>'
)                        end of look-behind
[^<>]*                   any character except: '<', '>' (0 or more
                         times)
(?=                      look ahead to see if there is:
  <                        '<'
)                        end of look-ahead