<p><a href="https://stackoverflow.com/a/37505854/1594060">@EoinS</a>有一个很好的解决方案,我想介绍一个替代方案,它在确定两个列表类型的开始和结束位置方面不那么动态,但是可以处理CSV格式中的各种边缘情况,并且有列名,如下所示:</p>
<pre><code>import numpy as np
node_rows = 75 #number of lines in the node section
interstitial_rows = 5 #number of lines between the last node record and the first element
element_rows = 1000 #the number of element rows
nodes = np.genfromtxt(
'sample.csv', # file name
skip_header=1, # lines to skip at the top, i assume there is a header
skip_footer=(interstitial_rows + 1 + element_rows), # lines to skip at the bottom, add one for the column name row at the end
delimiter=',', # column delimiter
names=['n', 'x', 'y', 'z'])
elements = np.genfromtxt(
'sample.csv', # file name
skip_header=(1 + node_rows + interstitial_rows), # lines to skip at the top, i assume there is a header
skip_footer=(1), # one for the column name row at the end
delimiter=',', # column delimiter
names=['n', 'a', 'b', 'c', 'd'])
</code></pre>
<p>请注意,我没有测试过这段代码,我一直在使用类似的代码,但可能有语法错误或我遗漏的东西。在</p>
<p>您可以找到更多关于如何使用numpy <a href="http://docs.scipy.org/doc/numpy-1.10.0/reference/generated/numpy.loadtxt.html" rel="nofollow noreferrer">here</a>和<a href="https://www.getdatajoy.com/examples/python-data-analysis/read -write-csv-file-with-numpy" rel="nofollow noreferrer">here</a>读取csv的信息</p>