⑤初识python--python的list列表与tuple元组

python中的列表与元组

一、列表的定义与访问

1、为什么需要列表

列表是数据容器中的一种,允许我们在列表容器中同时保存多个数据元素

如:保存一个学生的名字,可以name = 'Tom'但是如果要保存100位学生的名字呢

2、列表的定义与访问

# names = [元素1,元素2,元素3]  其中的元素可以是任一数据类型
names = ['张三', '李四', '王五']

# 列表的访问
print(names)

# 列表中的元素索引下标默认从0开始
print(names[0], names[1])

3、列表中的遍历访问

for i in names:
    print(i)

i = 0
while i < len(names):
    print(names[i])
    i += 1

二、列表的增、删、改、查

1、查询

len() : 返回数据容器的长度
in方法:判断元素是否在数据容器中
'''
列表名称[索引下标]
len(列表名称):求列表长度(列表中元素的个数),配合while循环实现列表遍历
if 元素 in 数据容器:判断元素是否在数据容器中,返回类型为bool类型
in方法:可以在字符串、列表、元组中使用
'''

# 黑名单
black_ip = ['192.168.23.53', '172.32.89.13', '148.23.78.54']
if '192.168.23.53' in black_ip:
    print('您的IP地址已被锁定,禁止访问!')
else:
    print('您的IP地址正常,可以访问!')

2、增加

append() : 在列表尾部添加元素
+ 加号   : 可以将两个列表合并
list1 = ['刘备', '孙权', '曹操']
list1.append('诸葛亮')
print(list1)

list2 = ['孙策', '孙尚香']
print(list1 + list2)

1694143809697

3、删除

remove() : 根据元素值删除元素
list1 = [10, 20, 30, 40]
list1.remove(20)
print(list1)

1694157845097

4、修改

修改方法:列表名称[索引] = 修改后的值
list1 = ['孙权', '孙策', '刘备']
list1[2] = '孙坚'
print(list1)

1694158552929

三、列表的翻转与排序操作

reverse(): 列表的翻转操作,相当于切片中的[::-1]
sort(reverse = False) : 将列表中的元素从小到大排序,也可以修改参数reverse = True使其降序排序
'''
针对列表中的元素全为数字的:sort() 默认参数为reverse = Flase 升序排序
将sort()中的参数改为 reverse = True 即为降序排序
reverse():列表的翻转操作,相当于切片中的[::-1]
'''

list1 = [7, 8, 4, 6, 9, 3, 5]
list2 = ['刘备', '关羽', '张飞']

list2.reverse()
print(list2)  # reverse()翻转
print(list2[::-1])  # 使用切片[::-1]再次翻转

list1.sort()  # sort() 默认参数为reverse = 'False'
print(list1)

list1.sort(reverse=True)  # 降序排序
print(list1)

1694160511685

四、列表的嵌套

列表的嵌套:即在列表中又出现了列表结构

基本语法:

列表名称 = [[], [], []]
# students = [一班, 二班, 三班]

students = [['Tom', 'Jack', 'Harry'], ['小明', '小鹿', '小蓝'], ['刘备', '关羽', '张飞']]

# 访问原则:先访问外层,再访问内层
print(students[1][1])  # 小鹿

列表与随机数实现点名系统案例

# 点名系统
import random

students = ['刘谦', '莫航', '小七', '马梓']
randnum = random.randint(0, len(students) - 1)
print(students[randnum])

五、元组的定义与访问

1、为什么需要元组

思考:想要多个数据,但是这些数据不能修改,该怎么做?

列表可以一次性存储多个数据,但是列表中的数据允许被修改

使用元组,元组可以存储多个数据且元组内的数据不允许被修改

2、元组的定义

元组的特点:元组使用小括号,且用逗号隔开各个数据,数据可以是不同的数据类型

基本语法:(定义单个数据元组不能省略逗号)

多个数据元组:
tuple1 = (10, 20, 30)

单个数据元组:(逗号不能省略)
tuple2 = (10,)
tuple1 = (10, 20, 30, 40)

# 可以通过while循环或for循环遍历元组
for i in tuple1:
    print(i)

# 也可以通过索引下标输出元组
print(tuple1[1])

3、元组的应用场景

① 函数的参数以及返回值都是元组类型

def func(参数1, 参数2, 参数3):

	return返回值1,返回值2,返回值3

② 格式化字符串,百分号和format,格式化字符串后面的()本质上就是一个元组

print('姓名:%s,年龄:%d,家庭住址:%s' %(name,age,address))

③ python操作mysql数据库,返回结果,默认也是元组类型

④ 让列表不可修改,保护数据的安全

六、元组的相关操作方法

由于元组中的数据不允许修改,所以其操作方法大多为查询方法

编号 函数 作用
1 元组[索引] 根据索引下标查找元素
2 len() 统计元组中的个数
3 in 判断元素是否在元组中
tuple1 = (10, 20, 30, 40)
print(tuple1[1])

print(len(tuple1))

if 50 in tuple1:
    print("50这个元素出现在tuple1元组中")
else:
    print("50这个元素没有出现在tuple1元组中")
posted @   七落安歌  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示