擅长:python、mysql、java
<p>这是我的csv内容:</p>
<pre><code>a,b,c,d,e,f,,1,2,3,4
a,b,c,d,e,f,,1,2,3,4
a,b,c,d,e,f,,1,2,3,4
a,b,c,d,e,f,,1,2,3,4
a,b,c,d,e,f,,1,2,3,4
a,b,c,d,e,f,,1,2,3,4
</code></pre>
<p>这样试试。这将跳过第一行,并用带条线填充<code>data</code></p>
<pre><code>fp = open( "estat_sdg_07_11.csv","r")
lines = fp.readlines()
data=[ l.strip() for l in lines[1:] ]
fp.close()
</code></pre>
<p>如果列表中的一个元素为空,这也会添加零</p>
<pre><code>fp = open( "estat_sdg_07_11.csv","r")
lines = fp.readlines()
data = [ [0 if x=="" else x for x in l.strip().split(",")] for l in lines[1:] ]
fp.close()
</code></pre>
<p>或者</p>
<pre><code>fp = open( "f.csv","r")
data = [ [0 if x=="" else x for x in l.strip().split(",")] for l in fp.readlines()[1:] ]
fp.close()
</code></pre>
<p>结果应该是由列值列表表示的行列表。
大概是这样的:</p>
<pre><code>print(data)
</code></pre>
<p>输出:</p>
<pre><code>[["a","b","c",1,4,0],
["a","b","c",1,4,0],
["a","b","c",1,4,0]]
</code></pre>