python數據類型的詳細分析(附示例代碼)
前言
Python 四種集合數據類型:
- 列表(List)是一種有序和可更改的集合。允許重復的成員。
- 元組(Tuple)是一種有序且不可更改的集合。允許重復的成員。
- 集合(Set)是一個無序和無索引的集合。沒有重復的成員。
- 詞典(Dictionary)是一個無序,可變和有索引的集合。沒有重復的成員。。
常用的幾種類型如上面所示
下面將一一講解四種類型以及其中的區別
1. 列表
列表是以[]
格式,而且字符可以雙引號或者單引號
x = ["a", "b", "c"] print(x) x = ['a', 'b','c'] print(x)
截圖如下:
列表中的方法有很多,舉幾個方法如下:
方法 | 描述 |
---|---|
append() | 在列表的末尾添加一個元素 |
clear() | 刪除列表中的所有元素 |
copy() | 返回列表的副本 |
count() | 返回具有指定值的元素數量。 |
extend() | 將列表元素(或任何可迭代的元素)添加到當前列表的末尾 |
index() | 返回具有指定值的第一個元素的索引 |
insert() | 在指定位置添加元素 |
pop() | 刪除指定位置的元素 |
remove() | 刪除具有指定值的項目 |
reverse() | 顛倒列表的順序 |
sort() | 對列表進行排序 |
怎麼引用列表,通過其索引進行訪問
具體訪問通過其下標值進行訪問
x = ["a", "b", "c"] print(x[1])
負索引進行訪問,-1 表示最後一個項目,-2 表示倒數第二個項目
x = ["a", "b", "c"] print(x[-1])
通過其索引范圍,具體是左閉右開
x = ["a", "b", "c"] print(x[0:1]) x = ["a", "b", "c"] print(x[0:]) x = ["a", "b", "c"] print(x[:1])
或者是負索引的范圍
最右邊是負1,也是左閉右開
x = ["a", "b", "c"] print(x[-3:-1])
怎麼更改其列表值
列表可以更改值
具體更改隻需要在索引值中更改其值即可
x = ["a", "b", "c"] x[1]="v" print(x)
列表中進行遍歷輸出
使用for each結構進行遍歷輸出
x = ["a", "b", "c"] for y in x: print(y)
檢查列表中是否有該值
通過for in結構進行遍歷,如果有該值進行輸出
x = ["a", "b", "c"] if "a" in x: print("yes")
列表長度
x = ["a", "b", "c"] print(len(x))
添加元素
添加元素有多種,不過以下的展示註意區分
- 將項目添加到列表的末尾 append()
- 指定的索引處添加項目 insert()
x = ["a", "b", "c"] x.append("d") print(x) x = ["a", "b", "c"] x.insert(3,"d") print(x)
移除元素
移除元素也有多種,註意區分
- remove() 方法刪除指定的項目
- pop() 方法刪除指定的索引(如果未指定索引,則刪除最後一項)
- del 關鍵字刪除指定的索引
- clear() 方法清空列表
x.remove("d") x = ["a", "b", "c"] x.pop() print(x) del x[0] del x
del x
是完整的刪除列表,最後輸出x的時候也找不到該列表瞭
對比一下清空列表
x = ["a", "b", "c"] x.clear() print(x)
合並兩個列表
合並列表可以通過+進行操作
x = ["a", "b", "c"] y = ["d","e","f"] x+y
具體添加列表可以結合append和extend進行for循環的添加
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
構造列表
通過雙括號進行構建
x = list(("a", "b", "c")) x
2. 元組
相信講完列表
對python的一些基本概念都瞭解得差不多
下面開始講元組
結構也差不多大同小異
隻不過元組是以()
為結構,且是不可更改
方法 | 描述 |
---|---|
count() | 返回元組中指定值出現的次數 |
index() | 在元組中搜索指定的值並返回它被找到的位置 |
x=("a","b","c") print(x) print(x[1]) print(x[-1]) print(x[0:1])
如果更改其數值
會出錯
對比其列表
數組不可更改不可添加元素,無法刪除其項目中的某一個,但可以徹底刪除元組
但其遍歷、檢查項目是否存在、元組長度都是一樣的
而且如需創建僅包含一個項目的元組,您必須在該項目後添加一個逗號,否則 Python 無法將變量識別為元組
x= ("a",) print(type(x)) #不是元組 x= ("a") print(type(x))
也可以通過構建元組的方式
x = tuple(("a", "b", "c")) # 請註意雙括號 print(x)
3. 集合
無序和無索引的集合,用花括號
x = {"a", "b", "c"} print(x)
方法 | 描述 |
---|---|
add() | 向集合添加元素。 |
clear() | 刪除集合中的所有元素。 |
copy() | 返回集合的副本。 |
difference() | 返回包含兩個或更多集合之間差異的集合。 |
difference_update() | 刪除此集合中也包含在另一個指定集合中的項目。 |
discard() | 刪除指定項目。 |
intersection() | 返回為兩個其他集合的交集的集合。 |
intersection_update() | 刪除此集合中不存在於其他指定集合中的項目。 |
isdisjoint() | 返回兩個集合是否有交集。 |
issubset() | 返回另一個集合是否包含此集合。 |
issuperset() | 返回此集合是否包含另一個集合。 |
pop() | 從集合中刪除一個元素。 |
remove() | 刪除指定元素。 |
symmetric_difference() | 返回具有兩組集合的對稱差集的集合。 |
symmetric_difference_update() | 插入此集合和另一個集合的對稱差集。 |
union() | 返回包含集合並集的集合。 |
update() | 用此集合和其他集合的並集來更新集合。 |
集合中由於是無序的,所以無法將其顯示索引值,但可以通過for進行遍歷
無法更改其值,但可以添加一些值:
將一個項添加到集合add()
x = {"a", "b", "c"} x.add("d") print(x)
向集合中添加多個項目 update()
x = {"a", "b", "c"} x.update(["d", "e", "f"]) print(x)
刪除集合中的項目remove()
或discard()
集合中無序,使用pop不知道清除哪個
x = {"a", "b", "c"} x.pop() print(x)
clear()
清空集合,del
徹底刪除集合
union()
合並集合
構造集合使用
x = set(("a", "b", "c")) # 請留意這個雙括號 print(x)
4. 字典
無序、可變和有索引的集合
字典用花括號編寫,擁有鍵和值
x = { "a": "1", "b": "2", "c": 3 } print(x)
獲取值可以通過直接索引或者get獲取
方法 | 描述 |
---|---|
clear() | 刪除字典中的所有元素 |
copy() | 返回字典的副本 |
fromkeys() | 返回擁有指定鍵和值的字典 |
get() | 返回指定鍵的值 |
items() | 返回包含每個鍵值對的元組的列表 |
keys() | 返回包含字典鍵的列表 |
pop() | 刪除擁有指定鍵的元素 |
popitem() | 刪除最後插入的鍵值對 |
setdefault() | 返回指定鍵的值。如果該鍵不存在,則插入具有指定值的鍵。 |
update() | 使用指定的鍵值對字典進行更新 |
values() | 返回字典中所有值的列表 |
總結
到此這篇關於python數據類型詳細分析的文章就介紹到這瞭,更多相關python數據類型分析內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!