python基础语法循环嵌套和列表(二)

1.通用操作

##1.1 + 和*

    ‘+’ 是指列表之间可以进行拼接。

  • 星号
    ‘*’ 可以将列表重复指定次数**(注意两个列表不能做乘法运算,这里说的是列表可以和整数做乘法运算,整数位2,说明列表重复两次,整数位3,列表重复三次**。代码走起

list1=[0, 1, 2, 3, 4]
#乘法运算
print(list1*2)
[0, 1, 2, 3, 4, 0, 1, 2, 3, 4]#重复2次
print(list1*3)
[0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4]#重复3次

##1.2 in 和not in
in 和not in 都是用来检查元素是否存在列表中。in是判断存在列中,not in 判断不存在列表中。

heros=['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人','美国队长','蜘蛛侠','蜘蛛侠']
#in 
print(1 in heros)#检查1是否在列表中,是返回True
print(heros[0] in heros)检查位置为0的元素是否在列表中。
False#1不存在列表中
True#存在列表中


# not in
print(heros[0] not in heros)#0位置上的元素是否不存在列表中
False# 返回False,说明存在列表中

1.3 len()

计算列表中的长度或者获取列表中元素的个数

list1= [0,1,2,3,4]
list2=[5, 6, 7, 8, 9]
print(len(list1))
print(len(list3))
5
5

1.4 max()

获取列表中的最大元素。

1.5 min()

获取列表中的最小元素

1.6 list.index(x,start,end)

获取指定元素在列表中的位置
x是指定元素
start:是指定寻找元素的起始位置;
end:是指寻找元素的结束位置
返回列表中指定元素的位置

heros = ['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人','美国队长','蜘蛛侠','蜘蛛侠']
print(heros.index('蚁人',0,8))
4

注意:如果列表中有多个指定元素出现,使用list.index()获取指定元素在列表中出现的第一次位置,获取第一次位置虎就结束。

heros = ['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人','美国队长','蜘蛛侠','蜘蛛侠']
print(heros.index('蜘蛛侠',0,9))
2#2为蜘蛛侠第一次出现的位置,后面位置的蜘蛛侠未出现。

1.7 list.count(x)

用于统计列表中指定元素出现的次数

list3=[10, 11, 12, 13, 14,12,12,12]
print(list3.count(12))
4#列表中的元素12在列表中出现了4次

2. 修改列表

修改列表主要是包括:想列表中添加元素和删除元素。

添加元素方法分为:下标索引添加和切片添加

2.1 索引添加

#语法:
list[位置]=‘元素’
#案例
heros1 = ['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人']
heros1[0]='美国队长'
print(heros1)
['美国队长', '绿巨人', '蜘蛛侠', '猪猪侠', '蚁人']

2.2 切片添加

  • 通过切片来替换元素大于原有的元素,多余的元素依次往后延;
  • 如果替换的元素小于原有的元素,原有被切片的元素变成替换的元素;
  • 当切片设置了步长,原序列中的元素的个数必须和你切片的元素的个数保持一致。
#替换元素大于原有被替换的元素
heros1 = ['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人']
heros1[0:2]=['葫芦娃','黑猫警长','黑豹']
print(heros1)
['葫芦娃', '黑猫警长', '黑豹', '蜘蛛侠', '猪猪侠', '蚁人']#'钢铁侠','绿巨人'被替换,同时替换元素的个数多余被替换元素,多的替换元素依次往后延。

#替换元素小于被替换元素
heros1 = ['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人']
heros1[0:2]=['葫芦娃']
print(heros1)
['葫芦娃', '蜘蛛侠', '猪猪侠', '蚁人']#替换的元素小于原有的元素,原有被切片的元素变成替换的元素
#案例:切片含有步长
heros1 = ['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人']
heros1[::2]=['葫芦娃','美国队长','孙悟空']
print(heros1)
['葫芦娃', '绿巨人', '美国队长', '猪猪侠', '孙悟空']

2.3 列表中删除元素

(1)列表中删除元素的方法,通过del(),没有返回值。
(2)del结合切片来删除

heros1 = ['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人']
del heros1[0]
print(heros1)
['绿巨人', '美国队长', '猪猪侠', '孙悟空']#原列表中的0位置元素钢铁侠被删除。
heros = ['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人','美国队长']
del heros[1:3]
print(heros)
['钢铁侠', '猪猪侠', '蚁人', '美国队长']#原列表中位置为1,2的元素被删除

3. 列表的方法

3.1 append()向列表的最后添加一个元素

解释,这个新添加的元素可以是一个单个元素,也可以是一个完整的列表。
区别于extend(iterable)

list1=[0, 1, 2, 3, 4]
heros1 = ['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人']
list2=[5, 6, 7, 8, 9]
list1.append(heros1)
list2.extend(heros1)
print(list1)
print(list2)
[0, 1, 2, 3, 4, ['钢铁侠', '绿巨人', '蜘蛛侠', '猪猪侠', '蚁人']]
[5, 6, 7, 8, 9, '钢铁侠', '绿巨人', '蜘蛛侠', '猪猪侠', '蚁人']

对比append()和extend(),我们可以发现,append()
是将一个列表单独作为一个元素,直接加入原列表中,组成原列表中的新元素。
extend()是将新添加的序列添加到原列表中。—简单的讲就是扩展原序列

3.2 insert(arg1,arg2)

向列表指定位置插入一个元素

参数1: 要插入的位置
参数2:要插入的元素

list1=[0, 1, 2, 3, 4]
list1.insert(2,'孙悟空')
[0, 1, '孙悟空', 2, 3, 4]

3.3 extend(iterable)

使用一个新的序列来扩展当前序列(将新序列的元素添加到列表中),参数需要传递一个序列

list2=[5, 6, 7, 8, 9]
heros1 = ['钢铁侠','绿巨人','蜘蛛侠','猪猪侠','蚁人']
print(list2)
[5, 6, 7, 8, 9, '钢铁侠', '绿巨人', '蜘蛛侠', '猪猪侠', '蚁人']

3.4 pop()

根据索引删除元素并返回删除元素,需要接收返回的对象

list4=[10, 11,'蜘蛛侠',12, 13, 14,12,12,12,'阿珂']
a = list4.pop(2)#pop有返回值,需要接收
print(a)
蜘蛛侠

3.5 remove()

删除指定元素,如果相同值的元素有多个,只会删除第一个,没有返回值。

list4=[10, 11,'蜘蛛侠',12, 13, 14,12,12,12,'阿珂']
list4.remove('蜘蛛侠')
print(list4)
[10, 11, 12, 13, 14, 12, 12, 12, '阿珂']

有没有返回值,可以接收个对象,并打印对象,如果不存在返回值为NOne

3.6 reverse()

翻转列表

list4=[10, 11,'蜘蛛侠',12, 13, 14,12,12,12,'阿珂']
list4.reverse()
print(list4)
['阿珂', 12, 12, 12, 14, 13, 12, '蜘蛛侠', 11, 10]

3.7 sort(key=None,reverse=False)

用来对列表中的元素进行排序,reverse为True为反序,False为正序。

list5 = list('abcdefg')
list5.sort(reverse=True)
print(list5)
['g', 'f', 'e', 'd', 'c', 'b', 'a']

4. 遍历列表

是指将列表中的元素提取出来。
遍历的方法主要是while循环和for循环

4.1 while遍历循环

注意 当使用while循环时,条件更新表达式要在print()函数之后,否则报错。即需要根据执行流程确定更新表达式的位置。

5.range()函数

  • 语法
range(start,stop,step)
#range函数有主要是生成一系列整数,是整数,整数。参数。
start:生成的整数的起始数;
stop:生成的整数的结束位置,生成的整数中不包括结束位置整数。
step:步长,也可以理解为每个整数之间的间隔。

range()函数运用很灵活,可以结合其他的运算符进行广泛应用。

  • 配合for循环来执行循环次数
for i in range(5):
	print('hello world')
hello world
hello world
hello world
hello world
hello world

6. 错题集

6.1列表之间不能做乘法运算

在这里插入图片描述

6.2. while循环遍历列表

在这里插入图片描述
解决办法:
将跟新表达式放在print之后
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值