擅长:python、mysql、java
<p>使用列表中不存在的字符(<em>例如</em><code>|</code>)连接列表,然后使用正则表达式查找所讨论日期后分号后面的数字:</p>
<pre><code>import re
l = ['2017-07-17', '2017-07-27', '2017-07-17;14', '2017-07-17;5', '2017-07-19;11', '2017-07-19;13', '2017-07-23;4', '2017-07-27;-1']
>>> re.findall('2017-07-17;(\d+)','|'.join(l))
['14', '5']
>>> re.findall('2017-07-23;(\d+)','|'.join(l))
['4']
</code></pre>
<p>如果需要它们作为数字数据类型而不是字符串,请使用<code>map(int,...)</code>:</p>
<pre><code>>>> list(map(int,re.findall('2017-07-17;(\d+)','|'.join(l))))
[14, 5]
</code></pre>