Python資料型別 列表 元組

2021-08-17 07:00:13 字數 4078 閱讀 1341

列表是什麼

列表由一系列按特定順序排列的元素組成。用方括號來表示列表,並用逗號來分隔其中的元素。

可通過從0開始的索引來訪問列表元素,-1**最後乙個元素,-2代表倒數第二個元素

>>> ls=[1,0.4,"ab",[2,23]]

>>> print ls[-1]

[2, 23]

>>>

列表:新增和刪除元素

刪除元素:1.使用del語句和索引刪除任意位置的元素;2.使用pop()方法刪除最後乙個元素,或傳入索引刪除任意位置的元素。注意,此方法有返回值,返回被刪除的元素;3.不知道元素索引知道元素值的情況下可通過remove()刪除元素。注意,如果要刪除的值在列表出現多次,remove()方法只刪除第乙個指定的值。

>>> ls=['one',"two",'three']

>>> ls.insert(0,'zero')

>>> print ls

['zero', 'one', 'two', 'three', 'last']

>>> del ls[0]

>>> print ls

['one', 'two', 'three', 'last']

>>> deleted=ls.pop(0)

>>> print deleted

one>>> print ls

['two', 'three', 'last']

>>> ls.remove('three')

>>> print ls

['two', 'last']

>>>

組織列表

方法sort()可以對列表進行永久性排序,引數reverse=true表示倒序;函式sorted()可對列表進行臨時排序,並不更改列表元素的原始順序,引數reverse=true表示倒序;方法reverse()可以反轉列表元素的排列順序;函式len()可快速獲悉列表的長度。

>>> ls=[12,32,123,2]

>>> ls.sort()

>>> print (ls)

[2, 12, 32, 123]

>>> ls.sort(reverse=true)

>>> print (ls)

[123, 32, 12, 2]

>>> print(sorted(ls,reverse=false))

[2, 12, 32, 123]

>>> print(ls)

[123, 32, 12, 2]

>>> ls.reverse()

>>> print (ls)

[2, 12, 32, 123]

>>> print(len(ls))

4>>>

迴圈:

迴圈的內容必須對齊**,否則會報語法錯誤。我們可以通過迴圈遍歷列表

in [1]: ls=[12,32,123,2]

in [2]: for element in ls:

...: print(element)

...:

1232

1232

in [3]:

建立數值列表:

python函式range()讓你能夠輕鬆的生產一系列數字

in [4]: for i in range(1,6):

...: print (i)

...:12

345

使用range()函式時還可指定步長

in [5]: for i in range(1,11,2):

...: print (i)

...:13

579

使用list()函式可以將range()返回的結果直接轉換為列表

in [7]: numbers=list(range(1,6))

in [8]: print(numbers)

[1, 2, 3, 4, 5]

內建的一些python函式,如min()、max()、sum()專門用於處理數字列表

in [9]: digits=[1,2,3,4,5,6,7,8,9,0]

in [10]: min(digits)

out[10]: 0

in [11]: max(digits)

out[11]: 9

in [12]: sum(digits)

out[12]: 45

列表解析將for迴圈和建立新元素的**合併為一行

in [13]: squares=[value**2 for value in range(1,4)]

in [14]: print squares

[1, 4, 9]

使用列表的一部分

處理列表的部分元素——python稱之為切片。要建立切片需要指出開始元素和結束元素的索引,如果沒有指定第乙個索引,預設從列表開頭開始;反之沒有最後乙個索引,預設到最後乙個元素結束。

>>> digits=[1,2,3,4,5]

>>> digits[0:3]

[1, 2, 3]

>>> digits[:3]

[1, 2, 3]

>>> digits[3:]

[4, 5]

>>> digits[:]

[1, 2, 3, 4, 5]

可以通過建立包含整個列表的切片進行列表的複製操作,否則,簡單的將列表變數賦值給新的變數,新的變數只是列表變數的乙份引用而已。

>>> digits=[1,2,3,4,5]

>>> new_digits=digits[:]

>>> ref_digits=digits

>>> print(new_digits)

[1, 2, 3, 4, 5]

>>> print(ref_digits)

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

元組(tuple)

由上可知,列表是可以修改的,長度也是動態的。有時候你需要建立一系列不可更改的元素,不可變列表被稱為元組。元組使用圓括號而不是方括號來標識。

>>> tuple1=(100,200,300)

>>> tuple1[0]=-100

traceback (most recent call last):

file "", line 1, in typeerror: 'tuple' object does not support item assignment

雖然不能修改元組的元素,但可以給儲存元組的變數賦值。

>>> tuple1=(100,200,300)

>>> tuple1=(1,2,3)

>>> tuple1

(1, 2, 3)

設定**格式

為確保所有人編寫的**的結構都大致一致,python程式設計師都遵循一些格式設定約定。若要提出python語言的修改建議,需要編寫python改進提案(python enhancement proposal,pep)。pep8是最古老的pep之一,它向python程式設計師提供了**格式設定指南。

pep 8建議每級縮排使用四個空格,這既提高了可讀性,又留下了足夠的多級縮排空間。同時使用製表符和空格可能會導致極難解決的問題,在你編寫**前一定要對編輯器進行設定,使其鍵入製表符時,是在文件中插入空格而不是製表符。

很多python程式設計師都建議每行不超過80個字元。最初制定這樣的指南時,大多數計算機終端視窗每行只能容納79個字元;當前,計算機螢幕每行容納字元增多,但還有別的原因。專業程式設計師通常會在同乙個螢幕上開啟多個檔案,使用標準行長可以讓他們在螢幕上併排開啟兩三個檔案時能同時看到各個檔案的完整行。pep 8還建議注釋的行長都不超過72個字元,因為有些工具為大型專案自動生成文件時,會在每行注釋開頭新增格式化字元。當然,pep 8中有關行長的標準並非不可逾越的紅線。

要將程式的不同部分分開,可使用空行。空行不會影響**的執行,但會影響**的可讀性。python直譯器根據水平縮排情況來解讀**,但不關心垂直距離。

python資料型別 列表和元組型別

定義乙個列表型別很簡單 l a b c d e f 變數l即為列表型別,可以用type方法檢視 print type l 對資料的操作最重要的無非是增 刪 改 查這四個操作 首先,我們理解乙個序列的索引 下標 列表中每個元素都有自己的乙個下標,下標從0開始,倒數從 1開始 索引出列表中的元素 pri...

python 資料型別 列表和元組

列表是以方括號包圍的資料集合,不同成員以 隔開。列表中可以包含任何資料型別,也可以包括另乙個列表。列表頁可以通過序號來訪問其中的成員。在指令碼中可以對列表中的資料進行排序 新增 刪除等操作,改變列表中的中某一成員。元組是以圓括號 包圍的資料集合。與列表不同的是,元組中的資料一旦確定就不能被改變。元組...

Python資料型別(列表,元組,字典)

1,列表 初始化列表 list physics chemistry 1997,2000 列表的函式和方法 list.count obj 統計某個元素在列表中出現的次數 list.extend seq 在列表末尾一次性追加另乙個序列中的多個值 用新列表擴充套件原來的列表 list.index obj ...