[toc]
# 序列操作
## all:**判斷可迭代物件的每個元素是否都為true值**
>>> all([1,2]) #列表中每個元素邏輯值均為true,返回true
true
>>> all([0,1,2]) #列表中0的邏輯值為false,返回false
false
>>> all(()) #空元組
true
>>> all({}) #空字典
true
## any:**判斷可迭代物件的元素是否有為true值的元素**
>>> any([0,1,2]) #列表元素有乙個為true,則返回true
true
>>> any([0,0]) #列表元素全部為false,則返回false
false
>>> any() #空列表
false
>>> any({}) #空字典
false
## filter:使用指定方法過濾可迭代物件的元素
>>> a = list(range(1,10)) #定義序列
>>> a
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> def if_odd(x): #定義奇數判斷函式
return x%2==1
>>> list(filter(if_odd,a)) #篩選序列中的奇數
[1, 3, 5, 7, 9]
## map:使用指定方法去作用傳入的每個可迭代物件的元素,生成新的可迭代物件
>>> a = map(ord,'abcd')
>>> a
>>> list(a)
[97, 98, 99, 100]
>>> a = iter('abcd')
>>> next(a)
'a'>>> next(a)
'b'>>> next(a)
'c'>>> next(a)
'd'>>> next(a)
traceback (most recent call last):
file "", line 1, in
next(a)
stopiteration
#傳入default引數後,如果可迭代物件還有元素沒有返回,則依次返回其元素值,如果所有元素已經返回,則返回default指定的預設值而不丟擲stopiteration 異常
>>> next(a,'e')
'e'>>> next(a,'e')
'e'## reversed:反轉序列生成新的可迭代物件
>>> a = reversed(range(10)) # 傳入range物件
>>> a # 型別變成迭代器
>>> list(a)
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
## sorted:對可迭代物件進行排序,返回乙個新的列表
>>> a = ['a','b','d','c','b','a']
>>> a
['a', 'b', 'd', 'c', 'b', 'a']
>>> sorted(a) # 預設按字元ascii碼排序
['a', 'b', 'a', 'b', 'c', 'd']
>>> sorted(a,key = str.lower) # 轉換成小寫後再排序,'a'和'a'值一樣,'b'和'b'值一樣
['a', 'a', 'b', 'b', 'c', 'd']
## zip:聚合傳入的每個迭代器中相同位置的元素,返回乙個新的元組型別迭代器
>>> x = [1,2,3] #長度3
>>> y = [4,5,6,7,8] #長度5
>>> list(zip(x,y)) # 取最小長度3
[(1, 4), (2, 5), (3, 6)]
python 序列操作
1.什麼是序列 2.序列的切片操縱 3.序列常用方法 1.什麼是序列 python中的序列表示索引 序號 為整數的有序物件集合。包括 字串,列表,元組。2.序列的切片操作 1.以索引 序號 來訪問序列的兩種方法 從左到右 用序號0 表示第乙個元素,1表示第二個元素.從右到左 用序號 1 表示從右面開...
操作序列(python)
牛客網刷題記錄 小易有乙個長度為n的整數序列,a 1,a n。然後考慮在乙個空序列b上進行n次以下操作 1 將a i放入b序列的末尾 2 逆置b序列 小易需要你計算輸出操作n次之後的b序列。輸入包括兩行,第一行包括乙個整數n 2 n 2 10 5 即序列的長度。第二行包括n個整數a i 1 a i ...
Python 序列操作
python 版本 3.7.9 整理自 python 官方文件 python 內建資料型別裡面的list,tuple和range物件是序列型別的資料結構 所有序列型別共有的操作有 其中,序列型別物件又分可變與不可變序列,兩種序列型別都支援上面的操作,但是各自又有各獨有的特性 在序列型別的資料結構中,...