Python中的sum為什麼返回的還是陣列

時間 2021-06-08 09:42:11

1樓:曲奇

這麼用也真是奇葩。

對於多重巢狀list,應該先 flatten, 然後再求和。

import

matplotlib

data=[[

1,2],

[3,4

]]flattened_data

=matplotlib

.cbook

.flatten

(data

)print

(sum

(flattened_data

))sum([[1, 2], [3, 4]], )之所以有莫名奇妙的結果,是因為sum函式是借助了 list 內建的 + 操作來執行的,而 + 操作對於 list 而言是拼接,比如 [1, 2] + [3, 4] 結果是[1, 2, 3, 4].

看看 sum 函式的定義:sum(iterable, start=0),即 iterable 中的各個元素執行 + 操作,最後 + start。那麼 [1, 2] + [3, 4] + [ ] 結果就是 [1, 2, 3, 4]。

2樓:冒泡

sum第二個引數是初始值,它做的事情就是從這個初始值開始,不停加上第乙個引數迭代出來的東西

只不過第二個引數不寫的話,預設為0,因為大多數時候用的數值運算

關於 Python 字典的 values 方法返回值的順序?

Tux ZZ 補充 靈劍 的回答。cpython3.6的dict實現搬了pypy的實現,是保持順序的。但你依然不能把dict當作有序的來使用 因為dict的標準規定 不保證 有順序,要保證有順序的請用OrderedDict 七月 字典是無序的,這句話是對的。但是字典的儲存過程卻是按順序的。字典的儲存...

SUM41 在北美流行朋克隊中,算什麼水平的樂隊?

這個小十年前的提問。學生時代最喜歡的歐美樂隊,涅槃,SUM41.那個時候組了個學生樂隊,作為主音吉他的我。特麼想玩SUM41.奈何。鼓手 臣妾做不到啊 Sum 41 基本上就是加拿大的punk 國寶,黑都黑不動的那種,數遍全身上下只有兩個黑點,乙個是主唱Deryke的前妻是艾薇兒,第二個就是Nick...

python中為什麼說元組不可改變?

狼大人 如果問的是 為什麼有了 List 還要不可修改的 Tuple 的話,有一些地方是必須使用不能修改的型別的,比如 Dict 的 key,或者 set 元素。本身不管是 hash 還是 tree,你直接做了 inplace 修改的話,整個表結構都是被破壞的。這個時候就不能用 List,而必須用 ...