2017-02-25 57 views
-2

2D陣列我有47組數據,以使用Python具有以下備考噸被淺析淺析和我存儲在二維數組中的數據:計數和計算在在Python

2104,3,399900 1600,3,329900 2400,3,369000... 

我使用len函數來打印該項目存儲在數組中。 (前一個取得了一些錯誤和變化到下面的代碼。)

array: with open("abc.txt", "r") as ins: 
substrings = data.read().split() 
array = [map(int, substring.split(',')) for substring in substrings] 
print(len(array)[0]) 

的一部分從我還要做一些計算這樣對於每一個,b和c在陣列狀茨艾倫格式:

(2104-500)**2+(1600-500)**2+... 
(3-2)**2+(3-2)**2... 

我寫道:

for [a for a, b, c in array] in range (len(array)[0]): 
calculation_1 = ([a for a, b, c in array]) - 500)**2 

for [b for a, b, c in array] in range (len(array)[1]): 
calculation_2 = ([b for a, b, c in array]) - 2)**2 

我怎樣才能提高代碼給我想要的答案?

+1

究竟是什麼,你看算?你準確的預期產出是多少?你的數據真的只是一個包含另一個列表的列表嗎?請把一個更好的[mcve] – idjaw

+1

在那裏做什麼\ n?你想把它算作一個還是兩個元素?什麼是陣列:在代碼的第一行做什麼?縮進發生了什麼?請糾正它們,並澄清你打算做什麼。 –

回答

0

事實上,你有一個多維數組([] [])。

陣列的len是真的之一,但如果這樣做

len(array[0]) 

是應95

希望這有助於

+0

仍然不正確,它給出95不是47. – poonck1

+0

可能是我應該給出我在存儲陣列中寫的內容: with open(「abc.txt」,「r」)as ins: tmp = ins.read() .split(「」) array = [i.split(「,」)for i in tmp] – poonck1

+1

@ poonck1修改我的答案 – 2017-02-25 14:56:42