本文目錄一覽:
- 1、python裡面元組是什麼意思?
- 2、Python中的元組(Tuple)
- 3、python基礎之序列類型的方法——列表amp;元組
- 4、Python中的基本數據類型之元組類型
- 5、python基礎-列表 元組 集合 字典區別和用法
- 6、python自學筆記13:元組和字典的操作
python裡面元組是什麼意思?
元組其實和列表的差距並不是很大,但是也有其獨立的特點:
①元組是一系列不可變的Python對象。元組是一種序列,就像列表一樣;列表通常用來存儲相同類型的數據;而元組在實際開發中,通常用來存儲不同類型的數據。
②元組和列表之間的主要區別是元組不能像列表那樣改變元素的值,可以簡單地理解為“只讀列表”。 元組使用小括號 -(),而列表使用方括號 -[];
③元組創建很簡單,只需要在括號中添加元素,並使用逗號隔開即可。
p class=”ztext-empty-paragraph”
創建元組:需使用逗號分隔值放入小括號的一個序列。 或者,也可以將這些逗號分隔值放在括號之間。
元組元素的訪問:請使用方括號進行指定索引切片或索引,以獲取該索引處的值。
更改元組:元組是不可變的,但是可以使用現有元組的一部分來創建新的元組。
刪除元組元素:元組中的元素值是不允許刪除的,但我們可以使用del語句來刪除整個元組。
python元組構建了對象的簡單組合,元組與列表非常相似,但元組不能在原位置修改,通常寫成包在圓括號中的一系列項,且具有列表的大多數屬性。
元組是:
任意對象的有序集合:與字符串和列表類似,元組是一個基於位置的有序對象集合,可以嵌入任何類型的對象。
通過偏移量存取:同字符串、列表一樣,元組中的元素也是通過偏移量來訪問的,支持索引和分片。
屬於“不可變序列”:與字符串相同,元組是不可變的,不支持適用於列表的任何原位置修改操作。
固定長度、多樣性、任意嵌套:元組不可變,所以不能改變元組長度,元組可以包含複合對象,支持任意嵌套。
對象引用數組:與列表相似,元組也是對象引用的數組,存儲了指向其他對象的存取點。
Python中的元組(Tuple)
在Python中,元組(Tuple)與列表(List)類似,也是一個有序的序列,但元組是一個不可變對象,其一旦初始化後便無法進行修改。
一般在創建元組時,分為創建空元組和非空元組,其創建方式如下:
從上面可以看到,我們只需要把元組的所有元素放在 小括號 () 裡面,每個元素之間通過 逗號 , 間隔起來即可,當然和列表一樣,元組中同樣允許存放不同數據類型的元素。
元組中使用的 () 是常見的數學運算符,如果參考列表的創建,如下:
從上面可以看到,我們創建出來的壓根就不是元組類型。那麼我們想創建一個只包含一個元素的元組時,需要怎麼創建呢?
很簡單,只需要在元素後加上一個 逗號 , ,這樣創建出來就是一個元組。
當我們需要訪問元組中的元素,可以類似列表一樣通過索引取值或切片取值。
如果訪問的索引不存在,那麼會報錯: IndexError: tuple index out of range
在元組中,可以像列表一樣使用切片,語法為: 元組[start:end:step] ,通過切片可以獲取到元組中指定範圍的元素,返回結果是一個新元組。在這裡,需要注意切片的規則是左閉右開,也就是說包含頭部 start,但不包含尾部 end ,而 step 則表示切片的步長,需要每間隔 step 個元素取一次。
在上面我們提到了元組是不可變的,這就意味着我們創建一個元組之後,不能再去改變其值了,比如下面這樣就會出現報錯:
假設元組中存在元素是一個可變對象,如果我們不改變元組,但改變了可變對象的值,又會得到怎麼的結果呢?請看下面實例:
從上面可以看到,元組中的第 2 個元素似乎發生了變化,這豈不是和上面說的元組不可變自相矛盾了嗎?
其實,我們說的元組不可變,指的是元組中各元素的指向永遠保持不變。在上面操作中,元組中第 2 個元素指向的一直是 列表nums ,我們改變的其實不是元組的元素,而只是改變了 列表nums 中的元素。
元組是不可變的,因此我們就不能刪除元組中的元素,但是,我們可以通過 del 語句刪除整個元組。
通過關鍵字 in ,可檢查當前元組中是否包含指定元素,返回結果為布爾值 True 或 False。
通過關鍵字 in ,還可以用於遍歷當前元組。
python基礎之序列類型的方法——列表amp;元組
首先登場的選手是python的列表,列表屬於可變類型,所以它將有完整的增刪改查方法,讓我們一起來看看具體是什麼。
增,顧名思意就是可以對列表進行新增元素的操作,python的列表提供了三種新增元素的操作,分別是:append() ,insert(), extend()
首先是append(),它可以將一個元素追加到列表的末尾。
舉個栗子:
上述代碼中,我們使用的是li.append(‘新增內容’)的方式來為列表添加元素
li.append()使列表li調用自身的方法append(),這樣就可以在列表的末尾添加一個新的元素。
接下來是insert(),append()是排隊,那insert()就是插隊的意思啦,它可以將一個元素插入到列表的自定位置:
li.insert(索引,元素)
這樣就將字符串helloworld插入到了列表的第四個位置里。
上面兩個方法是對單個元素進行增加,如果我們需要增加多個元素怎麼辦?
那就可以使用我們的extend()來進行添加,extend()可以將序列中的每個元素添加到末尾:
上面的代碼先定義了兩個列表l1和l2,然後使用l1.extend(l2),將l2的每個元素添加到了l1的末尾。
增加講完了,接下來進行刪除操作,刪除也有對應的四個方法:del(),pop(),remove(),clear()
del()是單獨的方法,不需要通過列表本身來進行調用,可以直接使用:
上述代碼刪除了li[0],但是請注意,如果不進行索引的話,默認會將這個變量刪除,請謹慎使用:
這就是刪除了整個變量,再打印這個變量時就會提示變量未定義
pop()方法不帶參數的話刪除默認刪除最後一個元素,帶參數的話則刪除指定的下標值:
pop()還有個神奇的地方,它可以讓你需要刪除的參數取出來繼續使用,使用完了再進行刪除:
上述代碼使用pop()刪除了第一個元素,然後使用第一個元素進行了一個簡單的判斷,說明pop()可以為我們返回刪除的元素,讓我們先使用,使用完再刪除
remove()用來刪除一個指定元素,無返回值,無法使用下標刪除:
上述代碼使用remove()刪除了一個元素l
clear()用於清空列表,與del不同的是,它會為我們保留空列表,而不會把變量都刪除:
上述代碼清除了列表後,保留了空列表
改的方法就比較簡單,直接索引出下標重新賦值即可:
這裡就對li[0]進行了重新賦值
有通過index查詢指定元素返回對應下標,也可以使用count來計算該元素出現過的次數:
除了增刪改查,列表中還有其他的方法複製copy()、倒敘排列reverse()、從小到大排列sort()
使用li.copy(),再用一個變量接收複製的列表,就可以實現複製出一個新的列表來
sort()方法可以將數字類型的進行從小到大的排列,一般也用於同類型的排列
元組作為不可變類型,只能查和刪,如果需要其他操作需要轉換成列表
只能刪除整個元組,無法使用下標值,刪除後再使用會提示沒有定義變量
元組只有查和刪的方法,如果需要修改應先轉成列表修改再轉回元組,但是不建議這麼做,因為修改過的元組就已經不是原來的那個元組了,而且設置元組也是為了這組數據不希望受到修改
以上就是關於列表元組的方法了,有興趣的小夥伴可以自己嘗試一下。
如果有哪些錯誤或者不好的地方,還請各位大佬指出來,我會虛心接受並修改錯誤,謝謝!
Python中的基本數據類型之元組類型
元組數據類型也是序列類型,和列表類型十分的相似,同樣可以根據索引來獲取元素,並且一樣可以使用切片操作,和列表的不同之處在於,元組是 不可變類型 ,一旦創建是無法修改裡面的值的。
元組是用小括號表示,數據項與數據項之間用逗號隔開,並且對於元組中數據的類型是沒有限制的
值得注意的是當元組中只有一個元素的時候,我們必須在末尾加逗號
之前講了列表和字符串,都可以通過索引的方式去訪問,元組也一樣,因為三者都是序列類型,訪問的方式和列表、字符串的方式一樣,這裡就不在闡述了
元組的內置函數較少,並且十分簡單
1.max、min最大值和最小值函數
2.tuple將 序列類型 轉換成元組類型
以上內容是元組中的主要內容,後面當我們用到的時候我們再做其他的解釋
python基礎-列表 元組 集合 字典區別和用法
Python中有六個標準的數據類型:Number(數字),String(字符串),List(列表),Tuple(元組),Set(集合),Dictionary(字典)。其中:Number(數字)、String(字符串)、Tuple(元組)是不可變數據,其餘三種是可變數據。
轉義字符
輸出結果
布爾值
布爾值是一個邏輯值,只有真(True)和假(False)
輸出結果
Python數據結構包括列表(list)、元組(tuple)、集合(set)、字典(dict)等,這裡主要講解列表,列表有兩個特點:
輸出結果
修改表中元素
輸出結果
列表中插入元素
輸出結果
輸出列表中的元素
輸出結果
元素是否在列表元素中及統計個數
輸出結果
查找某個元素在列表中的位置
輸出結果
順序結構
輸出結果
if 條件 1
輸出結果
if 條件 2
輸出結果
循環結構
輸出結果
循環語句求和
輸出結果
可重複,類型可不同。 類型不同也是跟數組最本質的區別。 python里的列表用“[]”表示:
對比a和b的結果
列表的 — 增 — 刪 — 改 — 查
循環輸出列表內容,在結尾添加指定的內容
字符串是 Python 中最常用的數據類型。 我們可以使用引號(‘或”)來創建字符串。
元組與列表相似,不一樣之處在於 元組的元素不能修改。
元組使用小括號,列表使用方括號。
元組建立很簡單,只須要在括號中添加元素,並使用逗號隔開便可。
字典是另外一種可變容器模型,且可存儲任意類型對象。
字典的每一個鍵值(key=value)對用冒號(:)分割,每一個對之間用逗號(,)分割,整個字典包括在花括號({})中 ,格式以下所示:
d = {key1 : value1, key2 : value2 }
字典函數
集合(set)是一個 無序的不重複元素序列。
可使用大括號 { } 或者 set() 函數建立集合,注意:建立一個空集合必須用 set() 而不是 { },由於 { } 是用來建立一個空字典。
它的主要做用以下: 1.去重,把一個列表變成集合,就自動去重了 。2.關係測試,測試兩組數據以前的交集、差集、並集等關係。
關係測試
輸出結果
元素的添加和刪除
python自學筆記13:元組和字典的操作
定義元組(tuple):
t1=(1,2,3,4)#多個數據元組
t2=(1,)#如果元組內只有一個數據,也需要手逗號隔開,否則這個數據將是他本身的類型。
元組的操作:
元組類型數據不支持修改,可查找
查找:
按下標查找:
print(t1[1])
函數查找:
print(t1.index(1))返回對應下標,如果數據不存在,程序將報錯
print(t1.count(1))統計數據在元組當中出現的次數
print(len(t1))統計元組當中的數據個數
注意:當元組內嵌套列表數據,可以通過下標的方法對列表數據進行修改如:
t3=(1,2,[“a”,”b”])
t3[2][0]=c #t3的值將變為(1,2,[“c”,”b”])
——————————————————
——————————————————
定義字典(dict)
字典的特點
1:符號為{}
2:數據為鍵(key)值(value)對形式,每個鍵值對之間用逗號隔開如:
dict1={“name”:”小明”,”age”:18,”gender:男”}
字典的操作:
dict1[“name”]=”小紅”
dict1[“id”]=3
如果key存在,將修改其所對應的值。如果不存在,將在字典最後添加該鍵值對
2.刪除數據
del():刪除字典或刪除字典內的鍵值對
del dict1[“name”] 刪除字典內的鍵值對,如果刪除的key不存在,程序將會報錯
del(del)刪除字典
clear(dict1) 清空字典
3.查找數據
一.按照key進行查找,最後返回相對應的值
二.按函數進行查找:
(1) get(key,默認值):
如果查找的key不存在則返回所寫的默認值,如果不寫默認值則返回None
dict1={“name”:”小明”,”age”:18,”gender:男”}
print(dict1.get(“name”)) #小明
print(dict1.get(“id”,110)) # 110
——————————————————
(2) keys():返回字典內的所有key 可用for遍歷
print(dict1.keys())
返回 [“name”,”age”,”gender”]
for key in dict1.keys():
..print(key)
逐行輸出name age gender
——————————————————
(3) values(): 返回字典內的值 可用for遍歷
print(dict1.values())
返回[“小明”,18,”男”]
for value dict1.values():
..print(value)
逐行輸出小明 18 男
——————————————————
(4) items():將字典內的數據以元組的形式返回
print(dict1.items()) 可用for遍歷
返回[(“name”,”小明”),(“age”,18),(“gender”,”男”)]
for item in dict1.items():
..print(item)
逐行輸出 (“name”,”小明”) (“age”,18)(“gender”,”男”)
——————————————————
遍歷字典鍵值對(拆包) 可在for內使用兩個臨時變量
dict1={“name”:”小明”,”age”:18,”gender:男”}
for key,value in dict1.items():
..print(f”{key}=value”)
逐行輸出:
name=小明 age=18 gender=男
原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/130547.html