切片列表的结果不正确。Python3

2024-05-13 03:32:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我在一个文件中有一些数据,我已经转换成(int)并附加到一个列表中

minValue = open ("Mineral Values.csv", 'r')
refineList = []

for line in minValue:
    tritanium, pyerite, mexallon, isogen, nocxium, megacyte, zydrine, morphite = line.split(',')
    trit = int(tritanium)
    pye = int(pyerite)
   mexa = int(mexallon)
    iso = int(isogen)
    nocx = int(nocxium)
    mega = int(megacyte)
    zyd = int(zydrine)
    morp = int(morphite)
    refineList.append ([trit, pye, mexa, iso, nocx, mega, zyd, morp])
    minValue.close()

如果我打印出来,它会打印出文件中的所有数据。 [[415,0,0,0,0,0,0,0],[436,0,0,0,0,0,0,0],[457,0,0,0,0,0,0,0,0],[346,173,0,0,0,0,0,0]等

但是我想把这些列表的一部分切掉,这样我就可以把它们分配给变量来做一些数学计算。我使用的代码如下

refineList[0:3]
print (refineList)

这应该只打印出我想的第一份名单的415份?但是它什么也不做,只是再次打印出整个列表。我环顾了一下网站,都说使用切片的方法应该工作,所以我错过了什么

提前谢谢


Tags: 文件数据列表lineintminvaluetritaniumnocxium
1条回答
网友
1楼 · 发布于 2024-05-13 03:32:23
a = [[415, 0, 0, 0, 0, 0, 0, 0], [436, 0, 0, 0, 0, 0, 0, 0], [457, 0, 0, 0, 0, 0, 0, 0], [346, 173, 0, 0, 0, 0, 0, 0]]

print a[0] # print first list in my list of lists
print a[0][0] # print first element in first list in my list of lists

>>>
[415, 0, 0, 0, 0, 0, 0, 0]
415

相关问题 更多 >