Python列表与元组

AzMark2020-10-15 16:36:39

阅读文本大概需要 4.8 分钟

写在前面

经过一周的学习与试错,到现在基本上已经能够熟练掌握公众号的各项功能以及排版上的一些技巧了。从开始时的笨手笨脚,到现在略微的小有成就,说明其实每一天都在进步。


也许每一天的进步看起来可能微乎其微,但是坚持下来呢?如果以月、以年、以一生为单位的话会怎样呢?


今天在这里立个flag,一方面督促自己更好地坚持创作分享,和大家一起见证此公号的成长;另一方面也希望能给大家带来一些思考,开始着手于做自己感兴趣的事情。


分享给大家一句话:「当你决定好要做一件事情的时候那就开始吧,不论刚起步的姿势多么难看,多么踉踉跄跄,迈出去你就能看到更大的世界,你就能在前进的道路上更好地调整自己,过程可能漫长艰辛,但其中并不缺乏美好与惊喜。」


这是我这几天感触最深的一点,所以希望大家朝着自己的兴趣勇敢地迈出第一步吧,趁年轻,多努力,多试错。「Just do it !」


接下来开始今天的学习,昨天分享了Python字符串与循环的知识,今天我们来学习列表与元组的使用。另外,昨天已经有几位读者与我讨论了练习题的答案,这是一种很好的学习状态,学以致用,才能学有所成,所以欢迎大家积极地留言打卡,练习题的答案可以私发我,一起交流指正,共同提升。


01

代码块与笔记


列表 list


1
列表简介


  • 列表是有序的序列,可以包含任意的Python数据类型,如字符串、数字、布尔、列表、元组等

  • 列表的数据是可变的,我们可通过对象方法对列表中的数据进行增加、修改、删除、排序等操作


2
常用操作


  • 定义与遍历列表、存储的数据类型与索引、组合、重复、截取、包含、增删改查、长度、最值、排序等


1定义与遍历列表


# 定义列表

list1 = [1, 2, 3, 4, 5]

# 遍历列表

for i in list1:
   print(i)


2存储的数据类型与索引


list2 = [1, "2", True, [1, 2], (1, 2)]

# 索引从0开始,注意不要越界

print(list2[3])  # 结果:[1, 2]


 组合、重复、截取、包含2


list1 = [1, 2, 3, 4, 5]
list2 = [1, "2", True, [1, 2], (1, 2)]

# 列表组合

list3 = list1 + list2
print(list3)

# 列表重复

print(list1 * 3)

# 截取,包含头不包含尾

print(list1[2:4])  # [3, 4]

# 判断元素是否在列表中

print(1 in list1)  # True


4添加,清楚两种方式区别


list2 = [1, "2", True, [1, 2], (1, 2)]

# 将集合作为一个整体加入

list2.append([3, 4, 5])

print(list2[5])  # [3, 4, 5]

# 将集合中的每一个元素添加进去

list2.extend([6, 7, 8])

print(list2[6])  # 6

print(list2[8])  # 8


4删除、清空


list2 = [1, "2", True, [1, 2], (1, 2)]

# 移除指定下标对应的元素

pop = list2.pop(2)

print(pop)  # True

# 移除对应元素

list2.remove(1)

print(list2[0])  # 2

# 清空列表

list2.clear()

print(list2)  # []

# 删除列表

del list2


6修改与查询


list1 = [1, 2, 3, 4, 5]

# 修改列表

list1[0] = 11

print(list1[0])  # 11

# 通过元素查找下标

# 查找元素3,从下标2到4

i = list1.index(3, 2, 4)

print(i)  # 下标为2


 长度、最值、排序等7


list1 = [1, 2, 3, 4, 5]

# 列表长度

print(len(list1))

# 获取列表中最大值

print(max(list1))  

# 获取列表中最小值

print(min(list1))  

# 倒叙,反转

list1.reverse()
print(list1)

# 排序,升序

list1.sort()
print(list1)

# 查看元素在列表中出现的次数

print(list1.count(1))


 拷贝,清楚两种方式区别8


list1 = [1, 2, 3, 4, 5]

# 浅拷贝
# list1和list2指向同一块内存

list2 = list1
list2[1] = True

print(list1, list2, id(list1), id(list2))

# 深拷贝 内存的拷贝
# list2指向了另一块内存

list2 = list1.copy()
list2[1] = False

print(list1, list2, id(list1), id(list2))


元组tuple


1
元组简介


  • 元组与列表类似,有序序列,不同之处在于元组的元素不能修改

  • 表示上元组使用小括号,列表使用方括号


2
常用操作


  • 元组和列表相似,如:存储的数据类型与索引、组合、重复、截取、包含、最值、长度等属性方法都相同,大家可以在IDE里试一下

  • 由于元组一旦初始化后就不可变,所以添加、删除、修改元组元素、倒叙、排序、清空等方法是没有的的,总结一句话为只要使元组元素发生改变的方法都没有


9创建元组


# 创建只有一个元素的元组

tuple1 = (1,)                  

tuple2 = (False, 2, "Iu", [3, 4, 5])

print(tuple2[3])


10修改元组中元素的元素


# 元组中列表元素的元素可以修改

tuple2 = ("Iu", [3, 4, 5])

# -1 最后一位元素下标

tuple2[-1][2] = 6  

t = tuple2[-1][2] = 6

print(t)  # 6


 列表与元组互转11


l = [1, 2, 3]

t = tuple(l)

# (1, 2, 3)
print(t)

l = list(t)

# [1, 2, 3]
print(l)


02

练习题


今天的练习主要是要求把列表和元组的方法熟练掌握,同时把昨天的练习题再温习一遍,之后我们慢慢会做一些比较难的练习,大家一起加油!


好了,今天的分享就到这了,觉得写得不错的,点赞转发支持下。(同时在这里温馨提醒下,安卓手机代码块可以左右滑动,苹果手机可能不支持,超出屏幕会自动跳到下一行)


原创不易,感谢分享

「点赞是一种态度」