首页
学习
活动
专区
工具
TVP
发布

day04

作者头像
py3study
发布2020-01-16 14:54:18
2800
发布2020-01-16 14:54:18
举报
文章被收录于专栏:python3python3

1、列表的增删改查

1.1、增

 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、删

 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、改

 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、查

 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 #['钢铁侠', '蜘蛛侠']

 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、一些公共的方法

 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并无区别。

  元祖的儿子不可修改,但是元祖的孙子可能会被修改:

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

View Code

  在这里,修改的是元祖里面的列表。

  下面将介绍一些join的使用:

 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的使用:

 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

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-06-04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、列表的增删改查
    • 1.1、增
      • 1.2、删
        • 1.3、改
          • 1.4、查
            • 1.5、一些公共的方法
            • 2、元祖的嵌套,range,for循环的嵌套
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档