Python學習筆記(6)字典、元組、列表
1.字典
Python內置了字典的支持,也就是java中的map。使用鍵-值對(Key,Value)的形式存儲數據,其中Key必須是唯一的,而value值可以重復出現,Key的類型必須是不可變的,如數字、字符串。元組,而Value可以是任何類型,如列表,字典,字符串等。
和list對比優點是能夠極快的查詢到value,而缺點是暫用較多的內存
舉個栗子:
使用字典,獲取人的年齡,只需要讓姓名和年齡對應上就可以直接獲取。如果用list實現,獲取到某一個人的年齡,需要循環列表。
其中Python的字典和java中map不同的是,python是動態類型語言,所以Python的字典(Key-Value)類型都是可變的。
語法格式:
d = {key1 : value1, key2 : value2 }
map = {'小明': 23, '小李': 20, '小麗': 22}
map2 = {'小明': '男', '小李': 20, 23: '小明'}
字典的取值方法:
只需要通過key就可以取到值,需要注意的是,當key不存在時,會報異常
map['小明']
想要避免Key不存在的異常,有兩種方式,一種是使用'in'判斷Key是否存在
if '小明' in map.keys():
print(map['小明'])
else:
print("Key不存在")
另外一種方式是通過字典提供的get()方法,如果Key不存在,則返回None或者自己指定的值
字典的操作
2.set
set和字典類似,但是set不儲存Value,set可以理解成數學上的無序不重復數列。
set的定義需要提供一組數列
3.元組、列表
元組和列表相似,不同之處在于元組是不可變的,而列表是可變的。
1)列表
列表的定義:列表使用中括號定義
# 列表
list1 = [1, 3, 5, 7, 10]
list2 = ['赤', '橙', '紅', '黃', '綠', '青', '藍', '紫']
列表的操作
list1 = [1, 3, 5, 7, 10]
print(list1[0]) # 讀第一個數 >>>1
print(list1) # >>>[1, 3, 5, 7, 10]
list1[0] = 2 # 給第一個數重新賦值
print(list1) # >>>[2, 3, 5, 7, 10]
list1.remove(2) # 刪除第一個2這個元素
print(list1) # >>>[3, 5, 7, 10]
list1.append(10) # 添加一個元素在最后
print(list1) # >>>[3, 5, 7, 10, 10]
list1.insert(1, 4) # 插入一個元素
print(list1) # >>>[3, 4, 5, 7, 10, 10]
2)元組
元組的定義:元組使用小括號定義
# 元組
tup1 = (1, 3, 5, 7, 10)
tup2 = ('赤', '橙', '紅', '黃', '綠', '青', '藍', '紫')
# 也可以不要小括號
tup3 = '個', '十', '百', '千'
# 當元組只有一個元素時,需要加上一個逗號,否則會被認為是一個運算符
# 如下所示 tupOne1 = (3)會被認為是整數3
tupOne1 = (3)
tupOne2 = (3,)
元組的操作
由于元組是不可變的,所以當修改元組值時會報異常,因此元組可以認為是一個只讀數列
元組運算符(參考 菜鳥教程)
Python表達式 | 結果 | 描述 |
---|---|---|
len((1,2,3)) | 3 | 計算元組長度 |
(1,2,3)+(4,5,6) | (1,2,3,4,5,6) | 連接 |
('HI!'*4) | ('HI!','HI!','HI!','HI!') | 復制 |
3 in (1,2,3) | True | 是否包含 |
for i in (1,2,3) :print(i, end=" ") | 1 2 3 | 迭代 |
智能推薦
python列表,元組,字典,集合
列表(list) ==>[ ] 列表(list)是最重要的Python內置對象之一,是包含若干元素的有序連續內存空間。當列表增加或刪除元素時,列表對象自動進行內存的擴展或收縮,從而保證相鄰元素之間沒有縫隙。Python列表的這個內存自動管理功能可以大幅度減少程序員的負擔,但插入和刪除非尾部元素時涉及到列表中大量元素的移動,會嚴重影響效率。 在非尾部位置插入和刪除元素時會改變該位置后面的元素在...
Python數據結構學習(列表、字典、元組、集合)
list:使用方括號 [ ] 1、列表基礎知識 列表中的每一個元素都是可變的;列表中的元素是有序的,即每一個元素都有一個位置;列表可以容納Python中的任何對象。Python內置的一種數據類型是列表:list。list是一種有序的集合,可以隨時添加和刪除其中的元素。 列出班里所有同學的名字,就可以用一個list表示: 變量classmates就是一個list。用len()函數可以獲...
【python】特色數據類型——元組(列表、元組、字典、集合)(6)
參考 Python從零開始系列連載,by 王大偉 Python愛好者社區 參考 Hellobi Live | 1小時破冰入門Python 參考 《簡明python教程》 參考 《小甲魚零基礎入門學python》 Note: 更多連載請查看【python】 目錄 目錄 元組 1 元組的創建 2 元組的索引 3 元組的切片 4 元組的連接 5 元組的復制 6 元組對內部元素的循環 7 查找元組的元素 ...
Python學習筆記之——列表, 元組
目錄 列表 列表推導 生成器表達式 元組 不可變的元組如果含有可變對象呢? 列表 列表推導 列表推導,創建列表的快捷方式, list comprehension , listcomps 生成器表達式( generator expression) 則稱為 genexps for 循環 列表推導 列表推導...
猜你喜歡
python學習筆記(二)列表和元組
一、列表格式 列表也可稱為數組,與c語言中的數組一樣,列表也是由[]和,組成,如: mumber = [1,2,3,4,5] 這就定義了一個由五個整形組成的一個列表。 但是,python的列表不會如此簡單,它可以說是一個大雜燴,為何這樣說呢? member = [‘Jacyn’,1,2,3.00,[1,2,3]] 這樣一個包含了字符串,整形,浮點型,甚至包含了一個列表的列表...
freemarker + ItextRender 根據模板生成PDF文件
1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...
電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!
Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...
requests實現全自動PPT模板
http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...