資料結構:是指透過某種方式組織在一起的資料元素的集合
#主要包括:
#序列:主要介紹列表、元組、字串
映射:字典
集合(set)
列表:shoplist = ['apple', 'mango', 'carrot', 'banana']
字典:di = {'a':123,'b':'something'}
集合:jihe = {'apple','pear','apple'}
元組: t = 123,456, 'hello'
1.列表
空列表:a=[]
函數方法:a.append(3) ## [3,4,5]) >>>[3,3,4,5] 新增列表序列
a.insert(1,'hello') a.insert(1,'hello') a.insert(1,'hello') a.insert(1,'hello') >] hello',3,4,5]
a.remove(3) >>>['hello',3,4,5] >>>['hello',3,4,5] >>>['hello',3,4,5] 則出現的3;>>['hello',3,4,5] 則沒有出現的3;>>['hello',3,4,5] 則沒有錯誤#3; a.pop() >>>['hello',3,4]
(0))
(0) 3,4]
a.index(4) > ;>>1 返回出現的第一個4的下標
a.count(3) >> >>> ;[3,4] 排序
a.reverse() >>>[4,3] 反序## 元素,刪除第一個為參數值得元素
a.pop() 透過下標刪除元素,預設刪除清單最後一個值,以參數刪除下標示為參數值的元素
del a[0] 刪除元素,
del a[2:4] 刪除a表下標為2,3的元素
del a[:] 推導式:
vec = [2,4,6]
[3*x for x in vec if x& * vec2 = [1,2,3]
[x*y for x in vec for y in vec2] >>>[2,4,6,4,8,12,6,12,18];>[2,4,6,4,8,12,6,12,18]
嵌套列表推導式:
mat = [
[1,2,3],
[45,2,3],
[45,5,6]、## ]
print ([[row[i] for row in mat] for i in [0,1,2]])
>>>[[1, 4, 7], [2, 4, 7], [2, 4, 7], [2, 4, 7], [2, 44, 7],2, 5, 8], [3, 6, 9]]
思考:list (zip(mat)) 與list (zip(*mat))結果會有何不同
2.元組
空元組:t = ()
元組賦值: t = (123,345)
t[0] &Jack;>>123##3. jack@mail.com','Tom':'Tom@main.com'}
d['Jack'] H 'Jim@sin.com' >>>{'Jim': 'Jim@sin.com', 'Jack': 'jack@mail.com', 'Tom': 'Tom@main.com'}
del d['Jim'] >>>{'Jack': 'jack@mail.com', 'Tom': 'Tom@main.com'}
# list(d.keys( )) 將傳回一個字典中所有關鍵字組成的無序列表
sorted(d.keys()) 將傳回一個字典中所有關鍵字組成的排序清單
dict() 建構子可以直接從key -value對中建立字典
dict([('Tim',123),('Tiny',234)]) >>>{'Tiny': 234, 'Tim': 123}
# 推導式建立字典:
{d2:d2+'@main.com' for d2 in list(d.keys())}
﹡; com', 'Tom': 'Tom@main.com'}
練習:循環輸出字典中的鍵值對:
for name,email in d.items():#,# name,email in d.items():#,# email)
4.集合
空集合:A = set() ※想要建立空白集合,必須使用set()
示範:
basket = {'apple','orange', 'apple'} >>>{'orange', 'apple'} 注意重複的元素只顯示一個?
'apple' in basket >>>True
'pear' in basket )#c>
a = set('ababcdabca ') >>>{'c', 'b', 'a', 'd'}
b = {'a','b','m'} > > 'b', 'a', 'm'}
a - b >>>{'c', 'd'}
;
a | b >>>{'c', 'd', 'b', 'a', 'm'}
); 'b'}
a ^ b >>>{'c','d','m'}
{x not ab'} >>>{'c','d'}
#
以上是python的資料結構的詳細內容。更多資訊請關注PHP中文網其他相關文章!

每天學習Python兩個小時是否足夠?這取決於你的目標和學習方法。 1)制定清晰的學習計劃,2)選擇合適的學習資源和方法,3)動手實踐和復習鞏固,可以在這段時間內逐步掌握Python的基本知識和高級功能。

Python在Web開發中的關鍵應用包括使用Django和Flask框架、API開發、數據分析與可視化、機器學習與AI、以及性能優化。 1.Django和Flask框架:Django適合快速開發複雜應用,Flask適用於小型或高度自定義項目。 2.API開發:使用Flask或DjangoRESTFramework構建RESTfulAPI。 3.數據分析與可視化:利用Python處理數據並通過Web界面展示。 4.機器學習與AI:Python用於構建智能Web應用。 5.性能優化:通過異步編程、緩存和代碼優

Python在開發效率上優於C ,但C 在執行性能上更高。 1.Python的簡潔語法和豐富庫提高開發效率。 2.C 的編譯型特性和硬件控制提升執行性能。選擇時需根據項目需求權衡開發速度與執行效率。

Python在現實世界中的應用包括數據分析、Web開發、人工智能和自動化。 1)在數據分析中,Python使用Pandas和Matplotlib處理和可視化數據。 2)Web開發中,Django和Flask框架簡化了Web應用的創建。 3)人工智能領域,TensorFlow和PyTorch用於構建和訓練模型。 4)自動化方面,Python腳本可用於復製文件等任務。

Python在數據科學、Web開發和自動化腳本領域廣泛應用。 1)在數據科學中,Python通過NumPy、Pandas等庫簡化數據處理和分析。 2)在Web開發中,Django和Flask框架使開發者能快速構建應用。 3)在自動化腳本中,Python的簡潔性和標準庫使其成為理想選擇。

Python的靈活性體現在多範式支持和動態類型系統,易用性則源於語法簡潔和豐富的標準庫。 1.靈活性:支持面向對象、函數式和過程式編程,動態類型系統提高開發效率。 2.易用性:語法接近自然語言,標準庫涵蓋廣泛功能,簡化開發過程。

Python因其簡潔與強大而備受青睞,適用於從初學者到高級開發者的各種需求。其多功能性體現在:1)易學易用,語法簡單;2)豐富的庫和框架,如NumPy、Pandas等;3)跨平台支持,可在多種操作系統上運行;4)適合腳本和自動化任務,提升工作效率。

可以,在每天花費兩個小時的時間內學會Python。 1.制定合理的學習計劃,2.選擇合適的學習資源,3.通過實踐鞏固所學知識,這些步驟能幫助你在短時間內掌握Python。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

SublimeText3漢化版
中文版,非常好用

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具