尝试获取包含 7 列和 10 行的 2d 列表并将仅第 4,5 和 6 列(或索引 0 中的 3,4,5)的所有行附加到新列表时遇到一些困难。原始列表实际上是一个 csv 并且非常非常长,但我只是将其中的一部分放入函数中以进行故障排除。 到目前为止我所拥有的是...
def coords():
# just an example of first couple lines...
bigList = [['File','FZone','Type','ID','Lat','Lon','Ref','RVec']
['20120505','Cons','mit','3_10','-21.77','119.11','mon_grs','14.3']
newList=[]
for row in bigList[1:]: # skip the header
newList.append(row[3])
return newList # return newList to main so it can be sent to other functions
此代码为我提供了一个仅包含“ID”的新列表,但我还想要“Lat”和“Lon”。 新列表应类似于...['3_10', '-21.77','119.11']['4_10','-21.10'...] 我尝试重写 newList.append(row[3,4,5])...当然这不起作用,但不知道如何去做。
最佳答案
row[3]
指的是第四个元素。您似乎想要第四到第六个元素,因此将其切片:
row[3:6]
您还可以通过列表理解来完成这一切:
newList = [row[3:6] for row in myList[1:]]
关于python - 将一个列表中的特定行附加到另一个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16619372/