python 基礎知識(字串 序列)(2)

2021-06-15 03:00:40 字數 4125 閱讀 2574

2.count 方法

統計某個元素在列表中出現的次數

>>> ['to','asd','er','ww'].count('to')

1>>> x=[[1,2],1,2,1,[1,2]]

>>> x.count(1)

2>>> x.count([1,2])

23. extend 方法

在列表的末尾一次性的追加另乙個序列中的多個值,換句話說,可以用新列表擴充套件原有的列表

>>> a=[1,2,3]

>>> b=[4,5,6]

>>> a.extend(b)

>>> a

[1, 2, 3, 4, 5, 6]

>>> a+b                           ------ a=a+b 也可以實現extend的效果 但是連線操作的效率會比extend方法低

[1, 2, 3, 4, 5, 6, 4, 5, 6]

>>> a

[1, 2, 3, 4, 5, 6]

分片方法也可以實現extend  但是可讀性降低

>>> a=[1,2,3]

>>> b=[4,5,6]

>>> a[len(a):]=b

>>> a

[1, 2, 3, 4, 5, 6]

4. index 方法

從列表中找出某個值第乙個匹配項的索引位置

>>> knights=['we','are','the','knights','who','say','ni']

>>> knights.index('who')

4>>> knights[4]

'who'

>>> knights.index('qiaoc')

traceback (most recent call last):

file "", line 1, in

knights.index('qiaoc')

valueerror: 'qiaoc' is not in list

注意:當查詢不存在的項時則報錯

5.insert 方法

用於將物件插入到列表中

>>> numbers=[1,2,3,5,6,7]

>>> numbers.insert(3,'four')

>>> numbers

[1, 2, 3, 'four', 5, 6, 7]

insert 方法也能用分片來實現

>>> numbers=[1,2,3,5,6,7]

>>> numbers[3:3]=['four']

>>> numbers

[1, 2, 3, 'four', 5, 6, 7]

6.pop 方法

移除列表中的乙個元素(預設是最後乙個),並且返回該元素的值

>>> x=[1,2,3]

>>> x.pop()

3>>> x

[1, 2]

>>> x.pop(0)

1>>> x

[2]注意:pop方法是唯一乙個既能修改列表又返回元素值(除了none)的列表方法

(可以模擬實現 棧 先進先出)

7. remove 方法

移除列表中的某個值的第乙個匹配項

>>> x=['to','be','or','not','to','be']

>>> x.remove('be')

>>> x

['to', 'or', 'not', 'to', 'be']

>>> x.remove('bee')

traceback (most recent call last):

file "", line 1, in

x.remove('bee')

valueerror: list.remove(x): x not in list

注意:移除不存在的元素會報錯

8.reverse 方法

將列表中的元素反向存放

>>> x=[1,2,3]

>>> x.reverse()

>>> x

[3, 2, 1]

9. sort 方法

在原位置對列表進行排序,在「原位置排序」意味著改變原來的列表,從而讓其中的元素能按一定的順序排列,而不是簡答的返回乙個已經排序的列表副本

>>> x=[4,5,2,1,9,6]

>>> x.sort()

>>> x

[1, 2, 4, 5, 6, 9]

----------------

實現保留原來的列表 和排序後的列表

>>> x=[4,5,2,1,9,6]

>>> y=x.sort()

>>> print y

none

>>> x=[4,5,2,1,9,6]

>>> y=x[:]

>>> y.sort()

>>> x

[4, 5, 2, 1, 9, 6]

>>> y

[1, 2, 4, 5, 6, 9]

注意: 這裡y=x[:] 利用分片是很有效率的複製整個列表的方法

只是簡單的把x賦值給y是沒用的,因為這樣做就讓x和y都指向同乙個列表了

>>> x=[4,5,2,1,9,6]

>>> y=x

>>> y.sort()

>>> x

[1, 2, 4, 5, 6, 9]

>>> y

[1, 2, 4, 5, 6, 9]

另一種獲得已排序的列表副本的方法是 sorted 函式

>>> x=[4,5,2,1,9,6]

>>> y=sorted(x)

>>> x

[4, 5, 2, 1, 9, 6]

>>> y

[1, 2, 4, 5, 6, 9]

這個函式可以用於任何序列,卻總是返回乙個列表

>>> sorted('python')

['h', 'n', 'o', 'p', 't', 'y']

10. 高階排序

內建函式cmp 提供了比較函式的預設實現

>>> cmp(42,32)

1>>> cmp(99,100)

-1>>> cmp(2,2)

0>>> numbers=[5,2,9,7]

>>> numbers.sort(cmp)

>>> numbers

[2, 5, 7, 9]

sort 方法有另外兩個可選的引數--key和reverse

引數key和引數cmp類似---必須提供乙個在排序過程中使用的函式,然而該函式並不是直接用來確定物件的大小,而是為每個元素建立乙個

鍵,然後所有元素根據鍵來排序。

>>> x=['aadreas','asdd','sacas','a','as','asda']

>>> x.sort(key=len)

>>> x

['a', 'as', 'asdd', 'asda', 'sacas', 'aadreas']

reverse 關鍵字是簡單的布林值(true或者false) 用來指明是否進行反向排序

>>> x=[4,2,5,1,6,9]

>>> x.sort(reverse=true)

>>> x

[9, 6, 5, 4, 2, 1]

注意:cmp,key,reverse引數都可以用於sorted函式!

元組 元組與列表一樣,也是一種序列,唯一的不同時元組不能修改

>>> 1,2,3

(1, 2, 3)

>>> (1,2,3)   ---- 元組大部分時候用大括號括起來

(1, 2, 3)

空元組可以用沒有內容的2個括號表示

>>> ()

()包括乙個值的元組 必須用逗號

>>> 42

42>>> 42,

(42,)

>>> (42,)

(42,)

tuple函式

功能與list函式基本上是一樣的:以乙個序列作為引數並把它轉換為元組,如果引數是元組那麼該引數就會被元樣返回

>>> tuple([1,2,3])

(1, 2, 3)

>>> tuple('abc')

('a', 'b', 'c')

>>> tuple((1,2,3))

(1, 2, 3)

python基礎知識 字串

1 字串的格式化 python 將若干值插入到帶有 標記的字串中,實現動態地輸出字串。格式 s str s s str 1,str 2 例如 str 0 i str 1 love str 2 china format s s s str 0,str 1,str 2 print format ilov...

基礎知識 字串python

len pbr out 3 len repr pbr out 5x iam y pan print x,y 法一,注意print 預設連續輸出兩個字串,其中間用空格隔開 x y 法二out iam pan 兩個字串之間有空格 iampana i am allen 這裡開頭有4個空格out i am ...

Python基礎知識 字串(一)

字串是python中非常基礎,非常常用的一種資料型別。從這節開始介紹python的字串的使用方法。ss hello,world 定義乙個字串 ss 1 使用索引,獲取某個字元,結果為 e ss 0 2 使用切片,獲取乙個子字串。結果為 he ss 3 可以使用負數索引,並且可以使用預設索引,預設時表...