天天看點

Python——簡單資料結構

說明

對于類型的簡單使用已有初步掌握,本次記錄一些查漏補缺;

簡介

定義:計算機存儲、組織資料的方式;

功能:計算機内部對資料按一定的結構進行排列組織的存放,達到快速查找、提取的目的;

清單

1、統計元素在清單中出現的次數

2、按指定方式排序

​ 清單中的元素按長度的大小從小到大排序;

字典

1、其他對象轉換為字典的方式

2、查找value

直接索引查找:dict[“name”] 使用get方法:dict.get(“name”)

3、字典中添加元素

直接索引添加:dict[“name”] = “lisi” 使用setdefault:dict.setdefault(‘name’,‘lisi’)

使用setdefault不會改變字典中已有的鍵值對,索引則會覆寫修改;

4、删除字典中元素(鍵值對)

關鍵字del:del dict[‘name’] pop:dict.pop(‘name’) 必須傳入參數,傳回删除的鍵值對的值

5、擷取key、value和鍵值對

dict.keys():傳回所有鍵的清單 dict.values():傳回所有值的清單 dict.items():傳回所有鍵值對

6、封包和解包

封包:将多個值指派給一個變量(産生元組)

解包:将一個元組(或清單)指派給多個變量

a1, a2, a3 = tuple1		# tuple1=(1, 2, 3)
*a1, a2, a3 = tuple2	# tuple2=(1, 2, 3, 4)	a1可接受多個元素
           

集合

重要特性:

  • 不支援索引,不添加記錄元素順序,元素在集合中随機排列;
  • 集合中不能包含可變類型的參數;
  • 集合中不能包含重複的資料,重複會自動删除;

1、添加元素和删除元素

add:添加元素 remove(“元素”):删除元素 discard(“元素”):删除元素,沒有不會報錯

2、消除重複資料

先轉成集合,再轉成清單可以消除重複元素;

3、關系測試

set1.issubset(set2)		# 測試前面集合是不是後面集合的子集
set1.issuperset(set2)	# 測試前面的集合是否完全包含後面的集合
set1.difference(set2)	# 兩個集合相減,加update可原地生效
set1.intersection(set2)	# 集合相交,加update可原地生效
set1.union(set2)		# 集合并集,加update可原地生效
           

4、不可變集合frozenset