Python-元組&字典詳解筆記

python學習網站推薦

一、tuple(元組)
本質:是一種有序集合
特點:
1、與列表非常相似
2、一旦初始化就不能修改
3、使用小括號

1.創建tuple
格式:元組名 = (元組元素1, 元組元素2, ……, 元組元素n)
創建空的元組

tuple1 = ()
print(tuple1)

2.創建帶有元素的元組
元組中的元素的類型可以不同

tuple2 = (1, 2, 3, "good", True)
print(tuple2)

3/定義只有一個元素的元組

tuple3 = (1, )
print(tuple3)
print(type(tuple3))

4.元組元素的訪問
格式:元組名[下標]
下標從0開始
取值

tuple4 = (1,2,3,4,5)
print(tuple4[0])
print(tuple4[1])
print(tuple4[2])
print(tuple4[3])
print(tuple4[4])
#print(tuple4[5]) #下標超過範圍(越界)

5.獲取最後一個元素

print(tuple4[-1])
print(tuple4[-2])
print(tuple4[-5])
#print(tuple4[-6])#越界

6.修改元組

tuple5 = (1,2,3,4,[5,6,7])
#tuple5[0] = 100  #報錯,元組不能變
#tuple5[-1] = [7,8,9]
tuple5[-1][0] = 500
print(tuple5)

7.刪除元組

tuple6 = (1,2,3)
del tuple6
#print(tuple6)

8.元組的操作

t7 = (1,2,3)
t8 = (4,5,6)
t9 = t7 + t8
print(t9)
print(t7, t8)

9.元組重複

t10 = (1,2,3)
print(t10 * 3)

10.判斷元素是否在元組中

t11 = (1,2,3)
print(4 in t11)

11.元組的截取
格式:元組名[開始下標:結束下標]
從開始下標開始截取,截取到結束下標之前

t12 = (1,2,3,4,5,6,7,8,9)
print(t12[3:7])
print(t12[3:])
print(t12[:7])

12.二維元組: 元素爲一維元組的元組

t13 = ((1,2,3),(4,5,6),(7,8,9))
print(t13[1][1])

13.元組的方法

(1)len() 返回元組中元素的個數

t14 = (1,2,3,4,5)
print(len(t14))

(2)max() 返回元組中的最大值

#min()
print(max((5,6,7,8,9)))
print(min((5,6,7,8,9)))

(3)將列表轉成元組

list = [1,2,3]
t15 = tuple(list)
print(t15)

(4)元組的遍歷

for i in (1,2,3,4,5):
    print(i)

二、字典
概述:
使用鍵-值(key-value)存儲,具有極快的查找速度
注意:字典是無序的

key的特性:
1、字典中的key必須唯一
2、key必須是不可變對象
3、字符串、整數等都是不可變的,可以作爲key
4、list是可變的,不能作爲key

#元素的訪問
#獲取:字典名[key]
dict1 = {"tom":60, "lilei":70}
#獲取:字典名[key]
print(dict1["lilei"])
#print(dict1["sunck"])#沒有
print(dict1.get("sunck"))
ret = dict1.get("sunck")
if ret == None:
    print("沒有")
else:
    print("有")

2.添加

dict1["hanmeimei"] = 99
#因爲一個key對應一個value,所以,多次對一個key的value賦值,其實就是修改值
dict1["lilei"] = 80

print(dict1)

3.刪除

#dict1.pop("tom")
#print(dict1)

4.遍歷

for key in dict1:
    print(key, dict1[key])

#print(dict1.values())
for value in dict1.values(): #[60,80,90]
    print(value)

#print(dict1.items())
for k, v in dict1.items():
    print(k, v)


for i, v2 in enumerate(dict1):
    print(i, v2)

5.和list比較
1、查找和插入的速度極快,不會隨着key-value的增加而變慢
2、需要佔用大量的內存,內存浪費多

#list
1、查找和插入的速度隨着數據量的增多而減慢
2、佔用空間小,浪費內存少

w = input()
#w = "good"
str = "sunck is a good man!sunck is a nice man!sunck is a hands man!sunck is a good man!sunck is a nice man!sunck is a great man!sunck is a noble man!sunck is a cool man!"
#print(str.count(w))
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章