四虎国产精品永久地址998_chinesexxx少妇露脸_日本丁香久久综合国产精品_一区二区久久久久_四虎av影视_久久久久国产一区二区三区不卡

中培偉業(yè)IT資訊頻道
您現(xiàn)在的位置:首頁 > IT資訊 > 精選文章 > 如何在Python中創(chuàng)建空列表?

如何在Python中創(chuàng)建空列表?

2020-07-27 15:55:15 | 來源:中培企業(yè)IT培訓(xùn)網(wǎng)

如果您想學(xué)習(xí)如何在Python中高效地創(chuàng)建一個空列表,首先我們先來學(xué)習(xí)如何使用方括號創(chuàng)建空列表[],然后學(xué)習(xí)如何使用創(chuàng)建空列表list(),在然后學(xué)習(xí)他們的用例,它們的效率(一個比另一個快!);我們將使用該timeit模塊進(jìn)行比較。

  使用方括號

您可以使用一對空的方括號創(chuàng)建一個空列表,如下所示:

提示:我們將空列表分配給變量,以便稍后在程序中使用它。

例如:

num = []

空列表的長度0為,您可以在此處看到:

>>> num = []

>>> len(num)

0

空列表是虛假的值,這意味著它們False在布爾上下文中求值:

>>> num = []>>> bool(num)False

  將元素添加到空列表

您可以使用方法元素添加到一個空列表append()和insert():

· append() 將元素添加到列表的末尾。

· insert() 將元素添加到您選擇的列表的特定索引處。

由于列表可以是真實值或虛假值,具體取決于它們在評估時是否為空,因此可以在如下條件中使用它們:

if num:

print("This list is not empty")else:

print("This list is empty")

此代碼的輸出是:

This list is empty

由于列表為空,因此其值為False。

一般來說:

· 如果列表不為空,則結(jié)果為True,因此將執(zhí)行if子句。

· 如果列表為空,則結(jié)果為False,因此執(zhí)行else子句。

例:

在下面的示例中,我們創(chuàng)建一個空列表并將其分配給變量num。然后,使用for循環(huán),將一系列元素(整數(shù))添加到最初為空的列表中:

>>> num = []>>> for i in range(3, 15, 2):

num.append(i)

我們檢查變量的值以查看是否成功添加了項目,并確認(rèn)列表不再為空:

>>> num[3, 5, 7, 9, 11, 13]

提示:我們通常用于append()將第一個元素添加到一個空列表中,但是您也可以添加insert()使用index 調(diào)用該方法的該元素0:

>>> num = []>>> num.insert(0, 1.5) # add the float 1.5 at index 0>>> num[1.5]

  使用list()構(gòu)造函數(shù)

或者,您可以使用構(gòu)造函數(shù)類型創(chuàng)建一個空列表,該類型list()將創(chuàng)建一個新的列表對象。

根據(jù)Python文檔:

如果未提供任何參數(shù),則構(gòu)造函數(shù)將創(chuàng)建一個新的空列表[]。

提示:這在內(nèi)存中創(chuàng)建一個新的列表對象,因為我們沒有帶任何參數(shù)list(),將創(chuàng)建一個空的列表。

例如:

num = list()

0您可以在此處看到此空列表的長度,即:

>>> num = list()

>>> len(num)

0

當(dāng)它為空時,它是一個偽造的值(False在布爾上下文中求值):

>>> num = list()>>> bool(num)False

例:

這是一個功能齊全的列表,因此我們可以向其中添加元素:

>>> num = list()>>> for i in range(3, 15, 2):

num.append(i)

結(jié)果將是一個非空列表,正如您在此處看到的那樣:

>>> num[3, 5, 7, 9, 11, 13]

  用例

· 我們通常使用list()現(xiàn)有的可迭代對象(例如字符串,字典或元組)來創(chuàng)建列表。

· 您通常會看到方括號[]用于在Python中創(chuàng)建空列表,因為此語法更簡潔,更快捷。

  效率

等待!我只是告訴你,這[]比list()... 快

  但是要快多少?

讓我們使用timeit模塊檢查它們的時間效率。

要在您的Python程序中使用此模塊,您需要將其導(dǎo)入:

>>> import timeit

具體來說,我們將使用此模塊中的timeit函數(shù),您可以使用以下語法調(diào)用該函數(shù):

提示:該代碼重復(fù)了幾次,以減少由于外部因素(例如在特定時刻可能正在運行的其他進(jìn)程)而引起的時間差異。這使得結(jié)果更加可靠,可用于比較。

marks 在您的標(biāo)記上...準(zhǔn)備好...準(zhǔn)備好了!這是代碼和輸出:

首先,我們導(dǎo)入模塊。

>>> import timeit

然后,我們開始測試每種語法。

  測試[]:

>>> timeit.timeit('[]', number=10**4)0.0008467000000109692

  測試list():

>>> timeit.timeit('list()', number=10**4)0.002867799999989984

提示:請注意,要計時的代碼必須用單引號''或雙引號引起來""。timeit函數(shù)返回的時間以秒為單位。

比較這些結(jié)果:

· []: 0.0008467000000109692

· list(): 0.002867799999989984

您會看到這[]比快得多l(xiāng)ist()。0.002此測試大約相差幾秒鐘:

>>> 0.002867799999989984 - 0.00084670000001096920.0020210999999790147

我敢肯定,您現(xiàn)在必須問這個問題:為什么list()效率不如[]做完全相同的事情?

嗯... list()比較慢,因為它需要查找該函數(shù)的名稱,然后調(diào)用它,然后在內(nèi)存中創(chuàng)建列表對象。相反,[]就像“快捷方式”,不需要太多的中間步驟即可在內(nèi)存中創(chuàng)建列表。

這種時間差異不會對程序的性能產(chǎn)生很大的影響,但是很高興知道哪一個效率更高以及它們在后臺如何工作。

您可以使用一對空的方括號[]或類型構(gòu)造函數(shù)list()(一個內(nèi)置函數(shù),當(dāng)不傳遞任何參數(shù)時創(chuàng)建一個空列表)來創(chuàng)建一個空列表。方括號[]通常在Python中用于創(chuàng)建空列表,因為它更快,更簡潔。

通過上述介紹,如何在Python中創(chuàng)建空列表相信大家已經(jīng)清楚了吧,想了解更多關(guān)于Python的信息,請繼續(xù)關(guān)注中培偉業(yè)。

標(biāo)簽: Python 軟件研發(fā)
主站蜘蛛池模板: 隆林| 肥东县| 日土县| 永寿县| 青州市| 平昌县| 三都| 新巴尔虎右旗| 霍山县| 赣州市| 汽车| 珠海市| 临朐县| 墨玉县| 平武县| 铜陵市| 贵阳市| 留坝县| 平罗县| 东丰县| 商水县| 德庆县| 金沙县| 义马市| 西平县| 友谊县| 连江县| 大荔县| 鱼台县| 四子王旗| 曲靖市| 仁化县| 太和县| 湘西| 崇左市| 久治县| 迁西县| 运城市| 思南县| 高邮市| 肇源县|