python基础-列表

目录

一、组织列表

1.1、sort()对列表进行永久排序(按照字母的顺序进行排列)

1.2、sorted()临时排序

 1.3、反转列表 reverse()

1.4、快速获取列表长度 len()

作业:

相处至少5个你渴望去旅游的地方

二、操作列表

2.1、遍历整个列表

三、创建数值列表

3.1、使用函数range()

3.2使用range()创建数字列表

3.3、对数字列表执行简单的统计计算 min max sum

3.4 切片

​ 3.5、遍历切片

3.6、复制列表

四、元祖

作业



一、组织列表

1.1、sort()对列表进行永久排序(按照字母的顺序进行排列)

python基础-列表_第1张图片

 相反的排序

python基础-列表_第2张图片

1.2、sorted()临时排序

保留列表元素原来的排列顺序,同时以特定的顺序呈现

python基础-列表_第3张图片

相反的顺序

python基础-列表_第4张图片

 1.3、反转列表 reverse()

python基础-列表_第5张图片

 ps:reverse()不是按与字母顺序相反的顺序排列列表元素,只是反转排列顺序,方法是永久的修改顺序,但可以随时恢复到原来的顺序,只需要对列表进行再次reverse()即可。

1.4、快速获取列表长度 len()

python基础-列表_第6张图片

作业:

相处至少5个你渴望去旅游的地方

1、将这些地方存储在一个列表中,并确保其中的元素不是按照字母顺序排列的。

2、按原始排列顺序打印列表。

3、使用sorted()按照字母顺序打印这个列表,同时不要修改它。

4、再次打印该列表,合适排列顺序未变

5、使用sorted()按照字母顺序相反的打印这个列表,同时不要修改它。

6、再次打印该列表,顺序未发生改变

7、使用reverse()修改列表元素的排列顺序,打印列表,核实排列顺序确实变了。

8、使用reverse()再次修改列表元素的顺序,打印列表,核实已恢复到原来的排列顺序。

9、使用sort()修改该列表,使其元素按照字母顺序排列,打印该列表,核实顺序确实变了。

10、使用sort()修改该列表,使其元素按照字母反向顺序排列,打印该列表,核实顺序确实变了。

python基础-列表_第7张图片

city = ['xian', 'lijiang', 'shanghai', 'chongqing', 'xinjiang']
print(city) #打印最原始的列表
sorted(city)
print(city) #不改变原来的顺序
sorted(city, reverse=True)
print(city)#反向打印,并且不影响原来的顺序
city.reverse()
print(city) #使用reverse()修改列表元素的排列顺序
city.reverse()
print(city)  #核实已恢复到原来的排列顺序
city.sort()
print(city) #使用sort()修改该列表,使其元素按照字母顺序排列
city.sort(reverse=True)
print(city) #使用sort()修改该列表,使其元素按照字母反向顺序排列

1.5、检索

python中检索从0开始

取最后一个元素,可使用索引-1,反转列表元素,可使用 列表[::-1]

python基础-列表_第8张图片

仅当列表为空时,这种访问最后一个元素的方式会导致错误 python基础-列表_第9张图片

二、操作列表

2.1、遍历整个列表

定义一个for循环,让python从列表Citys中取出一个名字,并将其与变量city关联,最后让python打印前面赋值给变量city名字。重复执行将citys的每个城市名字打印出来。

python基础-列表_第10张图片

 2.2、for循环的更多操作

针对每个人城市,打印一条消息

python基础-列表_第11张图片

在for语句后面,每个缩进都是循环的一部分,两个语句都缩进了,因此针对列表中的每个城市都执行一次,调用print中的换位符号'\n'再次迭代结束后插入一个空行,看起来更整洁。

python基础-列表_第12张图片

for循环中,想包含多少行代码都可以。 

2.3、在for循环结束后执行一些操作

for循环后面,没有缩进的代码都只执行一次。

python基础-列表_第13张图片

作业 :

练习1:想出至少三种你喜欢的水果,将其名字存储在一个列表中。在用for循环打印出来。

1、修改这个for循环,使其打印包含水果名称的句子,比如i like apple apple.

2、在程序末尾添加一行代码,它不在for循环中,指出你有多喜欢水果,输出应包含针对每种蔬果消息,还有一个总结性句子。比如 i really love fruit!

python基础-列表_第14张图片

 代码:

fruits = ['apple', 'banana', 'orange']
for fruit in fruits:
    print(f'i like {fruit.title()}!')
    print(f'i really love {fruit.title()}.\n')

print('i really love fruits')

三、创建数值列表

3.1、使用函数range()

for vaule in range(1, 5):
    print(vaule)输出结果为1-4

python基础-列表_第15张图片

range()函数也可指定一个函数,这样它从0开始,如range(6),返回1-5

python基础-列表_第16张图片

3.2使用range()创建数字列表

创建数字列表,可使用list()将range()的结果直接转换为列表。

python基础-列表_第17张图片

 第三个参数可以指定步长,打印1-10中的偶数, 函数range()从2开始数,然后不断加2,直到达到终值。

python基础-列表_第18张图片

整数1-10的平方

创建一个numbers的空列表,使用函数range()让python遍历1-10的值,再循环中,计算当前值的平方,并将结果赋给变量s。然后将新计算得到的平方值附加到列表numbers的末尾,最后循环结束,打印。

python基础-列表_第19张图片

为了代码更简洁,可不使用临时变量s,而是直接将每个计算得到的值附加到列表末尾。

python基础-列表_第20张图片

列表解析(列表推导式)

python基础-列表_第21张图片

3.3、对数字列表执行简单的统计计算 min max sum

python基础-列表_第22张图片

 作业:

1、通过给函数range()指定第三个参数来创建一个列表,其中包含1-20的奇数,在使用一个for循环将这些数打印出来

for i in range(1,21,2):
    print(i)

2、将同一个数乘三次称为立方,创建一个列表,其中包含前10个整数(1-10)的立方,在使用一个for循环打印出来

numbers = []
for i in range(3, 31):
    numbers.append(i**3)
print(numbers)

python基础-列表_第23张图片

3、使用列表解析生成一个列表,其中包含前10个整数的立方。

python基础-列表_第24张图片

3.4 切片

创建切片,可指定要使用的第一个元素和最后一个元素的索引。python在到达第二个索引之前的元素后停止。

python基础-列表_第25张图片

如果没有第一个索引,python自动从列表开头开始,如果没有结尾索引位,python自动到结尾

python基础-列表_第26张图片

负数索引返回离列表末尾相应距离的元素,因为你可以输出列表末尾的任意切片。

python基础-列表_第27张图片 3.5、遍历切片

用于遍历列表中的部分元素

python基础-列表_第28张图片

3.6、复制列表

复制列表可创建一个包含整个列表的切片,方法是同时省略起始索引和终止索引([:]),整个列表的副本,为了验证,可在每个表里加入不同内容。

python基础-列表_第29张图片

 作业:选择你在本章编写一个程序,在末尾添加几行代码,以完成如下任务。

1、打印消息‘the first three items in the list are’,在使用切片来打印列表中的前三个元素

2、 打印出中间三个元素

3、打印出末尾三个元素

python基础-列表_第30张图片

作业:创建列表副本,将其赋值给new_city,在完成以下任务

1、在原来的数据新增

2、在新列表中新增

3、核实不同的列表。打印消息‘原来的列表是’,在用一个for循环来打印第一个列表。打印消息‘新的列表是’在使用一个for循环来打印第二个列表。核实新增的城市添加到了正确的列表中。(感觉这块写的不对

python基础-列表_第31张图片

四、元祖

列表适用于存储在程序运行期间可能变化的数据集。列表是可以修改的,不可变的列表被称为元组。元祖是用逗号标识的。

python基础-列表_第32张图片

 修改元组的变量,将一个新元组关联到变量tu,然后打印新的元组,不回报错,给元组变量重新赋值是合法的。

python基础-列表_第33张图片

如果需要存储的一组值在程序的整个生命周期内都不变,就可以使用元组。

作业

1、 有一家自助,只提供五种食物,请列出,并将其存在一个元组中。

2、使用一个for循环将该餐馆提供的五种食物名称打印出来。

3、尝试修改其中一个元素,核实python确实会拒绝你这么做。

4、餐厅调整了菜单,给元组变量赋值,并使用一个for循环将新元组的每个元素打印出来。

python基础-列表_第34张图片

Restaurant = ('鸡', '鸭', '鱼', '虾', '水果')
for i in Restaurant:
    print(i)
# Restaurant[0] = '饮料' #修改元组
Restaurant = ('鸡', '鸭', '鱼', '蛋糕', '糖果')
for i in Restaurant:
    print(i)

欢迎大家一起学习

你可能感兴趣的:(python,python,排序算法,开发语言)