day04

1、列表的增刪改查

1.1、增

《day04》
《day04》

 1 #append:在末尾增加,直接修改舊的列表
 2 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
 3 lst.append('綠巨人')
 4 print(lst)
 5 #result:
 6 # ['鋼鐵俠', '蜘蛛俠', '雷神', '滅霸', '綠巨人']
 7 
 8 #insert
 9 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
10 lst.insert(1,'綠巨人')
11 print(lst)
12 #result:
13 # ['鋼鐵俠', '綠巨人', '蜘蛛俠', '雷神', '滅霸']
14 
15 #extend:extend后的結果是修改原先的列表,與拼接類似,但與拼接不同的是,拼接返回的是一個全新的列表
16 #1、:第一種extend不是迭代添加進去,他可以將整個內容一次性添加
17 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
18 lst_add = ['綠巨人']
19 lst.extend(lst_add)
20 print(lst)
21 #result:
22 # ['鋼鐵俠', '蜘蛛俠', '雷神', '滅霸', '綠巨人']
23 #2、:第二種extend是迭代添加,即分解成每一個元素,分別添加。
24 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
25 lst.extend('綠巨人')
26 print(lst)
27 #result:
28 # ['鋼鐵俠', '蜘蛛俠', '雷神', '滅霸', '綠', '巨', '人']
29 #3、迭代方法添加不可以添加int類,會報錯
30 '''
31 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
32 lst.extend(123)
33 print(lst)
34 '''
35 #4、可以添加列表
36 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
37 lst.extend([1,2,3])
38 print(lst)

1.2、刪

《day04》
《day04》

 1 #pop:pop是唯一一個既修改列表又返回一個非None值的列表方法
 2 #1、指定刪除元素
 3 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
 4 name = lst.pop(2)#name即返回的值
 5 print(lst,name)
 6 #result:
 7 # ['鋼鐵俠', '蜘蛛俠', '滅霸'] 雷神
 8 
 9 #2、默認刪除最後一個元素,關於具體默認刪除規則,請參考Python基礎教程(3):35-36
10 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
11 name = lst.pop()
12 print(lst,name)
13 #result:
14 # ['鋼鐵俠', '蜘蛛俠', '雷神'] 滅霸
15 
16 #remove:刪除指定元素
17 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
18 lst.remove('蜘蛛俠')
19 print(lst)
20 #result:
21 # ['鋼鐵俠', '雷神', '滅霸']
22 
23 #clear:清空列表
24 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
25 lst.clear()
26 print(lst)
27 #result:
28 # []
29 
30 #del
31 #1、刪除lst后,就沒有了這個列表了,故報錯
32 '''
33 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
34 del lst
35 print(lst)
36 '''
37 
38 #2、刪除指定元素
39 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
40 del lst[2]
41 print(lst)
42 #result:
43 # ['鋼鐵俠', '蜘蛛俠', '滅霸']
44 
45 #3、切片刪除
46 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
47 del lst[2:]
48 print(lst)
49 #result:
50 # ['鋼鐵俠', '蜘蛛俠']

1.3、改

《day04》
《day04》

 1 #1、修改單個
 2 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
 3 lst[1] = '綠巨人'
 4 print(lst)
 5 #result:
 6 # ['鋼鐵俠', '綠巨人', '雷神', '滅霸']
 7 
 8 #2、修改多個,迭代添加,先刪除第0個和第1個,然後添加每一個,不論有多少個
 9 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
10 lst[0:2] = '美國隊長'
11 print(lst)
12 #result:
13 # ['美', '國', '隊', '長', '雷神', '滅霸']
14 
15 #3、非迭代,通過列表方式修改
16 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
17 lst[0:2] = ['美國隊長','綠巨人']
18 print(lst)
19 #result:
20 # ['美國隊長', '綠巨人', '雷神', '滅霸']

1.4、查

《day04》
《day04》

 1 #1、查詢所有
 2 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
 3 for i in lst:
 4     print(i)
 5 # result:
 6 # 鋼鐵俠
 7 # 蜘蛛俠
 8 # 雷神
 9 # 滅霸
10 
11 #2、切片查找
12 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
13 print(lst[0:2])
14 # result:
15 #['鋼鐵俠', '蜘蛛俠']


《day04》
《day04》

 1 lst = (1,2,3,'dfds',[1,'dfd','地方'],'對方的')
 2 #1、
 3 for i in lst:
 4     if type(i) == list:
 5         for k in i:
 6             print(k)
 7     else:
 8         print(i)
 9 
10 #2、
11 for i in range(0,len(lst)):
12     if type(lst[i]) == list:
13         for j in lst[i]:
14             print(j)
15     else:
16         print(lst[i])
17 #result
18 #1
19 # 2
20 # 3
21 # dfds
22 # 1
23 # dfd
24 # 地方
25 # 對方的

遍歷列表中的元素

 

1.5、一些公共的方法

《day04》
《day04》

 1 #len:計算長度
 2 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
 3 print(len(lst))
 4 # result:
 5 #4
 6 
 7 #count:統計次數
 8 lst = ['鋼鐵俠','蜘蛛俠','雷神','雷神','滅霸']
 9 print(lst.count('雷神'))
10 # result:
11 #2
12 
13 #index:獲取索引,若沒有當前元素,則會報錯
14 lst = ['鋼鐵俠','蜘蛛俠','雷神','滅霸']
15 print(lst.index('雷神'))
16 # result:
17 #2
18 
19 #sort:
20 #1、列表正向排序
21 num_of_lst = [1,5,8,9,6,3,4,7]
22 num_of_lst.sort()
23 print(num_of_lst)
24 # result:
25 #[1, 3, 4, 5, 6, 7, 8, 9]
26 
27 #2、列表逆向排序
28 num_of_lst = [1,5,8,9,6,3,4,7]
29 num_of_lst.sort(reverse = True)
30 print(num_of_lst)
31 # result:
32 #[9, 8, 7, 6, 5, 4, 3, 1]
33 
34 #reverse:反轉
35 num_of_lst = [1,5,8,9,6,3,4,7]
36 num_of_lst.reverse()
37 print(num_of_lst)
38 # result:
39 #[7, 4, 3, 6, 9, 8, 5, 1]

View Code

  這些公共的方法包括:len、count、index、sort、reverse

2、元祖的嵌套,range,for循環的嵌套

  元祖是不可修改的序列。

  一個只包含一個元素的元祖,必須在這個元素的後面加上逗號,如:(1,)。否則他就是(1),而(1)和1並無區別。

  元祖的兒子不可修改,但是元祖的孫子可能會被修改:

《day04》
《day04》

1 lst = (1,2,3,'dfds',[1,'dfd','地方'],'對方的')
2 lst[4][1] = lst[4][1].upper()
3 print(lst)

View Code

  在這裏,修改的是元祖裏面的列表。

  下面將介紹一些join的使用:

《day04》
《day04》

 1 #join
 2 #join針對的是可迭代對象,如字符串和列表
 3 s = 'hello'
 4 end_s = '@'.join(s)
 5 print(end_s)
 6 #result:
 7 #h@e@l@l@o
 8 
 9 #join的一些用法:將列錶轉成字符串
10 lst = ['李小龍','我的','男神']
11 print(''.join(lst))
12 #result:
13 #李小龍我的男神
14 
15 #若將字符串轉成列表,用split
16 s = '李小龍:我:男神'
17 print(s.split(''))
18 #result:
19 #['李小龍', '我', '男神']

join

  range的使用:

《day04》
《day04》

 1 #range
 2 #1、range(0,5)--->[0,1,2,3,4]
 3 for i in range(0,5):
 4     print(i)
 5 # result:
 6 # 0
 7 # 1
 8 # 2
 9 # 3
10 # 4
11 
12 #2、
13 for i in range(5):
14     print(i)
15 #結果同上
16 
17 #3、加上步長
18 for i in range(0,10,2):
19     print(i)
20 # result:
21 # 0
22 # 2
23 # 4
24 # 6
25 # 8
26 
27 #這種什麼都不打印
28 for i in range(0,10,-1):
29     print(i)

range

 

点赞

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *