列表的操作

# 操作列表
# 1、循环遍历列表
# 使用for in 遍历循环整个列表
# 注意在for循环中使用到的缩进,这在python中是必需的
groups1 = ["唐僧", "孙悟空", "猪八戒", "沙僧", "小白龙"];
for element in groups1:
    print(element);

# 2、创建数字列表
# 2.1 使用函数range()
# 函数range()将输出从指定的第一个值开始数,直到第二个值为止,但是不包括第二个值
for value in range(1, 5):
    print(value);  # 只输出1、2、3、4,不包括5
# 2.2 使用range()创建数字列表
# 即使用函数list()将range()的结果转换成一个列表
numbers = list(range(1, 5));
print(numbers);
# 函数range()还可以指定步长
even_numbers = list(range(2, 11, 2));  # 打印1~10内的偶数,函数range()从2开始数,然后不断地加2,直到超过终值
print(even_numbers);
# 2.3 获取最大值、最小值及总和
# 获取最大值的函数是max();获取最小值的函数是min();获取总和的函数是sum()
numbers2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0];
print("最大值:" + str(max(numbers2)));  # 打印最大值
print("最小值:" + str(min(numbers2)));  # 打印最小值
print("总和:" + str(sum(numbers2)));  # 打印总和
# 2.4 列表解析
# 使用首先需要指定一个描述性的列表名如squares,然后指定一个左方括号,并定义给表达式,用于生成要存储到列表中的值
squares = [num ** 2 for num in range(1, 11)];  # 1~10每个数的平方
print(squares);

# 3、切片
# 3.1 切片
# 指定列表中要‘切’的第一个元素和最后一个元素
# 索引从0开始,包含第一个但是不包括最后一个
# 如果没有指定第一个索引,python将自动从列表开头开始
# 如果没有指定末尾索引,python将自动从起始索引到列表末尾
# 切片也可以从列表末尾的元素开始
groups2 = ["唐僧", "孙悟空", "猪八戒", "沙僧", "小白龙"];
print(groups2[1:4]);  # 打印第2~4个元素
print(groups2[:4]);  # 打印第1~4个元素
print(groups2[1:]);  # 打印第2~5个元素
print(groups2[-3:]);  # 打印最后三个元素
# 3.2 遍历切片
# 遍历切片使用for循环
for g in groups2[:4]:
    print(g);
# 3.3 复制列表
# 创建一个包含整个列表的切片,方法是同时省略起始索引和终止索引([:])。
groups3 = ["唐僧", "孙悟空", "猪八戒", "沙僧", "小白龙"];
copy_group3 = groups3[:];  # 复制列表
print("原列表:");
print(groups3);
print("复制列表:");
print(copy_group3);

# 4、元组
# 4.1 定义元组
# python将不能修改的值称为不可变的,而不可变的列表被称为元组
# 元组的结构和列表看起来有些类似,但是元组是使用圆括号而不是方括号
# 元组也可以使用索引来访问其元素,就像访问列表元素一样
scores=(60,55,89);# 这是一个成绩元组,分别是语文\数学\英语分数
print("语文分数:"+str(scores[0])+"\t数学分数:"+str(scores[1])+"\t英语分数:"+str(scores[2]));
# 4.2 遍历元组
# 可以使用for循环遍历元组内的所有元素
groups4 = ("唐僧", "孙悟空", "猪八戒", "沙僧", "小白龙");
for ele in groups4:
    print(ele);
# 4.3 修改元组变量
# 虽然不能修改元组的元素,但可以给存储元组的变量赋值
scores2=(60,55,89);# 这是一个成绩元组,分别是语文\数学\英语分数
print(scores2);
scores2=(99,99,99);# 重新给这个元组赋值
print(scores2);
# 注意:如果需要存储的一组值在程序的整个生命周期内都是不变的,即可使用元组

运行结果如下:

唐僧
孙悟空
猪八戒
沙僧
小白龙
1
2
3
4
[1, 2, 3, 4]
[2, 4, 6, 8, 10]
最大值:9
最小值:0
总和:45
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
['孙悟空', '猪八戒', '沙僧']
['唐僧', '孙悟空', '猪八戒', '沙僧']
['孙悟空', '猪八戒', '沙僧', '小白龙']
['猪八戒', '沙僧', '小白龙']
唐僧
孙悟空
猪八戒
沙僧
原列表:
['唐僧', '孙悟空', '猪八戒', '沙僧', '小白龙']
复制列表:
['唐僧', '孙悟空', '猪八戒', '沙僧', '小白龙']
语文分数:60	数学分数:55	英语分数:89
唐僧
孙悟空
猪八戒
沙僧
小白龙
(60, 55, 89)
(99, 99, 99)