擅长:python、mysql、java
<p>你的想法是对的,但是你可以做一些改进:</p>
<ul>
<li>使用<code>any</code>将第一列与多个值进行比较,而不是使用不会短路的嵌套<code>for</code>循环。你知道吗</li>
<li>边写边写csv,而不是只写<code>print</code>。这是内存有效的,因为您在任何时候只在内存中保存一行。你知道吗</li>
<li>在<code>with</code>语句中将<code>outf</code>定义为<code>open</code>对象。你知道吗</li>
<li>不要隐藏内置的<code>list</code>。对<code>LiveTick</code>中的元素使用另一个标识符,例如<code>i</code>。你知道吗</li>
</ul>
<p>下面是一个演示:</p>
<pre><code>with open('in.csv', 'r') as f, open('out.csv', 'wb', newline='') as outf:
reader = csv.reader(f, delimiter=',')
writer = csv.writer(outf, delimiter=',')
for row in reader:
if any(i in row[0] for i in LiveTick):
writer.writerow(row)
</code></pre>