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))