當前位置:首頁 » 編程語言 » python中list

python中list

發布時間: 2022-06-11 01:34:03

python中的list底層是什麼樣的

list底層就是一個數組,其中存放著PyObject類型的指針。

② python中list的大小最大是多少

一般應用場景都不用考慮這個大小,因為這個上限很高,需要用到這么多元素的list的時候,都需要考慮很多其它問題。

1,32位python的限制是 536870912 個元素。

2,64位python的限制是 1152921504606846975 個元素。

③ Python中list和set的區別

List
字面意思就是一個集合,在Python中List中的元素用中括弧[]來表示,可以這樣定義一個List:
L = [12, 'China', 19.998]

可以看到並不要求元素的類型都是一樣的。當然也可以定義一個空的List:
L = []

Python中的List是有序的,所以要訪問List的話顯然要通過序號來訪問,就像是數組的下標一樣,一樣是下標從0開始:
>>> print L[0]
12

千萬不要越界,否則會報錯
>>> print L[3]
Traceback (most recent call last):
File "<stdin>", line 1, in <mole>
IndexError: list index out of range

List也可以倒序訪問,通過「倒數第x個」這樣的下標來表示序號,比如-1這個下標就表示倒數第一個元素:
>>> L = [12, 'China', 19.998]
>>> print L[-1]
19.998

-4的話顯然就越界了

>>> print L[-4]

Traceback (most recent call last):
File "<pyshell#2>", line 1, in <mole>
print L[-4]
IndexError: list index out of range
>>>

List通過內置的append()方法來添加到尾部,通過insert()方法添加到指定位置(下標從0開始):

>>> L = [12, 'China', 19.998]
>>> L.append('Jack')
>>> print L
[12, 'China', 19.998, 'Jack']
>>> L.insert(1, 3.14)
>>> print L
[12, 3.14, 'China', 19.998, 'Jack']
>>>

注意python中有幾個方法與append類似,但是效果完全不一樣,使用時需根據實際需求選用正確方法
1.append() 向列表尾部追加一個新元素,列表只佔一個索引位,在原有列表上增加
2.extend() 向列表尾部追加一個列表,將列表中的每個元素都追加進來,在原有列表上增加
比如 list1=[1, 2, 3] .list2=[4, 5, 6]
list1.append(list2) 的結果為[1, 2, 3, [4, 5, 6]]
list1.extend(list2) 的結果為[1, 2, 3, 4, 5, 6]
3.+ 直接用+號看上去與用extend()一樣的效果,但是實際上是生成了一個新的列表存這兩個列表的和,只能用在兩個列表相加上
4.+= 效果與extend()一樣,向原列表追加一個新元素,在原有列表上增加
通過pop()刪除最後尾部元素,也可以指定一參數刪除指定位置:

>>> L.pop()
'Jack'
>>> print L
[12, 3.14, 'China', 19.998]
>>> L.pop(0)
12
>>> print L
[3.14, 'China', 19.998]

也可以通過下標進行復制替換
>>> L[1] = 'America'
>>> print L
[3.14, 'America', 19.998]

Set
set也是一組數,無序,內容又不能重復,通過調用set()方法創建:
>>> s = set(['A', 'B', 'C'])

對於訪問一個set的意義就僅僅在於查看某個元素是否在這個集合裡面,注意大小寫敏感:
>>> print 'A' in s
True
>>> print 'D' in s
False

也通過for來遍歷:

s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])

for x in s:
print x[0],':',x[1]

>>>
Lisa : 85
Adam : 95
Bart : 59

通過add和remove來添加、刪除元素(保持不重復),添加元素時,用set的add()方法
>>> s = set([1, 2, 3])
>>> s.add(4)
>>> print s
set([1, 2, 3, 4])

如果添加的元素已經存在於set中,add()不會報錯,但是不會加進去了:
>>> s = set([1, 2, 3])
>>> s.add(3)
>>> print s
set([1, 2, 3])

刪除set中的元素時,用set的remove()方法:
>>> s = set([1, 2, 3, 4])
>>> s.remove(4)
>>> print s
set([1, 2, 3])
如果刪除的元素不存在set中,remove()會報錯:
>>> s = set([1, 2, 3])
>>> s.remove(4)
Traceback (most recent call last):
File "<stdin>", line 1, in <mole>
KeyError: 4

所以如果我們要判斷一個元素是否在一些不同的條件內符合,用set是最好的選擇,下面例子:

months = set(['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec',])
x1 = 'Feb'
x2 = 'Sun'

if x1 in months:
print 'x1: ok'
else:
print 'x1: error'

if x2 in months:
print 'x2: ok'
else:
print 'x2: error'

>>>
x1: ok
x2: error

另外,set的計算效率比list高

④ python怎麼用list

commonest=[1,2,2,2,1,3,4,5,1,1]print(commonest.count(1))需要把數據存儲到列表中,列表的count的方法可以統計某個元素出現的次數

⑤ python中list

這個原因是python默認參數在定義時求值(比如說當你首次導入模塊時),在這里就是你定義這個函數的時候求的值,所以你後面的f(3)會沿襲之前的默認參數的值

⑥ python中的list和array的不同之處

python中的list是python的內置數據類型,list中的數據類不必相同的,而array的中的類型必須全部相同。在list中的數據類型保存的是數據的存放的地址,簡單的說就是指針,並非數據,這樣保存一個list就太麻煩了,例如list1=[1,2,3,'a']需要4個指針和四個數據,增加了存儲和消耗cpu。

⑦ python 怎麼判斷list里元素類型

可以通過tpye()方法來判斷list里的元素類型。代碼舉例如下:

testList = [1, 2, 'a', [1, 2]]

for listElement in testList:

print '%s 的類型是:%s' % (listElement, type(listElement))

其中,for in語句用來遍歷testList這個list里的元素,然後分別列印出元素對應的類型,運行程序,輸出結果為:

1 的類型是:<type 'int'>

2 的類型是:<type 'int'>

a 的類型是:<type 'str'>

[1, 2] 的類型是:<type 'list'>

(7)python中list擴展閱讀

python語言中type()函數介紹:

1、type()函數的作用

在python中type()是即簡單又實用的一種對象數據類型查詢方法。它是一個內建的函數,調用它就能夠得到一個反回值,從而知道想要查詢的對像類型信息。

2、type()函數使用方法:type(對象)

type()是接收一個對象當做參考,之後反回對象的相應類型。例如:

type(1)

<type 'int'> #整型

type("iplaypython")

<type 'str'> #字元串


⑧ python中list表示什麼

list是python語言中的基本數據類型列表,使用[]表示;列表中元素的類型可以不相同,它支持數字,字元串甚至可以包含列表,如下:
ak = [1, '67',true,[23,45,67]]

⑨ python list[3::-1]是什麼意思

「python list[3::-1]」的意思是:從位置3反向截取list中的數組。

list參數分別是截取位置、截取方式。3代表從list第三個位置開始截取,-1代表反向截取。

編程語言中,List是雙向串列連接,用於管理線性列中的對象集合。 list的功能是在集合中的任何位置添加或刪除元素都是快速的,但不支持隨機訪問。

list是類庫提供的眾多容器(container)之一,除此之外還有vector、set、map、…等等。List被實現為模板(即泛型),並且可以處理任何類型的變數,包括用戶定義的數據類型。

(9)python中list擴展閱讀:

list是一個雙向循環鏈表,每個元素都知道前一個元素和下一個元素。

在STL中,list(如vector)是常用容器,與vector不同,list不支持對元素的任意訪問。 list中提供的成員函數類似於vector,但是list提供了對表的第一個元素push_front和pop_front的操作,這些操作在vector中不可用。

與vector不同,list迭代器不會失敗。 與vector不同,vector保留了備份空間,當超過容量限制時,將重新分配所有內存,從而導致迭代器失敗。 List沒有備份空間的概念,請求元素進行空間的進出,因此其迭代器不會失敗。

熱點內容
丁霞訪問 發布:2025-02-07 22:56:19 瀏覽:854
java中set集合 發布:2025-02-07 22:43:34 瀏覽:30
播放這個wifi密碼是多少 發布:2025-02-07 22:34:54 瀏覽:99
視頻存儲時間長了有雪花 發布:2025-02-07 22:24:34 瀏覽:568
哈佛f7x怎麼區分配置 發布:2025-02-07 22:22:34 瀏覽:771
廣州python培訓 發布:2025-02-07 22:22:26 瀏覽:199
陸金所的交易密碼是什麼 發布:2025-02-07 22:19:25 瀏覽:320
如何刪除平板儲存密碼 發布:2025-02-07 22:10:29 瀏覽:747
php微信授權登錄 發布:2025-02-07 22:10:27 瀏覽:378
怎樣編程時鍾 發布:2025-02-07 21:59:38 瀏覽:562