python數(shù)據(jù)類型的詳細(xì)分析(附示例代碼)
Python 四種集合數(shù)據(jù)類型:
- 列表(List)是一種有序和可更改的集合。允許重復(fù)的成員。
- 元組(Tuple)是一種有序且不可更改的集合。允許重復(fù)的成員。
- 集合(Set)是一個(gè)無(wú)序和無(wú)索引的集合。沒(méi)有重復(fù)的成員。
- 詞典(Dictionary)是一個(gè)無(wú)序,可變和有索引的集合。沒(méi)有重復(fù)的成員。。
常用的幾種類型如上面所示
下面將一一講解四種類型以及其中的區(qū)別
1. 列表
列表是以[]
格式,而且字符可以雙引號(hào)或者單引號(hào)
x = ["a", "b", "c"] print(x) x = ['a', 'b','c'] print(x)
截圖如下:
列表中的方法有很多,舉幾個(gè)方法如下:
方法 | 描述 |
---|---|
append() | 在列表的末尾添加一個(gè)元素 |
clear() | 刪除列表中的所有元素 |
copy() | 返回列表的副本 |
count() | 返回具有指定值的元素?cái)?shù)量。 |
extend() | 將列表元素(或任何可迭代的元素)添加到當(dāng)前列表的末尾 |
index() | 返回具有指定值的第一個(gè)元素的索引 |
insert() | 在指定位置添加元素 |
pop() | 刪除指定位置的元素 |
remove() | 刪除具有指定值的項(xiàng)目 |
reverse() | 顛倒列表的順序 |
sort() | 對(duì)列表進(jìn)行排序 |
怎么引用列表,通過(guò)其索引進(jìn)行訪問(wèn)
具體訪問(wèn)通過(guò)其下標(biāo)值進(jìn)行訪問(wèn)
x = ["a", "b", "c"] print(x[1])
負(fù)索引進(jìn)行訪問(wèn),-1 表示最后一個(gè)項(xiàng)目,-2 表示倒數(shù)第二個(gè)項(xiàng)目
x = ["a", "b", "c"] print(x[-1])
通過(guò)其索引范圍,具體是左閉右開
x = ["a", "b", "c"] print(x[0:1]) x = ["a", "b", "c"] print(x[0:]) x = ["a", "b", "c"] print(x[:1])
或者是負(fù)索引的范圍
最右邊是負(fù)1,也是左閉右開
x = ["a", "b", "c"] print(x[-3:-1])
怎么更改其列表值
列表可以更改值
具體更改只需要在索引值中更改其值即可
x = ["a", "b", "c"] x[1]="v" print(x)
列表中進(jìn)行遍歷輸出
使用for each結(jié)構(gòu)進(jìn)行遍歷輸出
x = ["a", "b", "c"] for y in x: print(y)
檢查列表中是否有該值
通過(guò)for in結(jié)構(gòu)進(jìn)行遍歷,如果有該值進(jìn)行輸出
x = ["a", "b", "c"] if "a" in x: print("yes")
列表長(zhǎng)度
x = ["a", "b", "c"] print(len(x))
添加元素
添加元素有多種,不過(guò)以下的展示注意區(qū)分
- 將項(xiàng)目添加到列表的末尾 append()
- 指定的索引處添加項(xiàng)目 insert()
x = ["a", "b", "c"] x.append("d") print(x) x = ["a", "b", "c"] x.insert(3,"d") print(x)
移除元素
移除元素也有多種,注意區(qū)分
- remove() 方法刪除指定的項(xiàng)目
- pop() 方法刪除指定的索引(如果未指定索引,則刪除最后一項(xiàng))
- del 關(guān)鍵字刪除指定的索引
- clear() 方法清空列表
x.remove("d") x = ["a", "b", "c"] x.pop() print(x) del x[0] del x
del x
是完整的刪除列表,最后輸出x的時(shí)候也找不到該列表了
對(duì)比一下清空列表
x = ["a", "b", "c"] x.clear() print(x)
合并兩個(gè)列表
合并列表可以通過(guò)+進(jìn)行操作
x = ["a", "b", "c"] y = ["d","e","f"] x+y
具體添加列表可以結(jié)合append和extend進(jìn)行for循環(huán)的添加
x = ["a", "b", "c"] y = ["d","e","f"] for z in y: x.append(z) x
x = ["a", "b", "c"] y = ["d","e","f"] x.extend(y) x
構(gòu)造列表
通過(guò)雙括號(hào)進(jìn)行構(gòu)建
x = list(("a", "b", "c")) x
2. 元組
相信講完列表
對(duì)python的一些基本概念都了解得差不多
下面開始講元組
結(jié)構(gòu)也差不多大同小異
只不過(guò)元組是以()
為結(jié)構(gòu),且是不可更改
方法 | 描述 |
---|---|
count() | 返回元組中指定值出現(xiàn)的次數(shù) |
index() | 在元組中搜索指定的值并返回它被找到的位置 |
x=("a","b","c") print(x) print(x[1]) print(x[-1]) print(x[0:1])
如果更改其數(shù)值
會(huì)出錯(cuò)
對(duì)比其列表
數(shù)組不可更改不可添加元素,無(wú)法刪除其項(xiàng)目中的某一個(gè),但可以徹底刪除元組
但其遍歷、檢查項(xiàng)目是否存在、元組長(zhǎng)度都是一樣的
而且如需創(chuàng)建僅包含一個(gè)項(xiàng)目的元組,您必須在該項(xiàng)目后添加一個(gè)逗號(hào),否則 Python 無(wú)法將變量識(shí)別為元組
x= ("a",) print(type(x)) #不是元組 x= ("a") print(type(x))
也可以通過(guò)構(gòu)建元組的方式
x = tuple(("a", "b", "c")) # 請(qǐng)注意雙括號(hào) print(x)
3. 集合
無(wú)序和無(wú)索引的集合,用花括號(hào)
x = {"a", "b", "c"} print(x)
方法 | 描述 |
---|---|
add() | 向集合添加元素。 |
clear() | 刪除集合中的所有元素。 |
copy() | 返回集合的副本。 |
difference() | 返回包含兩個(gè)或更多集合之間差異的集合。 |
difference_update() | 刪除此集合中也包含在另一個(gè)指定集合中的項(xiàng)目。 |
discard() | 刪除指定項(xiàng)目。 |
intersection() | 返回為兩個(gè)其他集合的交集的集合。 |
intersection_update() | 刪除此集合中不存在于其他指定集合中的項(xiàng)目。 |
isdisjoint() | 返回兩個(gè)集合是否有交集。 |
issubset() | 返回另一個(gè)集合是否包含此集合。 |
issuperset() | 返回此集合是否包含另一個(gè)集合。 |
pop() | 從集合中刪除一個(gè)元素。 |
remove() | 刪除指定元素。 |
symmetric_difference() | 返回具有兩組集合的對(duì)稱差集的集合。 |
symmetric_difference_update() | 插入此集合和另一個(gè)集合的對(duì)稱差集。 |
union() | 返回包含集合并集的集合。 |
update() | 用此集合和其他集合的并集來(lái)更新集合。 |
集合中由于是無(wú)序的,所以無(wú)法將其顯示索引值,但可以通過(guò)for進(jìn)行遍歷
無(wú)法更改其值,但可以添加一些值:
將一個(gè)項(xiàng)添加到集合add()
x = {"a", "b", "c"} x.add("d") print(x)
向集合中添加多個(gè)項(xiàng)目 update()
x = {"a", "b", "c"} x.update(["d", "e", "f"]) print(x)
刪除集合中的項(xiàng)目remove()
或discard()
集合中無(wú)序,使用pop不知道清除哪個(gè)
x = {"a", "b", "c"} x.pop() print(x)
clear()
清空集合,del
徹底刪除集合
union()
合并集合
構(gòu)造集合使用
x = set(("a", "b", "c")) # 請(qǐng)留意這個(gè)雙括號(hào) print(x)
4. 字典
無(wú)序、可變和有索引的集合
字典用花括號(hào)編寫,擁有鍵和值
x = { "a": "1", "b": "2", "c": 3 } print(x)
獲取值可以通過(guò)直接索引或者get獲取
方法 | 描述 |
---|---|
clear() | 刪除字典中的所有元素 |
copy() | 返回字典的副本 |
fromkeys() | 返回?fù)碛兄付ㄦI和值的字典 |
get() | 返回指定鍵的值 |
items() | 返回包含每個(gè)鍵值對(duì)的元組的列表 |
keys() | 返回包含字典鍵的列表 |
pop() | 刪除擁有指定鍵的元素 |
popitem() | 刪除最后插入的鍵值對(duì) |
setdefault() | 返回指定鍵的值。如果該鍵不存在,則插入具有指定值的鍵。 |
update() | 使用指定的鍵值對(duì)字典進(jìn)行更新 |
values() | 返回字典中所有值的列表 |
總結(jié)
到此這篇關(guān)于python數(shù)據(jù)類型詳細(xì)分析的文章就介紹到這了,更多相關(guān)python數(shù)據(jù)類型分析內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。