資料結構:是指通過某種方式組織在一起的資料元素的集合
主要包括:
序列:主要介紹列表、元組、字串
對映:字典
集合(set)
字典:di =
元組: t = 123,456,'hello'
1.列表
空列表:a=
a.extend([3,4,5]) >>>[3,3,4,5] 新增乙個列表序列
a.insert(1,'hello') >>>[3,'hello',3,4,5]
a.remove(3) >>>['hello',3,4,5] 刪除第乙個出現的3,沒有3則報錯
a.pop() >>>['hello',3,4]
a.pop(0) >>>[3,4]
a.index(4) >>>1 返回出現的第乙個4的下標
a.count(3) >>>1 列表中元素3的個數
a.sort >>>[3,4] 排序
a.reverse() >>>[4,3] 反序
刪除元素的方法
a.remove(3) 通過值刪除元素,刪除第乙個為引數值得元素
a.pop() 通過下標刪除元素,預設刪除列表最後乙個值,帶引數則刪除下標為引數值的元素
del a[0] 通過下標刪除元素,
del a[2:4] 刪除a表下標為2,3的元素
del a[:] 刪除a列表所有元素
del a 刪除列表
列表推導式:
vec = [2,4,6]
[3*x for x in vec if x<6] >>>[6,12] 3*2,3*4
vec2 = [1,2,3]
[x*y for x in vec for y in vec2] >>>[2,4,6,4,8,12,6,12,18]
巢狀列表推導式:
mat = [
[1,2,3],
[4,5,6],
[7,8,9]
print ([[row[i] for row in mat] for i in [0,1,2]])
>>>[[1, 4, 7], [2, 5, 8], [3, 6, 9]]
思考:list (zip(mat)) 和 list (zip(*mat))結果會有什麼不同
2.元組
空元組:t = ()
元組賦值: t = (123,345)
t[0] >>>123
3.字典
d =
d['jack'] >>>'[email protected]
d['jim'] = '[email protected]' >>>
del d['jim'] >>>
list(d.keys()) 將返回乙個字典中所有關鍵字組成的無序列表
sorted(d.keys()) 將返回乙個字典中所有關鍵字組成的排序列表
dict() 建構函式可以直接從key-value對中建立字典
dict([('tim',123),('tiny',234)]) >>>
推導式建立字典:
>>>
練習:迴圈輸出字典中的鍵值對:
for name,email in d.items():
print(name,email)
4.集合
空集合:a = set() ※想要建立空集合,必須使用set()
演示:'pear' in basket >>>false
集合的數**算:
a = set('ababcdabca') >>>
b = >>>
a - b >>>
b - a >>>
a | b >>>
a & b >>>
a ^ b >>>
集合推導式:
>>>
python手冊中文版 Python中文文件
python基本介紹 python擁有乙個強大的標準庫。python語言的核心只包含數字 字串 列表 字典 檔案等常見型別和函式,而由python標準庫提供了系統管理 網路通訊 文字處理 資料庫介面 圖形系統 xml處理等額外的功能。python標準庫命名介面清晰 文件良好,很容易學習和使用。pyt...
python中文版 python怎麼變成中文版
pycharm漢化過程如下 第二步,將pycharm安裝目錄下的lib資料夾內下的resources en.jar檔案複製出來,並更名為resources cn.jar 開的resources cn.jar檔案內的messages目錄中,並儲存。第四步,將resources cn.jar檔案複製回l...
《Python網路程式設計基礎》中文版簡評
python網路程式設計入門基礎 一書即將由博文視點出版發行,該書屬於入門課程的範疇,但相對於基礎入門書來說需要學習的知識會更加複雜,學習週期為1個月左右。該書雖然涉及網路程式設計,但並不把網路協議知識作為閱讀前必須掌握的背景知識。雖然 python網路程式設計入門基礎 定位為一本入門書,但還是規定...