国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python基本數據結構:列表

2019-11-08 01:53:08
字體:
來源:轉載
供稿:網友

列表的特點:

有序的集合通過偏移來索引,從而讀取數據支持嵌套可變的類型

切片操作符[ ]:

舉例說明: a = [1,2,3,4,5,6,7] 正向索引: a[0:4:1] == [1,2,3,4] 反向索引: a[-1:-4:-1] == [7,6,5] 默認索引: a[1:] == [2,3,4,5,6,7] 列表的拷貝(傳值) b = a [ : ]

列表的添加操作:

+ 生成一個新的列表 。c = a+bExtend: 接受參數并將該參數的每個元素都添加到原有的列表中,原地修改列表而不是新建列表。Append: 添加任意對象到列表的末端。Insert: 插入任意對象到列表中,可以控制插入位置。

列表的修改操作:

修改列表本身只需要直接賦值操作就行。

A = [1,2,3] A[0] = ‘haha’ A == [‘haha’,2,3]

列表的刪除操作:

del :我們通過索引刪除指定位置的元素。

del a[0] a = [1,2,3] b = a del a #刪除列表對象的引用, PRint b 仍為[1,2,3] del a[:] #清空列表對象的元素,此時再print b為空列表[]

remove:移除列表中指定值的第一個匹配值。如果沒找到的話,會拋異常。

a = [1,2,3] a.remove(‘2’)

pop:返回最后一個元素,并從list中刪除它。

a = [1,2,3] a.pop()

成員關系:

In/not in我們可以判斷一個元素是否在列表里。 返回一個bool類型,元素在列表里返回true,否則返回fasle.

列表推導式:(列表解析List comprehensions)

[expr for iter_var in iterable] 首先迭代iterable里所有內容,每一次迭代,都把iterable里相應內容放到iter_var中,再在表達式中應用該iter_var的內容,最后用表達式的計算值生成一個列表。

比如我們要生成一個包含1到10的列表: 方法一:[x for x in range(1,11)]

方法二:Range(1,11) #注意Range() 函數與range的區別

[expr for iter_var in iterable if cond_expr] 加入了判斷語句,只有滿足條件的內容才把iterable里相應內容放到iter_var中,再在表達式中應用該iter_var的內容,最后用表達式的計算值生成一個列表。

比如要生成包含1到10的所有奇數列表:

方法一:range(1,11,2) 注:關于range函數:range( start, end ,step = 1) range(end)

方法二:[x for x in range(1,11) if x % 2 == 1]

列表推導式的一個不足是不要生成所有的數據用以創建列表。

生成器表達式(列表推導式的擴展):不真正創建數字列表,而是返回一個生成器,這個生成器在每次計算出一個條目后,把這個條目產生出來。使用了“延時計算”,使用內存上更有效。 (expr for iter_var in iterable if cond_expr)

排序翻轉:sort,reverse

sort()函數:從小到大排序列表,這個方式直接修改原列表。返回值為None。

a = [33,11,22,44] b = a.sort() print b #輸出的內容是None print a #輸出:[11,22,33,44]

reverse()函數:反轉一個list, 返回值為None,其余同上。

list方法:將部分數據結構轉化成列表

a =’asf’ list(a) == [‘a’,’s’,’f’] a = (1,2) list(a) == [1,2]

xrange和range的區別

xrange(開始,結束,步長 )生成一個xrange對象 a = xrange(1,10)比較:range直接生成一個列表,xrange生成一個Xrange對象。xrange用法:當我們需要操作一個非常大數據,而且內存比較吃緊的時候,可以用它來節省內存;一般用在循環里面,只需操作部分數據,推薦使用xrange。for m in range(1000): if m == 10: print 'pass' breakfor m in xrange(1000): #這里只需生成[0-10]的列表,節省內存. if m == 10: print 'pass' break
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 凤阳县| 乳源| 安图县| 福海县| 临海市| 琼海市| 诸暨市| 长寿区| 朝阳县| 霍林郭勒市| 兴业县| 海伦市| 镇坪县| 南丰县| 象州县| 肥城市| 西和县| 松潘县| 新乡县| 伊宁市| 华安县| 岳普湖县| 礼泉县| 内丘县| 武夷山市| 凤庆县| 新晃| 黔西| 姚安县| 志丹县| 永泰县| 女性| 凯里市| 巫溪县| 长宁区| 重庆市| 周至县| 通河县| 龙海市| 舞阳县| 普安县|