擅长:python、mysql、java
<p>当使用<a href="https://docs.python.org/3/reference/expressions.html#yield-expressions" rel="noreferrer">generator</a>时,这是相当直接的:</p>
<h3>代码:</h3>
<pre><code>def divide_list(a_list, divider):
sub_list = []
for item in a_list:
if item == divider:
yield sub_list
sub_list = []
else:
sub_list.append(item)
yield sub_list
</code></pre>
<h3>测试代码:</h3>
<pre><code>data = [2,3,5,"TAG",6,7,3,2,6,"TAG",9,9,8,3]
print(list(divide_list(data, "TAG")))
</code></pre>
<h3>结果:</h3>
<pre><code>[[2, 3, 5], [6, 7, 3, 2, 6], [9, 9, 8, 3]]
</code></pre>