06 - 列表
06 - 列表
1. 序列(sequence)
1.1基本概念
- 序列是Python中最基本的?種數據結構。序列?于保存?組有序的數據,所有的數據在序列當中都有?個唯?的位置(索引)并且序列中的數據會按照添加的順序來分配索引
- 數據結構指計算機中數據存儲的?式
1.2 序列的分類
- 可變序列(序列中的元素可以改變):例如 列表(list)字典(dict)
- 不可變序列(序列中的元素不能改變):例如 字符串(str)元組(tuple)
2. 列表(list)
- 列表是Python中的?個對象
- 列表的作?
- 列表中可以保存多個有序的數據
- 列表是?來存儲對象的對象
2.1 列表的使用
- 列表的創建:通過[]來創建?個空列表
2.2 切片
- 切?是指從現有列表中獲得?個?列表
- 通過切?來獲取指定的元素
- 語法: 列表[起始 : 結束 : 步?]
- 通過切?獲取元素時,會包括起始位置的元素,不會包括結束位置的元素
- 起始位置和結束位置的索引可以不寫
- 如果省略結束位置, 則會從當前的開始位置?直截取到最后
- 如果省略開始位置, 則會從第?個元素截取到結束的元素,但是不包括結束的元素
- 如果開始位置和結束位置都省略, 則則會從第?個元素開始截取到最后?個元素
- 步?表示每次獲取元素的間隔,默認是1(可以省略不寫)
- 步?不能是0,但可以是是負數
3. 通用操作
-
加法+ 和 乘法 *
- 加法+可以將兩個列表拼接成?個列表
- 乘法*可以將列表重復指定的次數 (注意2個列表不能夠做乘法,要和整數做乘 法運算)
-
in 和 not in
-
in?來檢查指定元素是否在列表當中
-
not in ?來檢查指定元素是否不在列表當中
-
len() 獲取列表中元素的個數
-
max() 獲取列表中最?值
-
min() 獲取列表中最?值
-
list.index(x[, start[, end]])
- 第?個參數 獲取指定元素在列表中的位置
- 第?個參數 表示查找的起始位置
- 第三個參數 表示查找的結束位置
-
list.count(x) 統計指定元素在列表中出現的個數
4. 修改列表
- 通過切?來修改(起始就是給切?的內容重新賦值,但是賦值的內容必須是? 個序列)
- 當設置了步?時,序列中元素的個數必須和切?中元素的個數保持?致
- 通過切?來刪除元素
-
del list[起始 : 結束]
-
list = []
-
5. 列表的方法
-
append() 像列表的最后添加?個元素
-
insert(arg1,arg2) 像列表指定位置插??個元素 參數1:要插?的位置 參數 2:要插?的元素
-
extend(iterable) 使??個新的序列來擴展當前序列(它會將該序列的中元素 添加到列表中) 參數需要傳遞?個序列
-
pop() 根據索引刪除并返回指定元素
-
remove() 刪除指定元素 (如果相同值的元素有多個,只會刪除第?個)
-
reverse() 翻轉列表
-
sort(key=None,reverse=False) ?來對列表中的元素進?排序
-
reverse: True反序;False 正序
6. 遍歷列表
6.1 for循環
- 通過for循環來遍歷列表
- 注意: for循環的代碼塊會執?多次,序列中有?個元素就會執??次。每執? ?次就會將序列中的?個元素賦值給變量,所以我們可以通過變量來獲取列表中的元素
6.2 range(start, stop[, step])
參數說明
- start: 計數從 start 開始。默認是從 0 開始。例如range(5)等價于 range(0, 5);
- stop: 計數到 stop 結束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]沒有5
- step:步?,默認為1。例如:range(0, 5) 等價于 range(0, 5, 1)
語法
練習
- 1.現在有 a = [1,2,3,4,5,6] 不通過函數的形式實現列表的反轉([6,5,4,3,2,1]) 并寫出推導過程
- 2.給用戶9次機會 猜1 - 10 個數字隨機來猜數字。如果隨機的數字和用戶輸入的數字一致則表示正確,如果不一致則表示錯誤。最終結果要求用戶怎么也猜不對
- 3.有兩個列表 lst1 = [11, 22, 33] lst2 = [22, 33, 44]獲取內容相同的元素
- 4.現在有8位老師,3個辦公室,要求將8位老師隨機的分配到三個辦公室中
- 5.現在有8位老師,3個辦公室,要求將8位老師隨機的分配到三個辦公室中,要求每個辦公室至少有一個老師(如果覺得上面的題不夠寫的話,寫這個)
總結
- 上一篇: 告别20k/s,利用IDM直链下载网盘资
- 下一篇: 【Axure交互教程】图表载入效果(柱状