如何找出numpy array陣列中的不同元素

2021-09-28 23:32:09 字數 880 閱讀 4772

例如在 array 陣列[[[1,2,3,3,5], [5,9,18,100,2]]]中找出裡面的不同元素

第一步就是把這個array陣列用flatten鋪平為([1,2,3,3,5, 5,9,18,100,2])

第二步就是用.tolist()進行轉列表

第三步就是用set(list)進行不同元素的提取了

import numpy as np

a = np.array([[

[1,2

,3,3

,5],

[5,9

,18,100,2

]]])

print

("a"

, a)

flatten_a = a.flatten(

)print

("flatten_a"

, flatten_a)

list_a = flatten_a.tolist(

)print

("list_a"

, list_a)

set_a =

set(list_a)

print

("set_a"

,set_a)

下面是上面**塊的各種print結果

a [[[  1   2   3   3   5]

[ 5 9 18 100 2]]]

flatten_a [ 1 2 3 3 5 5 9 18 100 2]

list_a [1, 2, 3, 3, 5, 5, 9, 18, 100, 2]

set_a

所以set_a裡面就是陣列a裡面包含的不同元素了

如何找出 1000 以內的 完數

如果乙個數恰好等於它的因子之和,那麼這個數就被稱為 完數 如 6 1 2 3。程式設計找出 1000 以內的所有 完數 外層迴圈 998 次,每次迴圈得到的 i 傳入下個迴圈內,內部迴圈求解出符合 i 整除 k 等於 0 的數,如果能夠整除,那麼說明 k 是 i 的乙個因子,則用 sum 累加,直到...

找出陣列重複的數

1 在乙個長度為 n 的陣列裡的所有數字都在 0 n 1 的範圍內,找出任意乙個重複的數。簡明思路 按照題目要求,如果這個陣列裡面的數恰好沒有重複的數,則陣列下標跟對應的值相等。否則,當掃瞄到下標為 i 的數字時,比較這個下標的值 m 是不是等於 i 如果是,說明這個值就在它對應的下標下,繼續掃瞄 ...

51 找出重複的數

題目描述 在乙個長度為n 的陣列裡的所有數字都在0 到n 1 的範圍內,找出數 組中任意乙個重複的數字.要求 不能修改原陣列 空間複雜度為常量o 1 時間複雜度小於o n 2 複雜度時間 o nlogn 空間 o 1 思路實際上,我們可以根據抽屜原理簡化剛才的暴力法。我們不一定要依次選擇數,然後看是...