python之列表、元組、字典、數組對比


一、區別對比

  列表[] 元組() 字典{} 數組
概念

一組有序項目的集合。可變的數據類型【可進行增刪改查】

列表是以方括號“[]”包圍的數據集合,不同成員以“,”分隔。

列表中可以包含任何數據類型,也可包含另一個列表

列表可通過序號訪問其中成員

不可變序列

元組是以圓括號“()”包圍的數據集合,不同成員以“,”分隔

與列表不同:元組中數據一旦確立就不能改變

通過下標進行訪問聲明:

L=(1,2,3)

含0個元素的元組: L = ()

含1個元素的元組:L=(1,) 注意有逗號

字典是另一種可變容器模型,且可存儲任意類型對象。

字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中 ,格式如下所示:

d = {key1 : value1key2 : value2 }

鍵必須是唯一的,但值則不必。

值可以取任何數據類型,但鍵必須是不可變的,如字符串,數字或元組。

python中的list是python的內置數據類型,list中的數據類不必相同的,而array的中的類型必須全部相同。在list中的數據類型保存的是數據的存放的地址,簡單的說就是指針,並非數據,這樣保存一個list就太麻煩了,例如list1=[1,2,3,'a']需要4個指針和四個數據,增加了存儲和消耗cpu。numpy中封裝的array有很強大的功能,里面存放的都是相同的數據類型

1)numpy array 必須有相同數據類型屬性 ,Python list可以是多種數據類型的混合
2)numpy array有一些方便的函數
3)numpy array數組可以是多維的
示例
n=[1,2,3,4,5,6]
m=[7,8,9,10]
n.extend(m)
print n
out:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 7, 8, 9, 10]
o =('a','b','c',('d1','d2')) 
print o[0]
print o[3][0] 
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
dict['Name']
dict['Age']
二維numpy數組
b=np.array([[1,2,3],[4,5,6],[7,8,9],[10,11,12]])
增加     

append() 追加

insert(index,元素) 插入

extend(iterable) 迭代着追加

dic = {'name': '太白', 'age': 18, 'sex': '男', 'job': 'IT'}
第 一種   有此key 就改 (改后面的值) ,無此key 就添加(key 和值都添加)添加無序
dic['sex'] = '男'
dic['name'] = 'alex'

第二種 setdefault 有此key擇不做任何操作但是給我返回對應的值,無此key添加
 比如: dic.setdefault('name') 返回 太白
     dic.setdefault('name':'太白') 返回的也是太白
如果沒有此key 就key 和值都添加 到末尾
 
 刪除      
           pop 按照索引 有返回值
            remove 按照元素刪除
            clear 清空
            del
                del l1[1] 按照索引刪除
                del l1[1:3] 按照切片
                del l1[1:6:2] 切片+步長
 
 改      
        改:
            l1[1] = 'alex'
            l1[1:3] = 'abced'
            l1[1:6:2] = 'abc'
 
 查      

索引,切片,切片+步長:for 循環
len()\count()\sort()\sort(reverse=True)\reverse()

print(dic['name']) 以鍵來查,不是索引
get
print(dic.get())也是以鍵來查,查不到也不會報錯 會返回一個None
# print(dic.get('name1'))
# print(dic.get('name1','沒有此鍵。。。。'))
          但是你也可以設置一個值,然后就返回這個值
dic.key()
print(dic.keys()),type(dic.keys) 類似於列表的容器
就是把key這個鍵拿出來 等於做出一個列表了,可以隨便使用了
而且這個數據類型是 dict_keys
dic.valuse() 這三個都是他們本身 那個數據類型
同等 把值拿出來 了 還可以轉換成 list
dic.items()

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM