「这是我参与11月更文挑战的第6天,活动详情查看:2021最后一次更文挑战」。
这里是清安,关注我,每日python,轻轻松松拿捏,不信?来挑战一周试试。没有收获你来找我,进群一点点教。留言回复。
列表操作
查找
#返回值的下标,如果重复值,只会返回第一次的值
list_number = ['cat','dog','snake','elephant']
print(list_number.index('dog'))
添加
# 可以指定添加到某个位置
list_number = ['cat','dog','snake','elephant']
list_number.insert(1,'monkey')
print(list_number)
# 其结果是:
# ['cat', 'monkey', 'dog', 'snake', 'elephant']
# 只能添加到末尾的位置
list_number = ['cat','dog','snake','elephant']
list_number.append('monkey')
print(list_number)
# 其结果是:
# ['cat', 'dog', 'snake', 'elephant', 'monkey']
删除
list_number = ['cat','dog','snake','elephant']
list_number.remove('cat')
print(list_number)
# 其结果是:
# ['dog', 'snake', 'elephant']
list_number = ['cat','dog','snake','elephant']
del list_number[1]
print(list_number)
# 其结果是:
# ['cat', 'snake', 'elephant']
排序
# 按字母顺序进行排序
list_number = ['c','d','s','a']
list_number.sort()
print(list_number)
# 其结果是:
# ['a', 'c', 'd', 's']
# 倒叙
list_number = ['c','d','s','a']
list_number.reverse()
print(list_number)
# 其结果是:
# ['a', 's', 'd', 'c']
拼接
list_number = ['c','d','s','a']
list_1 = ['小北']
list_number.extend(list_1)
print(list_number)
# 其结果是:
# ['c', 'd', 's', 'a', '小北']
弹出
list_number = ['c','d','s','a']
list_1 = []
n = list_number.pop(1)
print(list_number)
list_1.append(n)
print(list_1)
# 其结果是:
# ['c', 's', 'a']
# ['d']
指定弹出索引位置的值,我们还可以进行调用哦。
结合字符串操作
list_number = ['tom','luci','xifa','BOB']
for i in list_number:
print(i.upper())
# 其结果是:
# TOM
# LUCI
# XIFA
# BOB
这里只举出了全部大写的例子,结合字符串所学,写法一致!
循环
# 定义一个列表
name_study = ['chinese','english','math','pe']
# 使用for循环,定义一个变量循环列表
for i_name in name_study:
#打印我们的循环结果
print(i_name)
这里这个i_name是新定义的一个变量,用于获取name_study里面的值。
# 结果
chinese
english
math
pe
range
上述不明白看看下面
for num in range(1,5):
print(num)
# 结果
# 1
# 2
# 3
# 4
range这里的可以这样理解:range(1,5),在for循环中使用我们定义的num变量进行15之间的数字循环,但是因为range函数的本身的原因,所以5是不会打印的,如果要打印15所有的数字,就需要改一下range里面的参数:看代码
for num in range(1, 6):
print(num)
将range里面的5,改成6,使用for循环就可以打印出1-5所有的数字啦
list()
下面我们将循环出来的数字变成列表形式
num = list(range(1,6))
print(num)
# [1, 2, 3, 4, 5]
也可以设置一定的步长,所谓的步长就是个几个数取一次值
num = list(range(1, 11, 2))
print(num)
# [1, 3, 5, 7, 9]
统计
num = [20, 30, 50, 80, 40, 10]
print(min(num)) # 最小的一个数
print(max(num)) # 最大的一个数
print(sum(num)) # 列表的数字和
切片
切片呢,是在列表中我们可以使用索引值来处理它的一部分元素,就不需要一个一个再打印了,对于这种python中称之为切片,看例子:
# 创建一个列表
num = ['python', 'java', 'c', 'php', 'html', 'c++']
# 利用索引值来完成切片
print(num[0:3])
这里的[0:3],0是起始索引位置,3是终止索引位置,3的位置是终止位置不取,其结果是:
['python', 'java', 'c']
这就是切片,小伙伴明白了吗,能够使用索引值来处理列表的部分元素的操作就是切片哦!!!
切片还有很多的操作哦,看接下来的介绍:
写法:
num[start, end, step]
start:开始切片的位置(包含)
end:结束切片的位置(不包含)
step:间隔数据个数
上面我们讲的是顺序切片,这回我们讲倒叙切片:
num = ['python', 'java', 'c', 'php', 'html', 'c++']
print(num[-2:])
例子解释:倒叙,按循序切片,从倒数第二个开始往后取值,其结果是:
['html', 'c++']
间隔位置切片:
num = ['python', 'java', 'c', 'php', 'html', 'c++']
print(num[1::2])
例子解释:间隔位置切片,从索引位置1开始取值,途中每隔两个取一个当前值
列表旋转:
num = ['python', 'java', 'c', 'php', 'html', 'c++']
print(num[::-1])
例子解释:顾名思义就是将列表旋转倒过来打印出来,其结果是:
['c++', 'html', 'php', 'c', 'java', 'python']
接下来就是我么的一个小实战:
num = ['python', 'java', 'c', 'php', 'html', 'c++']
print(num[4:1:-1])
在这里,可以举一反三的去思考思考,自己也可以举例然后使用切片去将列表中想要打印的元素打印出来!
解释:因为列表的操作,-1将列表旋转,然后从索引值1的位置开始取值,到索引值4的位置,但是4不取,因为4的位置是终止位置。
接下来我们就开始进入下一个实用例子,遍历切片:
num = ['python', 'java', 'c', 'php', 'html', 'c++']
for num_first in num[:3]:
print(num_first)
遍历切片,其实就是使用for循环去循环我们想要打印列表中的部分元素哦。num[:3]就是前三个元素,然后我们定义一个变量num_first,去循环前三个元素,最后打印我们定义的变量。
遍历切片,不懂的小伙伴也可以理解为循环想要输出的元素。
上述例子看不明白的看看下面这个例子,清安将上面的多定义了一个变量,便于小伙伴理解怎么回事哦!
num = ['python', 'java', 'c', 'php', 'html', 'c++']
# 定义一个变量,接受我们想要输出的部分元素,也是就切片部分
num_list = num[:3]
for num_first in num_list:
print(num_first)
复制一个列表:
创建一个始于第一个元素,终于最后一个元素的切片,就是我们想要复制的列表,即副本
num = ['python', 'java', 'c', 'php', 'html', 'c++']
number = num[:]
print(number)
我们先定义一个变量使其等于已经定义的num列表切片,这个切片的写法就是num[:],然后我们输出number变量,就可以看到原列表的副本啦,就是我们所要的复制列表!!!