第一章 1 4 資料型別之列表

2021-10-03 18:47:13 字數 4176 閱讀 3562

列表是python提供的容器型資料型別;以中括號作為容器標誌;

裡面多個元素用逗號隔開:[1,2,3,4,5,6],元素的個數就是列表的長度

列表是可變的、 有序的 ;

列表中的元素可以是任何型別的資料(賦值語句除外)

同乙個列表中的元素的型別可以不一樣

例:[123,12.4,true,『sdf』,[1,4,5],(10,19),,]

1)、獲取單個元素

①:語法:

列表 [ 下標 ]

②:說明:

列表----------->可以是列表值、儲存列表的變數、結果是列表的表示式

中括號[ ]------>固定寫法

下標------------>列表中的每個元素都會對應乙個下標,來表示元素在列表中的位置

下標範圍:

0到列表長度減一 - 從前往後以此增加,0表示第乙個元素

-1到負列表長度 - 從後往前依次遞減,-1表示最後乙個元素

indexerror:list index out of range - 下標越界報錯

2)、獲取部分元素(切片) - 切片的結果還是列表

①:語法:

列表 [ 開始下標:結束下標:步長 ]

列表**[m:n:step]** - 獲取range(m,n,step)產生的數字序列作為下標去列表裡取元素

②:其他用法:

③:遍歷列表:

list=[

1,30,

69,6,

58,77,

106]

print

(list[4

])# 58

print

(list[2

:5])

# [69, 6, 58]

print

(list[2

:5:2

])# [69, 58]

print

(list[:

4])prine(

list[3

:])print

(list[:

])

2)、列表.insert [ 下標 ,元素 ] ------> 在列表指定下標位置新增元素
list=[

'肖申克的救贖'

,'功夫'

,'霸王別姬'

,'臥虎藏龍'

,'天方異譚'

,'恐怖遊輪'

]print

(list

'我不是藥神'])

print

(list

.insert[-3

,'大聖歸來'

])

1)、del列表[下標]------>刪除指定下標的元素

2)、列表.remove(元素)------>刪除列表中指定的元素

注:若列表中沒有指定的元素,報錯

若列表中有多個相同的指定元素,刪除第乙個

3)、列表.pop()------>取出列表中最後乙個元素

列表.pop(下標)------>取出列表中指定下標的元素

注:pop()中,元素是被取出,並沒有被刪除;只是對列表來說,元素減少了,如果將pop取出的值用變數儲存並列印出來,能得到該元素

num =[2

,50,8

,9,43

]prunt(num.pop(2)

)# 8

print

(num)

# [2, 50, 9, 43]

# 練習下面這個列表中小於60的元素

# 答案:[89, 90, 78, 60, 87]

方法一、

scores =[89

,45,56

,20,90

,78,60

,23,87

,20,50

]for num in scores[:]

:# 如果在原列表中刪除,那麼原列表的元素下標會不斷變化,

#最後程式雖然不報錯,但是結果不準確

if num <60:

scores.remove(num)

print

(scores)

方法二、

scores =[89

,45,56

,20,90

,78,60

,23,87

,20,50

]scores2 = scores[:]

length =

len(scores2)

t =0

for x in

range

(length)

:if scores2[x]

<60:

scores.remove(scores[x]

)else

: t +=

1print

(scores)

列表[下標] = 值------>修改列表中指定的元素

練習:將下列表中小於60的分數換成不及格

scores =[89

,45,56

,20,90

,78,60

,23,87

,20,50

]length =

len(scores)

for x in

range

(length)

:if scores[x]

<60:

scores[x]

='不及格'

print

(scores)

1)、加法

list1 =[1

,2,3

,4]list2 =

['王二'

,'張三'

,'李四'

]print

(list1 + list2)

print

(list1 *

3)

li1 =[1

,2]li2 =[1

,2]print

(li1 == li2)

print

(li1 == li2)

# print(id(li1) == id(li2))

names =

['小紅'

,'小強'

,'小明'

]print

('小明'

in names)

print

('李四'

in names)

len / max / min / list / sum

1)、len(序列)------>獲取序列的長度(元素的個數)

2)、max(序列)\min(序列)------>獲取序列中最大值和最小值

對序列的要求:

1.序列中所有元素的型別一致(數字看成乙個型別)

2.元素本身支援比較大小

3)、sum(數字序列)------>求序列中所有元素的和

(要求序列中的元素全是數字)

4)、list(序列)------>將其他型別的序列轉換成列表;序列是容器型資料

1、列表.count(元素)------>統計列表中指定元素的個數

2、列表.extend(序列)------>將其他序列的元素全部新增到列表中

3、列表.index(元素)------>獲取指定元素在列表中的下標

4、列表.revers()------>將原來的列表倒序(反過來)

5、列表.clear()------>清空列表

6、列表.copy()------>複製列表中的元素,產生乙個新的列表,賦值後兩個相互不影響

7、列表.sort()------>將列表中的元素從小到大排序(直接修改列表中元素的順序,不產生新列表)

8、sorted(序列)------>不修改原序列,排序後產生乙個新的列表(從小到大)

第一章 資料型別

c 資料型別分為兩類 值型別,引用型別。值型別直接儲存其值,引用型別儲存對值的引用,值型別存在堆疊 即棧 上,引用型別儲存在託管堆 即堆 上,值型別轉為引用型別叫做裝箱,引用型別轉為值型別叫拆箱。集體參考 http www.cnblogs.com john connor archive 2012 0...

第一章 1 5 資料型別之元組

1 查 元組的查和列表的基本相同 但元組不支援增 刪 改 tuple1 2 5,8 1,8 print tuple1 0 print tuple1 3 print tuple1 2 4 2 2 元組和列表相同的操作 is in not in len max min sum sorted 1 單個元素...

資料型別之列表

一 列表簡介 序列是python中最基本的資料結構。序列中的每個元素都索引,第乙個索引是0,以逗號作為分割符。二 列表的方法 0 建立列表 names a b c d e names a b c d e 2 刪除 pop,remove,del 1 pop names.pop e 如果沒有指定下標,則...