python序列對映操作

2021-06-28 19:55:41 字數 3535 閱讀 4588

序列:表示索引為非負整數的有序物件的集合,包括字串,列表,元組

s是序列

1. s[i]:返回乙個序列索引為i的元素

2. s[i:j]:返回乙個序列的切片。序列的一部分

3. s[i:j:stride]:返回乙個序列的切片,步長為stride

4. len(s):s中的元素數

5. min(s):s中的最小值;只能用於可對元素排序的序列

6. max(s):s中的最大值;同上

7. sum(s [,initial]):s中各項的和,只限於數字資料

8. all(s):檢查s中的所有項是不是都為true

9. any(s):檢查s中的任一項是否有為true.

例:a = "woshihepeng"

b = [2,1,4,5]

c = [2,1,4,0]

print a[::3]  #when

print sum(b),sum(b,4) #12,16

print all(c),any(c)  #false,true

可變序列的操作(列表)

1. s[i] = v :賦值

2. s[i:j]=t :切片賦值

3. s[i:j:stride]:擴充套件切片賦值

4. del s[i]

5. del s[i:j]

6. del s[i:j:stride

例:b = [2,4,1,0,5,7,3]

c =

d = [(9,2),(8,3),(6,1)]

b[1:3] = [9,8]

print b

del b[1:5:2]

print b

# result

[2, 9, 8, 0, 5, 7, 3]

[2, 8, 5, 7, 3]

列表操作:

list(s):將s轉換成列表

s.extend(t):將乙個新列表追加到s末尾

s.count(x):計算s中x出現的次數

s.index(x, [,start [,stop]]):返回列表中首次出現x的位置

s.insert(i,x):在索引i處插入x

s.pop([i]):返回索引為i的元素並從列表刪除,如果無引數,則返回列表最後乙個

s.remove(x):搜尋x並從s中移除

s.reverse():反序s中的元素

s.sort([key [, reverse]]):對s中所有元素排序,key是鍵函式,reverse是倒序標誌

預設按公升序排列,可以指定key函式,即雜湊值公升序排列

例:s = 'woshihepeng'

a = list(s)

print a

print a

a.extend('y')

print a

print a.count('e')

print a.index('e', 7,9)

a.insert(2,'e')

print a

print a.pop(),a

a.remove('e')

print a

a.reverse()

print a

a.sort()

print a

a.sort(key=len,reverse=true)

print a

#result

['w', 'o', 's', 'h', 'i', 'h', 'e', 'p', 'e', 'n', 'g']

['w', 'o', 's', 'h', 'i', 'h', 'e', 'p', 'e', 'n', 'g', 'x']

['w', 'o', 's', 'h', 'i', 'h', 'e', 'p', 'e', 'n', 'g', 'x', 'y']28

['w', 'o', 'e', 's', 'h', 'i', 'h', 'e', 'p', 'e', 'n', 'g', 'x', 'y']

y ['w', 'o', 'e', 's', 'h', 'i', 'h', 'e', 'p', 'e', 'n', 'g', 'x']

['w', 'o', 's', 'h', 'i', 'h', 'e', 'p', 'e', 'n', 'g', 'x']

['x', 'g', 'n', 'e', 'p', 'e', 'h', 'i', 'h', 's', 'o', 'w']

['e', 'e', 'g', 'h', 'h', 'i', 'n', 'o', 'p', 's', 'w', 'x']

['e', 'e', 'g', 'h', 'h', 'i', 'n', 'o', 'p', 's', 'w', 'x']

對映操作:字典

len(m):m的專案數

m[k]:鍵值為k的項

m[k]=x:賦值

del m[k]:刪除鍵k

k in m: 如果k是m的鍵,返回true

m.clear():刪除m的所有項

m.copy():返回m的淺複製

m.fromkeys(s [,value]):建立以序列元素為鍵值的字典,值均為value,如無value,則均為none

m.get(k [,v]):返回m[k],如無則返回v

m.has_key(k):存在鍵k,則返回true

m.items():返回(key,value)對組成的乙個序列

m.keys():返回所有鍵值組成的乙個序列

m.pop(k, [,default]):返回鍵k對應的值,並刪除鍵k,如無則返回default

m.popitem():從m中隨機刪除乙個鍵值對,並把它返回乙個元組

m.setdefault(k [,v]):如果找到m[k],則返回v。如沒找到則返回v,並將m[k]設為v

m.update(b):將b中所有物件新增到m中

m.values():返回所有值組成的序列

例:s =

r = 'hepeng'

z =

print len(s)

t = s.copy()

print t

del s['a']

print s

print s.fromkeys(r,9)

print s.get('x',1)

print s.items()

print s.keys()

print s.values()

print s.pop(1,2)

print s.pop(8,1)

print s

print s.popitem()

print s

s.setdefault('y',3)

print s

s.update(z)

print s

s.clear()

print s

#result51

[(1, 3), (2, 0), ('c', 'd'), (7, 'b')]

[1, 2, 'c', 7]

[3, 0, 'd', 'b']31

(2, 0)

{}

python 序列和對映 如何區分序列和對映

我想對乙個引數執行乙個操作,這個引數可能是乙個類似於對映的物件或乙個類似於序列的物件。我知道沒有一種策略是100 可靠的型別檢查,但我正在尋找乙個健壯的解決方案。在 基於這個answer,我知道如何確定某個東西是否是乙個序列,我可以在檢查物件是否是乙個對映之後進行這個檢查。在def ismap ar...

python序列操作 序列操作

toc 序列操作 all 判斷可迭代物件的每個元素是否都為true值 all 1,2 列表中每個元素邏輯值均為true,返回true true all 0,1,2 列表中0的邏輯值為false,返回false false all 空元組 true all 空字典 true any 判斷可迭代物件的元...

python通用序列操作 python序列的使用

序列之通用操作 pytho中,最基本的資料結構就是序列。什麼是序列 numbers 1,2,3,4,5,6,7,8,9,0 greeting u hello,world names alice tom ben john python內建序列種類 共有6種 列表,元組,字串,unicode字串,buf...