列表和元組

2021-10-09 20:18:51 字數 4202 閱讀 9838

練習:刪除指定分數列表中所有低於60分的成績

scores =[98

,45,34

,89,23

,67,23

,9,54

,100,78

]b = scores[:]

# 建立乙個和原列表一樣的列表(位址不同),避免出現遍歷刪除列表中元素時取值不能全部取完的情況

# b = scores[:] =scores * 1 =scores +

for score in b:

if score <60:

scores.remove(score)

print

(scores)

# [98, 89, 67, 100, 78]

1.基本語法

列表[開始下標:結束下標:步長] - 從開始下標開始獲取,到結束下標前位置,每次增加步長(左閉右開)

注意

1)列表切片的結果一定是列表

2)結束下標對應的元素一定娶不到

3)步長為正,表示從前往後取,結束下標要在開始下標的後面,否則結果是空列表

步長為負,表示從後往前取,結束下標要在開始下標的前面,否則結果是空列表

list1 =[23

,45,67

,89,45

,67,32

]print

(list1[1:

4:1]

)# [45, 67, 89]

print

(list1[0:

6:2]

)# [23, 67, 45]

print

(list1[-2

:1:-

2])# [67, 89]

2.切片省略

1).省略步長(冒號可以省)

列表[開始下標:結束下標] - 省略步長,步長是預設是1

2).省略開始下標 - 省略開始下標,開始下標預設是從步長方向的第乙個元素

列表[:結束下標:1]

3).省略結束下標 - 省略結束下標,結束下標預設是開始下標到步長方向的最後乙個元素(可取)

列表[開始::1]

print

(list1[-1

::-2

])# [32, 45, 67, 23]

print

(list1[:3

:-2]

)# [32, 45]

1.加法運算和乘法運算

加法:列表1 + 列表2 - 合併兩個兩個列表產生乙個列表

乘法:列表 * n或者n * 列表 - 列表重複n次產生乙個新的列表

2.比較運算

兩個列表之間比較大小和相等

注意:比較下標相同的兩個元素,從下標0開始,比較第一對不相等的元素的大小,誰大對應的列表就大

nums =[1

,2,3

,4,5

]nums2 =[1

,3]print

(nums > nums2)

# false

3.in 和 not in

元素 in 列表 - 判斷列表中是否存在指定的元素

元素 not in 列表 - 判斷列表中是否不存在指定的元素

print(10

in[1,

20,10,

4])# true

print([

1,2]

in[[1

,2],

3,4]

)# true

練習:

a =[1

,2,5

,10,3

,2]b =[5

,2,10

,20,32

,2]# 求公共列表 c : [5, 2, 10]

c =[

]a =[1

,2,5

,10,3

,2]b =[5

,2,10

,20,32

,2]for x in a:

if x in b and x not

in c:

print

(c)# [2, 5, 10]

4.相關函式

sum、max、min、sorted、len、list

1)sum(數字列表) - 求列表中所有元素的和

2)max(列表)/min(列表) - 求列表中元素的最大/最小值(注意:列表中的元素的型別必須一致,並且元素本身支援比較運算)

3)sorted(列表) - 將列表中的元素從小到大排序(公升序),產生乙個新的列表(不會修改原列表)

sorted(列表,reverse=true) - 將列表中的元素從大到小排序(降低序),產生乙個新的列表(不會修改原列表)

4)len(列表) - 獲取列表長度(列表中元素的個數)

5)list(列表) - 將指定的資料轉換成列表(資料必須是序列;轉換的時候直接將序列中的元素作為新的列表中的元素)

print(list(『abc』)) # [『a』, 『b』, 『c』]

list1 =[1

,2,5

,10,3

,2]new_list1 =

sorted

(list1)

new_list2 =

sorted

(list1, reverse=

true

)print

(list1, new_list1, new_list2)

# [1, 2, 5, 10, 3, 2] [1, 2, 2, 3, 5, 10] [10, 5, 3, 2, 2, 1]

print

(len

(list1)

)# 6

print

(list

('abc'))

# ['a', 'b', 'c']

1.列表.clear() - 清空指定列表

names =

['犬夜叉'

,'火影忍者'

,'海賊王'

]names.clear(

)print

(names)

#

2.列表.copy() - 賦值指定列表產生乙個一摸一樣的新列表(位址不同)

這兒是淺拷貝

3.列表.count(元素) - 統計指定元素在列表**現的次數

nums =[1

,2,3

,1,4

,2,1

,3,7

,3,3

]print

(nums.count(3)

)# 4

4.列表.extend(序列) - 將序列中所有的元素全部新增到列表中

names =

['犬夜叉'

,'一人之下'

,'海賊王'

]movies =

['肖申克的救贖'

,'復仇者聯盟'

]names.extend(movies)

print

(names)

# ['犬夜叉', '一人之下', '海賊王', '肖申克的救贖', '復仇者聯盟']

5.列表.index(元素) - 獲取指定元素在列表中的下標(返回的是0開始的下標值)

注意:如果元素有多個,只取第乙個下標的值

names =

['犬夜叉'

,'一人之下'

,'海賊王'

,'一人之下'

]print

(names.index(

'一人之下'))

# 1

6.列表.reverse() - 列表倒敘

names =

['犬夜叉'

,'一人之下'

,'海賊王'

]names.reverse(

)print

(names)

# ['海賊王', '一人之下', '犬夜叉']

7.列表.sort() - 將列表中的元素從小到大排序(不會產生新的列表)

列表.sort(reverse=true) - 將列表中的元素從大到小排序(不會產生新的列表)

列表和元組

python基礎教程學習筆記 基礎語法 1 乘法 例 endings st nd rd 7 th 等價於endings st nd rd th th th th th th th 2 索引的使用與分片 例 tag 0123454321 則tag 5 2 為 543 包括前面的,不包括後面的 負數的使...

列表和元組

1.列表常用操作 list.count x 計算列表中引數x出現的次數。list.extend l 向列表中追加另乙個列表l list.index x 獲得引數x在列表中的位置,沒有將會出錯。list.insert i,x 在i位置插入資料x。list.remove x 移除列表中第乙個值是x的成員...

列表和元組

列表因為元組的特性,直接從屬於元組的元素不能更改,所以元組只能檢視。index 通過元素找索引 可切片 找到第乙個元素就返回,找不到該元素即報錯。count 獲取某元素在列表 現的次數 數字型別轉換 int x base 將x轉換為乙個整數 float x 將x轉換到乙個浮點數 complex re...