列表初識java
列表索引,切片和操做python
1.1 列表的索引編程
列表與字符串同樣也有索引:數組
# 列表索引的應用 lst = ["asd", "你好", "hell world", 123, "昇仙"] print(lst[0]) # 獲取第一個元素 print(lst[1]) # 獲取第二個元素 print(lst[2]) # 獲取第三個元素 print(lst[3]) # 獲取第四個元素 print(lst[4]) # 獲取第五個元素 # 列表是可變的與字符串不一樣這點要注意,在列表的操做中會有說明.
1.2 列表的切片app
列表與字符串同樣可進行切片操做編程語言
lst = ["asd","你好","hell world",123,"昇仙"] print(lst[0:3]) # ["asd","你好","hell world"] print(lst[:3]) # ["asd","你好","hell world"] print(lst[1::2]) # ["你好",123] 列表一樣有步長 print(lst[2::-1]) # ["hell world","你好","asd"] 步長位置的正負控制着取值的方向 print(lst[-1:-4:-2]) # ["昇仙","hell world"] # 列表和字符串的操做基本相似,所以操做起來並不難觸類旁通便可.
1.3 列表的操做(增,刪,改,查,其餘操做)code
注意 : list和str不同, lst能夠發生改變.,因此能夠直接在原來list對象上進行操做.對象
1.3.1 列表的增長排序
# 在列表後新增 lst = ["asd","你好","hell world",123,"昇仙"] print(lst) lst.append("wusir") print(lst) # ["asd","你好","hell world",123,"昇仙","wusir"] --------------------------------- # 根據索引位置插入 lst = ["asd","你好","hell world",123,"昇仙"] lst.insert(1,"成仙") # 在索引爲1的位置插入劉德華,原來的元素向後移動一位. print(lst) # ["asd","成仙","你好","hell world",123,"昇仙"] --------------------------------- # 迭代添加 lst = ["asd","你好","hell world",123,"昇仙"] lst2 = ["昇仙成功","昇仙失敗"] lst.extend(lst2) print(lst) # ["asd","你好","hell world",123,"昇仙","昇仙成功","昇仙失敗"] print(lst2) # ["昇仙成功","昇仙失敗"] # lst2列表添加到lst列表中,lst2自己不變.
1.3.2 列表的刪除索引
列表的刪除有四種方式(pop,remove,clear,del)
# pop刪除用法 lst = ["asd","你好","hell world",123,"昇仙"] print(lst) el = lst.pop() # 當pop()括號內爲空時,默認刪除最後一個索引所對應的的數據. print(el) # 打印結果:昇仙,pop刪除列表的某一項時,會有返回值,其返回值就是被pop刪除的內容. print(lst) # ["asd","你好","hell world",123] lst = ["asd","你好","hell world",123,"昇仙"] el2 = lst.pop(2) # 刪除索引爲2的位置的值 print(el2) # hell world print(lst) # ["asd","你好",123,"昇仙"] --------------------------------- # remove刪除用法 lst = ["asd","你好","hell world",123,"昇仙"] lst.remove("昇仙") # 能夠刪除指定元素,當刪除不存在的元素會報錯 print(lst) # ["asd","你好","hell world",123] --------------------------------- # clear刪除用法 lst.clear() # 清空list print(lst) # [] --------------------------------- # 切片刪除 del lst[1:3] # 強制刪除 print(lst) # ["asd",123,"昇仙"]
1.3.3 列表的修改
# 列表的修改 lst = ["asd","你好","hell world",123,"昇仙"] lst[1] = "飛昇" # 把1號元素修改爲飛昇 print(lst) # ["asd","飛昇","hell world",123,"昇仙"] lst[:4:2] = ["返璞歸真", "融會貫通"] # 切片修改也能夠,同時注意當步長不是1時,元素的個數要一一對應額不然會報錯 print(lst) # ["返璞歸真","飛昇","融會貫通",123,"昇仙"] lst[1:4] = ["霸氣外露"] # 若是切片沒有步長或者步長是1時,則不用管替換的個數. print(lst) # ["返璞歸真","霸氣外露","昇仙"]
1.3.4 列表的查詢
列表是一個能夠迭代的對象
# 用for查詢打印列表每個元素 lst = ["asd","你好","hell world",123,"昇仙"] for el in lst: print(el) --------------------------------- # 查詢元素在列表中出現的次數 lst = ["asd","你好","hell world",123,"昇仙"] c = lst.count("昇仙") # 查詢昇仙出現的次數 print(c) # 1 --------------------------------- # 查詢列表的長度 lst = ["asd","你好","hell world",123,"昇仙"] l=len(lst) # 列表的長度,與字符串的使用方式相同 print(l) # 5
1.3.4 列表的其餘操做
# 升序 lst = [1,2,15,23,4,33] lst.sort() # 排序,默認爲升序. print(lst) # [1,2,4,15,23,33] --------------------------------- # 降序 lst.sort(reverse=True) # 降序 print(lst) # [33,23,15,4,2,1] --------------------------------- # 翻轉(倒序) lst = ["asd","你好","hell world",123,"昇仙"] lst.reverse() # 此方法只針對列表內的各個元素,倒序 print(lst) # ["昇仙",123,"hell world","你好","asd"]
列表嵌套
一層一層看靈活運用便可,融會貫通.
lst = ["武當","峨眉","少林",["崆峒",["極樂谷"],"華山"],"魔教"] # 找到峨眉 print(lst[2]) # 找到少林和魔教 print(lst[2:]) # 找到崆峒 print(lst[3][0]) # 將崆峒改爲丐幫 lst[3][0]="丐幫" print(lst) # ['武當','峨眉','少林',['丐幫',['極樂谷'],'華山'],'魔教'] # 在lst列表後添加"丐幫" lst.append("丐幫") print(lst) # ['武當','峨眉','少林',['崆峒',['極樂谷'],'華山'],'魔教','丐幫']
元組初識
元組俗稱不可變的列表,又稱爲只讀列表,元組也是python的基本數據類型之一,用小括號括起來,裏面能夠聽任何數據類型的數據,循環也能夠,查詢能夠,切片也能夠,就是不能改.
注意: 這裏元組的不可變的意思是當子元素是不可變對象時元素不可變,當子元素爲可變對象時是能夠變的, 這取決於子元素是不是爲可變對象.
元組中若是隻有一個元素,須要添加一個逗號,不然就不是一個元組,當tu=()時,print(type(tu)),打印結果顯示tu是元組.
元組嵌套
元組也有,len(),count(),index()等方法,能夠本身嘗試直至融會貫通.
# 元組取值和切片 tup = ("asd","你好","hell world",123,"昇仙") print(tup[0]) # asd print(tup[2]) # hell world print(tup[2:]) # ("hell world",123,"昇仙") 切片後仍然是元組 --------------------------------- # for循環 tup = ("asd","你好","hell world",123,"昇仙") for el in tup: print(el) --------------------------------- # 當元組內的子元素時可變類型時能夠進行操做,將武當換成丐幫 tup = ("asd","你好","hell world",123,["武當","峨眉","少林"]) tup[-1][0]="丐幫" print(tup) # ("asd","你好","hell world",123,["丐幫","峨眉","少林"]) # 這裏元組的不可變的意思是子元素不可變,而字元素內部的子元素是能夠變, 這取決於子元素是不是可變對象.