溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python元組、列表、解構(gòu)和循環(huán)怎么使用

發(fā)布時間:2022-01-26 09:37:50 來源:億速云 閱讀:200 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要講解了“Python元組、列表、解構(gòu)和循環(huán)怎么使用”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Python元組、列表、解構(gòu)和循環(huán)怎么使用”吧!

列表

列表是項目的集合。列表是可變的:你可以改變它們的元素和大小。因此,它們類似于List<T>C# 中的 a ArrayList<T>、Java 中的 a 和 JavaScript 中的數(shù)組。

您可以像這樣分配一個列表,然后通過從零開始的索引訪問它的元素:

foo = [1, 2, True, "mixing types is fine"]
print(foo[0]) # 1
foo[0] = 3
print(foo[0]) # 3

append方法在列表的末尾添加一個元素。該insert方法將元素放置在您指定的索引處:

foo = [1, 2, 3]
foo.append(4)
print(foo) # [1, 2, 3, 4]
foo.insert(0, 0.5)
print(foo) # [0.5, 1, 2, 3, 4]

要刪除索引處的元素,請使用del關(guān)鍵字:

del foo[2]
print(foo) # [0.5, 1, 3, 4]

元組

元組是另一種類型的項目集合。元組類似于列表,但它們是不可變的。一個元組是這樣分配的:

foo = 1, 2, True, "you can mix types, like in lists"

您經(jīng)常會看到格式為 的元組(1, 2, "a"),并帶有括號。元組值周圍的括號用于幫助提高可讀性或根據(jù)上下文需要。例如,1, 2 + 3, 4表示不同于(1, 2) + (3, 4)! 第一個表達式返回一個元組,(1, 5, 4)而第二個返回(1, 2, 3, 4)。

Python元組、列表、解構(gòu)和循環(huán)怎么使用

從獲得一個元組的值相同的方式工作從列表,foo[index],index表示該元素的從零開始的索引。如果您嘗試更改其中一個元素,您可以看到元組是不可變的:

foo[0] = 3 # will raise a TypeError

這適用于列表,但不適用于元組。

Python元組、列表、解構(gòu)和循環(huán)怎么使用

元組也沒有 append、remove 和其他一些方法。

你也可以從函數(shù)中返回元組,這是一種常見的做法:

def your_function():
    return 1, 2

這將返回一個元組(1, 2)。

如果您想要一個只有一個元素的元組,請在該元素后放置一個逗號:

foo = 1,

負指數(shù)和切片

Python 的索引比我目前演示的更強大。它們提供了一些在 C#、Java 等中不存在的功能。一個例子是負索引,其中 -1 指的是最后一個元素,-2 指的是倒數(shù)第二個元素,依此類推。

my_list = [1, 2, 3]
print(my_list[-1]) # 3

這適用于列表和元組。

此外,您可以通過指定切片的開始、結(jié)束或開始和結(jié)束元素的索引來獲取列表或元組的切片。這會生成一個包含元素子集的新列表或元組。下面舉幾個例子來演示:

my_list = [0, 1, 2, 3, 4, 5]
print(my_list[1:2]) # [1, 2]
print(my_list[2:]) # [2, 3, 4, 5]
print(my_list[:2]) # [0, 1]
print(my_list[0:4:2]) # [0, 2]
print(my_list[-3:-1]) # [3, 4]
print(my_list[::-1]) # [5, 4, 3, 2, 1, 0]

切片符號是[start:stop:step]。如果start保持為空,則默認為 0。如果end保持為空,則表示列表結(jié)束。該:step符號是可選的。所以::-1表示“從 0 到列表末尾,步驟為 -1”,從而返回反向列表。

切片永遠不會提高IndexErrors。當超出范圍時,它們只返回一個空列表。

解構(gòu)

假設(shè)您有一個元組(或列表),其中包含已知數(shù)量的元素,例如三個。并且假設(shè)你擁有三個不同的變量,每個元組元素一個。

Python 提供了一種稱為解構(gòu)(或解包)的功能,可以用一行來分解集合:

my_tuple = 1, 2, 3
a, b, c = my_tuple

現(xiàn)在a = 1,b = 2, 和c = 3。

my_list = [1, 2, 3]
a, b, c = my_list

這在處理返回元組的函數(shù)時非常有用,Python 生態(tài)系統(tǒng)中有很多這樣的函數(shù),以及處理與 AI 相關(guān)的庫時。

循環(huán)

您可能熟悉三種循環(huán):for、foreach 和 while。Python 只提供 while 和 foreach 循環(huán)(它使用for關(guān)鍵字!)。不過不用擔心。正如我們稍后將看到的,創(chuàng)建一個行為與 for 循環(huán)完全相同的循環(huán)非常容易。

這是一個迭代列表的 Python 循環(huán):

fruits = ["Apple", "Banana", "Pear"]
for fruit in fruits:
    print(fruit)

您還可以遍歷元組:

fruits = "Apple", "Banana", "Pear"
for fruit in fruits:
    print(fruit)

通常,您可以在每個迭代器上使用 for 循環(huán)。迭代器以及如何創(chuàng)建自己的迭代器將在后面的文章中進行更深入的討論。

如果你想要一個 C 風格的 for 循環(huán)而不是 foreach 循環(huán),你可以遍歷range函數(shù)的結(jié)果,它返回一個范圍內(nèi)的迭代器:

for i in range(10):
    print(i)

最后打印出來的數(shù)字是 9。這相當于下面的 C 代碼片段:

for (int i = 0; i < 10; i++) {
    Console.WriteLine(i);
}

range函數(shù)提供的不僅僅是從零到給定數(shù)字的計數(shù)。您可以使用range(x, 10),where xwill be the first array element指定不同的起始編號。您可以使用第三個參數(shù)指定步長,例如range(0, 10, 2)。

從高向低數(shù)是這樣的創(chuàng)建范圍:range(10, 0, -1)。第一元件現(xiàn)在將10和最后一個將是1。實際上,range(0, 10)相反range(10, 0, -1),因為第二個參數(shù)將不被包括在該范圍。

Python 中的 while 循環(huán)看起來與您已經(jīng)知道的非常相似:

while condition:
    # code

Python 還提供了 break 和 continue 語句,它們的工作方式與 C#、Java、JavaScript 和許多其他語言中的語句完全一樣。

while True:
    if input() == "hello":
        break

感謝各位的閱讀,以上就是“Python元組、列表、解構(gòu)和循環(huán)怎么使用”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對Python元組、列表、解構(gòu)和循環(huán)怎么使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI