2017-05-24 94 views
-1

我想創建一個簡單的for-loop來將一個浮動追加到嵌套列表。Python:使用for循環追加到嵌套列表

base = [[],[],[],[]]   # [h,T,rho,sos] 
top = [[],[],[],[]] 

for i in range(4):        # Select h,T,rho,sos 
    for j in range(len(marstable)-1):   # Append data to sublist 
     base[i].append(float(marstable[j][i])) 
    top[i] = base[i][1:] + [float(marstable[-1][i])] 

marstable在前面的函數中定義,也是一個嵌套列表。我不斷收到一個錯誤「IndexError:列表索引超出範圍」爲線

base[i].append(float(marstable[j][i])) 

我爲什麼會這樣,什麼是解決它的最好方法?

感謝

+0

是否每個列表'marstable'至少有4個元素?我會盡量發佈你的完整代碼。 –

+0

檢查'marstable'的第二個維度,是否有可能小於4? – Nuageux

回答

-1
base = [[],[],[],[]] 
top = [[],[],[],[]] 
for i in range(4): 
    for j in range(len(marstable)-1): 
     base[i].append(float(marstable[i][j])) 
    top[i] = base[i][1:] + [float(marstable[i][-1])]