Python 中的列表 (list)。 列出函數和方法

在編程中,列表可能與數組一樣有用的數據結構。 什麼是列表,如何創建它們? 如何在 Python 中使用列表? 您將從我們的文章中了解到這一點。

Python 中的列表是什麼?

Python 中的列表 (list)。 列出函數和方法
Python 數據類型:列表

列表可以部分地用數組來標識,但列表的區別和優勢(否則也稱為列表)是它們可以組合不同的數據類型。 也就是說,列表為存儲任何對象序列開闢了更多可能性。 稱為列表的變量包含對內存中結構的引用,該結構包含對替代結構的引用。

Python 中的列表是混合類型的對象的有序集合,可以修改並且其對象可能不同。

這是什麼意思? 讓我們詳細看一下定義。

列表的大小可以更改、縮小、添加新行。 您還可以更改列表的整個結構。 請記住,每次使用列表中的方法時,都會更改原始列表,而不是副本。

為了更清楚起見,您可以將 Python 中的列表視為需要在商店中購買的產品列表。 如果在製定購物計劃時,所有必需的項目都位於一個在另一個之下,並且每個項目都有自己的行,那麼 Python 中的清單包含用逗號分隔的所有元素並用方括號括起來,以便 Python 可以理解此處列出了一份清單。 元素用引號括起來。 這是一個強制性條件,因為每個元素都是單獨的一行。

創建列表的方法

繼續經典示例,讓我們創建一個列表,我們將在未來使用和修改。 有幾種方法可以生成列表。

其中之一是應用程序 內置函數 list( ). 為此,您需要處理任何可以迭代的對象(字符串、元組或現有列表)。 在這種情況下,一個字符串。

這是最後會發生的事情:

>>> list('list') ['c', 'n', 'i', 'c', 'o', 'to']

第二個例子表明列表可以包含無限數量的非常不同的對象。 此外,列表可以保持為空。

>>> s = [] # 空列表 >>> l = ['s', 'p', ['isok'], 2] >>> s [] >>> l ['s', 'p' , ['isok'], 2]

接下來,第三種形成列表的方式是所謂的 列表生成器.

列表生成器是用於創建列表的語法結構。 它類似於 for 循環。

>>> c = [c * 3 for c in 'list'] >>> c ['llll', 'iii', 'sss', 'ttt']

它還可以用於創建更龐大的結構:

>>> c = [c * 3 for c in 'list' if c != 'i'] >>> c ['lll', 'sss', 'ttt'] >>> c = [c + d for c in 'list' if c != 'i' for d in 'spam' if d != 'a'] >>> c ['ls', 'lp', 'lm', 'ss', 'sp' , 'sm', 'ts', 'tp', 'tm']

但是,在編譯多個列表時,這種生成方法並不總是有效的。 因此,建議使用 for 循環來生成列表。

如果您需要引用列表中的任何元素,則使用索引。 每個元素都有自己的索引。

索引是列表中元素的編號。

如果要使用重複的相同元素填充列表,則使用 * 符號。 例如,您需要在列表中添加三個相同的數字:[100] * 3。

列出函數

功能 ——這也許是 Python 相對於其他編程語言的主要優勢。 基本的內置函數可以應用於列表。

考慮其中最受歡迎的:

  • 列表(範圍()) – 如果任務是創建一個順序列表,則使用範圍函數。 該函數有以下形式:
  1. 範圍(結束)。 當需要創建從零到有限數的列表時使用它。
  2. 範圍(開始,結束)。 指定了開始和結束編號。
  3. 範圍(開始,結束,步驟)。 step 參數指定選擇特性。 例如,如果您需要從 1 到 21 的序列中選擇每五個數字,則生成的列表將如下所示:[10,15]。

range 函數可以顯著減少代碼量。

  • 亞麻(清單) - 允許您找出列表中有多少元素。
  • 排序(列表,[鍵]) – 按升序對列表中的對象進行排序。
  • 最大值(列表) – 返回最大的元素。
  • 分鐘(列表) – 相反函數 – 允許您返回具有最小值的元素。

您還可以使用其他內置函數:

  • 列表(元組) – 將元組對象轉換為列表。
  • 總和(列表) – 如果所有值都是數字,則對列表中的所有元素求和,適用於整數和小數。 然而,她並不總是做對。 如果列表中有非數字元素,該函數將拋出錯誤:“TypeError: unsupported operand type(s) for +: 'int' and 'str'”。

列出方法

Python 中的列表 (list)。 列出函數和方法
Python 方法列表

讓我們回到我們在商店中購買的商品列表,並將其命名為 shoplist:

購物清單 = []

接下來,考慮列出方法:

  • 附加(項目) – 在它的幫助下,您可以將元素添加到列表中。 在這種情況下,新元素將位於末尾。

讓我們用正確的產品填寫我們的新清單:

shoplist.append(麵包)

shoplist.append(牛奶)

  • 名單。延長(A) - 添加“列表到列表”。 此功能可以節省時間,因為您可以同時添加多個項目。 假設我們已經有一個水果列表,我們需要將它們添加到主列表中。

shoplist.extend(水果)

  • 插入(索引,項目) – 在具有指定索引的元素上插入指定索引之前的指定值。
  • lcount(項目) – 顯示元素的重複次數。
  • 名單。消除(項目) 是相反的函數 名單。附加 (x). 它可用於刪除任何元素。 如果選中的項目不在列表中,則報錯。
  • 流行([索引]) – 移除選中的元素並以同樣的方式返回。 如果未指定元素,則從列表中刪除最後一個元素。
  • 排序([鍵]) – 將列表中的元素按升序排列,但您也可以指定一個函數。
  • 索引(項目) – 顯示第一個選定元素的索引。
  • 您可以使用方法展開列表,即鏡像其所有元素 反向(列表). 最後一個元素成為第一個元素,倒數第二個元素成為第二個元素,依此類推。
  • 使用命令創建列表的副本 複製(列表).
  • 深拷貝(列表) – 深度複製。
  • 使用該方法刪除所有列表元素 清晰的列表).

值得注意的是,列表方法與字符串方法的不同之處在於它們立即改變列表,即不需要返回執行結果。

>>> l = [1, 2, 3, 5, 7] >>> l.sort() >>> l [1, 2, 3, 5, 7] >>> l = l.sort() > >> 打印(l) 無

以下是使用列表的示例:

>>> a = [66.25, 333, 333, 1, 1234.5] >>> print(a.count(333), a.count(66.25), a.count('x')) 2 1 0 >>> a.insert(2, -1) >>> a.append(333) >>> a [66.25, 333, -1, 333, 1, 1234.5, 333] >>> a.index(333) 1 >> > a.remove(333) >>> a [66.25, -1, 333, 1, 1234.5, 333] >>> a.reverse() >>> a [333, 1234.5, 1, 333, -1, 66.25 ] >>> a.sort() >>> a [-1, 1, 66.25, 333, 333, 1234.5]

發表評論