三、python沉淀之路--列表(list)
一、列表提供的一些方法
1、append():在原值最后追加
1 li = [11,22,33,44,55,] 2 li.append(99) 3 print(li) 4 li.append('中國') 5 print(li) 1 [11, 22, 33, 44, 55, 99] 2 [11, 22, 33, 44, 55, 99, '中國']2、clear():清空列表
1 li = [11,22,33,44,55,] 2 li.clear() 3 print(li)3、copy:拷貝,而且是淺拷貝,有返回值
1 li = [11,22,33,44,55,] 2 li1=li.copy() 3 print(li1)4、count:計算列表中某元素出現的次數,有返回值
1 li = [11,22,33,22,44,22,55,] 2 n = li.count(22) 3 print(n)返回值:3
5、extend:擴張原列表,參數必須是 可迭代對象
1 li = [11,22,33,22,44,22,55,] 2 li.extend(['北京’,‘長安街']) 3 print(li) 4 5 for i in ['北京','長安街']: #extend實際上相當于進行了for循環和append的組合應用 6 li.append(i) 7 print(li) 8 9 li.extend("北京") #字符串也是可迭代對象,經過extend后把每個元素分開加進去 10 print(li) 11 li.extend("abc") 12 print(li) 13 14 li.append(['北京','長安街']) #對比后,append會把整體加到列表最后,不會分開加進去 15 print(li) 1 [11, 22, 33, 22, 44, 22, 55, '北京’,‘長安街'] 2 [11, 22, 33, 22, 44, 22, 55, '北京’,‘長安街', '北京', '長安街'] 3 [11, 22, 33, 22, 44, 22, 55, '北京’,‘長安街', '北京', '長安街', '北', '京'] 4 [11, 22, 33, 22, 44, 22, 55, '北京’,‘長安街', '北京', '長安街', '北', '京', 'a', 'b', 'c'] 5 [11, 22, 33, 22, 44, 22, 55, '北京’,‘長安街', '北京', '長安街', '北', '京', 'a', 'b', 'c', ['北京', '長安街']]6、index:獲取對應值的索引位置(左邊優先)
1 li = [11,22,33,22,44,22,55,] 2 n = li.index(22) 3 print(n)返回值:1
7、insert:在指定位置插入元素
1 li = [11,22,33,22,44,22,55,] 2 li.insert(0,77) 3 print(li) 1 [77, 11, 22, 33, 22, 44, 22, 55]8、pop:刪除某個值,并且可以獲取刪除的值,刪除分兩種:一種默認刪除最后一個;二是指定索引位置刪除某元素
1 li = [11,22,33,22,44,22,55,] 2 s = li.pop() 3 print(li) 4 print(s) 5 s1 = li.pop(0) 6 print(li) 7 print(s1) 1 [11, 22, 33, 22, 44, 22] 2 55 3 [22, 33, 22, 44, 22] 4 119、remove:刪除指定的元素
1 li = [11,22,33,22,44,22,55,] 2 li.remove(33) 3 print(li) 1 [11, 22, 22, 44, 22, 55]總結:目前位置已經學了物種刪除方法: pop?? remove?? del li[2]???? del li[1:4] ? clear
10、reverse:將當前列表進行反轉
1 li = [11,22,33,22,44,22,55,] 2 li.reverse() 3 print(li) 1 [55, 22, 44, 22, 33, 22, 11]11、sort:排序,默認從小到大排序,括號里設為真時,從大到小排序
1 li = [11,55,22,33,22,44,22,] 2 li.sort() 3 print(li) 4 li.sort(reverse=True) 5 print(li) 1 [11, 22, 22, 22, 33, 44, 55] 2 [55, 44, 33, 22, 22, 22, 11]同類方法,后面還要學 :cmp??? key??? sorted
?
二、列表的其他常用方法
1、列表里面可以嵌套任何形式。里面的元素可以是 數字、列表、字符串、布爾值等等
2、可以索引取值
print(li[3])
3、可以切片,獲取片段,片段還是列表
print(li[2:5])
print(li[3:-1])
4、可以進行for 循環,因為是可迭代的,也可以whlie循環,
5、列表生成后,可以修給里面的元素;?? 字符串一旦生成后,里面的元素不可修改
6、可以索引修改、刪除里面的元素
1 li = [11,55,22,33,22,44,22,] 2 #索引修改值 3 li[0]=9 4 print(li) 5 #索引刪除值 6 del li[1] 7 print(li) 1 [9, 55, 22, 33, 22, 44, 22] 2 [9, 22, 33, 22, 44, 22]7、切片獲取片段,切片刪除片段
1 li2 = [11,55,22,33,22,44,22,] 2 #切片 3 ss = li2[2:-1] 4 print(ss) 5 #刪除一段 6 del li2[2:-1] 7 print(li2) 1 [22, 33, 22, 44] 2 [11, 55, 22]8、in 操作、 深度索引操作
1 li = [22,44,5,7,"china",[99,"nice"],"good",True] 2 v1 = 22 in li 3 print(v1) 4 v2 = "nice" in li 5 print(v2) 6 7 v = li[5][1] 8 print(v) 1 True 2 False 3 nice9、轉換
str 轉? int
1 s = "12345" 2 n = int(s) 3 print(n)int 轉str
1 n = 1223454 2 s = str(n)字符串轉列表
1 s = "abcdefg" 2 li = list(s) 3 print(li) 1 ['a', 'b', 'c', 'd', 'e', 'f', 'g']列表轉字符串:分兩種:一是列表里只有字符串形式的元素,這時既可用for循環,又可用join法;二是列表里除了有字符串,還有其他類型,只能用for循環
1 li = [22,4,4,66,"hello","world"] 2 s = "" 3 for i in li: 4 s =s + str(i) 5 print(s) 6 7 li2 = ["hello","world"] 8 s = "".join(li2) 9 print(s) 1 224466helloworld 2 helloworld10、補充
字符串創建以后不可以被修改
1 s = "abcdefg" 2 s1=s.replace("a","0") #這里的改動,不是把原來的改了,而是在內存里另外開辟了一塊空間,將新的字符串存起來了,通過下面兩個print輸出結果可以證明 3 print(s) 4 print(s1) 1 abcdefg 2 0bcdefg字符串不可以通過索引來修改
#########i列表有序,元素可以被修改###############
類與對象的區別
?
轉載于:https://www.cnblogs.com/jianguo221/p/8940243.html
總結
以上是生活随笔為你收集整理的三、python沉淀之路--列表(list)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 配置Docker代理已实现外网访问
- 下一篇: LeetCode第19题;删除链表的倒数