小瘋談python:(五)數據類型之序列類型(中)

上一篇文章中,我介紹了對序列類型的通用操作,也就是對列表、元組、字符串這三種數據類型在都可以使用的方法。但是對於這三種數據類型的差異化操作我並沒有介紹,因此在這篇文章,我將介紹列標表和元組的一些特有的操作。

小瘋談python:(五)數據類型之序列類型(中)


話不多說,我們開始吧。

列表:

列表是包含0個或多個元素的有序序列,其長度和內容可變,並且其元素的類型可以為任何符合python規則的數據類型,用 list=[ 元素 ] 來表示。

列表是序列類型,所以上一篇文章中,有關序列類型的通用操作完全適用於列表,這裡邊不在展開。

:列表的特有方法:由於列表是可變的,因此在python中有針對列表的額外的操作方法和函數,主要是針對列表的增刪改。

向列表增加元素:

  • ls.append( s ) : 向列表ls的末尾增加元素s
小瘋談python:(五)數據類型之序列類型(中)

  • ls.insert( i , s ) :向列表ls第 i 個元素和第 i+1 個元素插入元素s
小瘋談python:(五)數據類型之序列類型(中)

  • ls.extend(ls1)或者ls+=ls1:向列表ls的末尾加入ls1中的所有元素
小瘋談python:(五)數據類型之序列類型(中)

把列表中的元素刪除:

  • ls.pop(i):刪除列表ls中第 i+1 個元素
小瘋談python:(五)數據類型之序列類型(中)

  • ls.remove(x): 刪除列表ls中正序第一個出現的元素x
小瘋談python:(五)數據類型之序列類型(中)

  • ls.clear(): 刪除列表ls中的所有元素,即清空列表
小瘋談python:(五)數據類型之序列類型(中)

  • del ls[ i : j ]: 刪除列表ls中第i+1到第j個的元素
小瘋談python:(五)數據類型之序列類型(中)

修改列表中的元素

  • ls[ i ] = s: 把列表ls中第 i+1 個元素改成 s
小瘋談python:(五)數據類型之序列類型(中)

  • ls*=n: 把列表ls中的所有元素複製你次,同時更新列表
小瘋談python:(五)數據類型之序列類型(中)

  • ls.reverse() : 將列表ls中的元素反轉,即將列表中的元素從後向前排
小瘋談python:(五)數據類型之序列類型(中)

以上便是列表主要的特有操作,其中list.append(),list.remove()和list[i]=x是最為常用的列表方法。

小瘋談python:(五)數據類型之序列類型(中)

元組:元組是python中比較特殊的數據類型,因為它一旦創建就不能被修改,這是它與列表的主要區別,其表達式為 tuple=( 元素 ),它的內部的元素可以為符合python要求的任何數據類型。

由於元組具有不可變的特點因此對於元組來說,只有查詢的操作(也就是上一篇文章中介紹的通用操作,常用的有index()和count()方法),沒有增刪改的操作,如果想要對元組類的數據進行操作,可以先把元組轉化成列表,然後運用列表的方法對其進行操作(後面我會專門介紹一下序列類型的一些其他方法)。

也許你會問,既然元組與列表相似,為什麼不直接使用列表,而要在定義一個數據類型呢?

其實使用元組是為了保證數據的穩定,因為在實際操作的過程中,數據放在列表中可能會在代碼運行的過程中被預期之外的情況改變,如果你不希望這個數據被改變,使用元組則可以實現這一要求。

拓展:賦值運算符和邏輯運算符

  • 賦值運算符:當我們要對一個變量進行累加運算的時候,我們常常會這樣寫a=a+1,但程序員為了簡化代碼,通常會寫出 a+=1,這裡 ‘+=’便是賦值運算符之一。對於新手來說,不建議這麼做,因為這樣會降低代碼的可讀性。下面是主要的賦值運算符。
小瘋談python:(五)數據類型之序列類型(中)

  • 邏輯運算符:即邏輯中常用的“或”,“且”,“非”這三個詞。在python中用‘or’,‘and’,‘not’表示上三個詞,邏輯運算符常用於條件判斷,因此常和比較運算符組合使用,返回布爾值。在這裡我簡單的介紹下邏輯運算的規則,True表示命題為真,False表示命題為假。
    • and(且):
      • True and True 為 True
      • True and False 為False
      • False and True 為False
      • False and False 為False
      • 由此可見,只有這有前後兩個命題都為真的時候,總命題才為真,一旦有一個為假則總命題為假。另外,在python中如果前命題已經為假了,那麼解釋器不會在判斷後命題,無論它是否為真,即使後命題有語法錯誤也不會進行判斷
    • or(或):
      • True or True 為 True
      • True or False 為 True
      • False or True 為 True
      • False or False 為 False
      • 由此可見,只有這有前後兩個命題都為假的時候,總命題才為假,一旦有一個為真則總命題為真。另外,在python中如果前命題已經為真了,那麼解釋器不會在判斷後命題,無論它是否為真,即使後命題有語法錯誤也不會進行判斷
    • not(非):
      • not True 為 False
      • not False 為 True
      • 沒什麼好講的。

好的以上便是關於列表和元組的一些操作,如果你有什問題可以直接私信我,下一篇將開始具體介紹序列類型的字符串,同樣的,如果小夥伴覺得有所收穫,那麼還請點贊和轉發一下吧。


小瘋談python:(五)數據類型之序列類型(中)


分享到:


相關文章: