網站首頁 編程語言 正文
#環境win64+anaconda+python3.6
list & array
(1)list不具有array的全部屬性(如維度、轉置等)
代碼1:
#eg1_1 import numpy as np a = np.array([[1,2,0,1],[1,6,9,55],[7,8,9,5]])#a為數組 print(a.T) #Result: [[ 1 1 7] [ 2 6 8] [ 0 9 9] [ 1 55 5]] #eg1_2 a = [[1,2,0,1],[1,6,9,55],[7,8,9,5]] #a為列表 print(a.T) #Result: 'list' object has no attribute 'T'
代碼2:
#eg1_3 import numpy as np a=np.array([[1,2,3],[1,1,4],[1,5,1]]) print(a.shape) #Result: (3, 3) #eg1_4 a=[[1,2,3],[1,1,4],[1,5,1]] print(a.shape) #Result 'list' object has no attribute 'shape'
(順帶一提,如何把一個數組轉化為列向量:↓)
import numpy as np a=np.array([[1,2,3],[1,1,4],[1,5,1]]) a=a.reshape(-1,1) print(a) #Result: [[1] [2] [3] [1] [1] [4] [1] [5] [1]]
(2)a[:m]的含義,a可以是列表或者數組,但是無論是哪種情況,a[:0]為空
#eg2_1 import numpy as np a=np.array([[4,1,2], [7,4,10], [12,17,88]]) #a=np.array([(4,1,2), # (7,4,10), # (12,17,88)]) 這兩個a中[和(不一樣,其實它們完全一樣 print(a[:0]) print(a[:1]) print(a[:2]) #Result: [] [[4 1 2]] [[ 4 1 2] [ 7 4 10]] #eg2_1 a=[(4,1,2),(7,4,10),(12,17,88)] print(a[:0]) print(a[:1]) print(a[:2]) #Result: [] [(4, 1, 2)] [(4, 1, 2), (7, 4, 10)]
(3)array和list關于“==”的計算
#eg3_1 import numpy as np a=np.array(['dog','cat','car']) b=np.array(['dog','cat','trunk']) acc = (np.mean(a == b)) print(acc) #Result 0.6666666666666666 #eg3_2 import numpy as np a=['dog','cat','car'] b=['dog','cat','trunk'] acc = (np.mean(a == b)) print(acc) #Result 0.0
(4)array和list關于“*”的計算
from numpy import * #a為數組 a=array([[1,2,3], [4,5,6]]) b=4*a print(b) [[ 4 8 12] [16 20 24]] from numpy import * #a為列表 a=([[1,2,3], [4,5,6]]) b=4*a print(b) [[1, 2, 3], [4, 5, 6], [1, 2, 3], [4, 5, 6], [1, 2, 3], [4, 5, 6], [1, 2, 3], [4, 5, 6]]
python列表和Numpy數組的區別
1、二者都可以用于處理多維數組。
Numpy中的ndarray對象用于處理多維數組,它作為一個快速而靈活的大數據容器。Python列表可以存儲一維數組,通過列表的嵌套可以實現多維數組。
2、存儲效率和輸入輸出性能不同。
Numpy專門針對數組的操作和運算進行了設計,存儲效率和輸入輸出性能遠優于Python中的嵌套列表,數組越大,Numpy的優勢就越明顯。
3、元素數據類型。
通常,Numpy數組中的所有元素的類型都必須相同的,而Python列表中的元素類型是任意的,所以在通用性能方面Numpy數組不及Python列表,但在科學計算中,可以省掉很多循環語句,代碼使用方面比Python列表簡單的多。
總結
原文鏈接:https://blog.csdn.net/qq_35752161/article/details/83004587
相關推薦
- 2022-09-16 Pandas?篩選和刪除目標值所在的行的實現_python
- 2022-06-28 深入解析docker文件分層原理_docker
- 2022-02-27 微信小程序 - 子組件觸發父組件函數(triggerEvent)
- 2022-10-30 淺析pytest?鉤子函數?之初始鉤子和引導鉤子_python
- 2022-12-26 matplotlib畫圖之修改坐標軸刻度問題_python
- 2022-08-02 Docker安裝Redis配置遠程連接及踩坑_docker
- 2022-05-29 Redis?哨兵機制及配置實現_Redis
- 2022-06-19 Go中Writer和Reader接口的使用入門_Golang
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支