1. 程式人生 > >python 中資料型別--列表、元組的理解(一)

python 中資料型別--列表、元組的理解(一)

                                                   資料型別--列表、元組

一、列表 list 數值 score=80 字串 name1="tom" name2="jerry" name3="kate" 當需要儲存多個元素的時候,提取不方便就需要使用列表來執行,減少時間。 python中列表定義:可變的有序表,可以儲存多個元素的資料型別。

1.列表的建立 語法:列表名=[元素1,元素2....] 定義一個  names=["tom","jerry","kate",1,2,[4,5]] 執行print(names)

就會列印   ['tom', 'jerry', 'kate', 1, 2, [4, 5]]

看一下names是什麼型別的

執行print(names,type(names))

就會列印['tom', 'jerry', 'kate', 1, 2, [4, 5]] <class 'list'>

後面<class 'list'>表示所屬與列表

列表的特點:

(1) 列表中的元素可以是多種資料型別

在計算機裡可以放多個元素的東西叫做容器,而列表就是這樣。

(2) 列表是有序的、可重複

序列:字串、位元組、列表、元組-----有序資料型別

(3) 列表中的元素可以被修改-----列表是可變資料型別  

列表的記憶體結構 基礎的資料型別:數值、布林、字串、位元組      (前面他們相同的東西會存在同一個記憶體地址上)

計算機記憶體中列表是有列表物件的。不同的列表物件是不同的。

names=["tom","jerry","kate",1,2,[4,5]]

names2=["tom","jerry","kate",1,2,[4,5]]

print(id(names),id(names2))

42845576 42846280     ID是不相同的

print(id(names[0]),id(names2[0]))

39682432 39682432    ID相同print(id(names[3]),id(names2[3]))

1426088160 1426088160    ID相同 print(id(names[5]),id(names2[5]))

39677640 39700616     ID不同print(id(names[5][0]),id(names2[5][0]))

1426088256 1426088256     ID相同

定義空列表

nulllist=[] print(nulllist,type(nulllist))

打印出   [] <class 'list'>   說明也是一個列表

names=["tom","jerry","kate",1,2,[4,5]] print(len(names),len(nulllist))

打印出   6 0    表示names有6 個元素,而nulllist有0個元素 列表型別的布林轉換

在數值型別,字串型別轉換布林型別時得到0為Fasle假,其他為True真 所以說至少有一個元素 為True,沒有元素為Fasle

nulllist=[] print(bool(nulllist))

得到Fasle,所以是空列表

而有元素的names=["tom","jerry","kate",1,2,[4,5]]  print(bool(names))

得到True

 在應用時判斷用if names:

列表中的元素是可重複 li=[1,2,3,1] print(li,len(li))

打印出[1, 2, 3, 1] 4    長度為4,顯示2個1 表示列表中元素是可以重複的 2.列表的操作 (1)運算子   支援的有    + * in not in  is  is not  == <  >  =      和字串相同 + 合併,將兩個列表的元素合在一起,形成新的列表。新建立列表物件進行合併 a=[1,2] b=[3,4] print(a+b)          [[1,2],[3,4]] 不是這樣    是 [1,2,3,4]這樣 * 重複 將列表中的元素進行重複,形成新的列表 print(a*3)            [[1,2],[1,2],[1,2]] 不是這樣   是 [1,2,1,2,1,2]這樣 print(a*2+b*3)     [1, 2, 1, 2, 3, 4, 3, 4, 3, 4]  這樣

in  not in: 判斷元素是否在列表物件當中 a=[1,2,3,4,"a"] print(1 in a)      會返回True x="abc"

print(a in x)      得不出答案報錯 print("a" in x)   注意:列表中的元素可以是多種型別,字串中的元素就是單個字串

is is not 判斷物件是否是同一個 a=[1,2,3] b=[1,2,3] c=a print(a is b)    顯示False     記憶體物件不同 print(a is c)     顯示True    因為c指向的記憶體物件相同

< > 將列表中的元素逐個比較 根據ascii碼比較 print([1,2,3]<[4])      True

會用前面第一個元素和後面的相比較