python列表的增删改查【python保姆级-基础第六天】

什么是列表List

1.列表是Python中最基本的数据结构

2.可以把列表想象成一个容器,里面有序的存放着元素,每个元素都有一个下标(序号),下标从0开始,第一个元素下标是0,第二个下标序号是1  以此类推···

3.初学者可以把列表想象成一个字符串,不过二者逻辑完全不同,想象成字符串只是为了方便理学习

创建一个列表

使用 中括号[ ] 来创建列表

列表里面可以存放任意类型元素,且可以嵌套列表

my_list = []# 创建一个空列表
my_list = [1, 2, 'string', True, ['list']]# 列表中可以存放任意类型的元素

访问列表

列表访问有两种:索引和切片

通过索引访问列表

my_list = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']# 创建列表
print(my_list)# 输出['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] 
print(my_list[0])# 输出a(因为第一个元素的下标是0)
print(my_list[1])# 输出b(因为第二个元素的下标是1)
print(my_list[2])# 输出c(因为第三个元素的下标是2)
# 通过负值下标获取元素
print(my_list[-1])# 输出i(-1代表最后一个元素)
print(my_list[-2])# 输出h(-2代表倒数第二个元素)
print(my_list[-0])# 输出a(-0还是0,所以输出a)

通过切片访问列表

切片格式:my_list[开始下标:结束下标:步长]

注意:切片为左闭右开区间,开始下标的值可以获取到,结束下标的值无法获取到

my_list = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']# 创建列表
# 使用负值下标进行切片
print(my_list[-2:])# 输出['h', 'i'],从倒数第二个输出到最后
print(my_list[-2:0:-1])# 输出['h', 'g', 'f', 'e', 'd', 'c', 'b'],倒序输出 倒数第二个输出到第二个
print(my_list[-2:-7:-1])# 输出['h', 'g', 'f', 'e', 'd'],倒序输出 倒数第二个输出到第六个
print(my_list[-7:-2:1])# 输出['c', 'd', 'e', 'f', 'g'],正序输出 倒数第七个输出到倒数第三个
print(my_list[::-1])# 输出['i', 'h', 'g', 'f', 'e', 'd', 'c', 'b', 'a'],将整个列表翻转

插入元素

my_list = ['a', 'b', 'c', 'd']# 创建列表
my_list.append('append')# 在列表末尾追加元素
print(my_list)# 输出['a', 'b', 'c', 'd', 'append']
my_list.insert(0, 'insert0')# 在列表头部插入元素
print(my_list)# 输出['insert0', 'a', 'b', 'c', 'd', 'append']
my_list.insert(2, 'insert2')# 在指定位置(下标2)的前面插入元素
print(my_list)# 输出['insert0', 'a', 'insert2', 'b', 'c', 'd', 'append']
my_list.extend(['ex', 'te', 'nd'])# 将对象中的所有个元素 追加到尾部
print(my_list)# 输出['insert0', 'a', 'insert2', 'b', 'c', 'd', 'append', 'ex', 'te', 'nd']

删除元素

my_list = ['a', 'b', 'c', 'd']# 创建列表
del my_list[0]# 删除下标0的元素
print(my_list)# 输出['b', 'c', 'd'] 
del my_list[0:2]# 删除0-2切片区间的元素
print(my_list)# 输出['d']
del my_list# 删除整个列表
my_list = ['a', 'b', 'c', 'd']
print(my_list.pop())# 移除最后一个元素,并输出最后一个元素dprint(my_list.pop(2))# 移除指定位置元素,并输出指定位置元素cmy_list.remove('a')# 移除指定元素print(my_list)# 输出['b']

修改元素

my_list = ['a', 'b', 'c', 'd']# 创建列表
my_list[0] = 'aa'# 修改下标0的元素
print(my_list)# 输出['aa','b', 'c', 'd']

公众号:嘿python

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个简单的 Python 图书管理系统的增删改查操作示例,使用了字典作为数据存储方式: ```python # 初始化图书列表 books = [{'id': '001', 'title': 'Python 编程基础', 'author': '张三', 'price': 36.5}, {'id': '002', 'title': 'Python 编程进阶', 'author': '李四', 'price': 45.0}, {'id': '003', 'title': 'Python 数据分析', 'author': '王五', 'price': 55.0}, {'id': '004', 'title': 'Python 机器学习', 'author': '赵六', 'price': 68.0}] # 定义函数:查询图书信息 def query_book(): book_id = input('请输入图书编号:') for book in books: if book['id'] == book_id: print('图书编号:', book['id']) print('图书名称:', book['title']) print('图书作者:', book['author']) print('图书价格:', book['price']) return print('未找到该图书!') # 定义函数:添加图书信息 def add_book(): book = {} book['id'] = input('请输入图书编号:') book['title'] = input('请输入图书名称:') book['author'] = input('请输入图书作者:') book['price'] = float(input('请输入图书价格:')) books.append(book) print('添加图书成功!') # 定义函数:修改图书信息 def update_book(): book_id = input('请输入要修改的图书编号:') for book in books: if book['id'] == book_id: book['title'] = input('请输入新的图书名称:') book['author'] = input('请输入新的图书作者:') book['price'] = float(input('请输入新的图书价格:')) print('修改图书成功!') return print('未找到该图书!') # 定义函数:删除图书信息 def delete_book(): book_id = input('请输入要删除的图书编号:') for book in books: if book['id'] == book_id: books.remove(book) print('删除图书成功!') return print('未找到该图书!') # 主函数 while True: print('欢迎使用图书管理系统') print('1. 查询图书信息') print('2. 添加图书信息') print('3. 修改图书信息') print('4. 删除图书信息') print('0. 退出系统') choice = input('请输入操作编号:') if choice == '1': query_book() elif choice == '2': add_book() elif choice == '3': update_book() elif choice == '4': delete_book() elif choice == '0': break else: print('输入有误,请重新输入!') ``` 该图书管理系统使用了一个字典列表 `books` 来存储图书信息,包含图书编号、图书名称、图书作者和图书价格四个字段。其中,查询、添加、修改和删除图书信息分别对应了 `query_book()`、`add_book()`、`update_book()` 和 `delete_book()` 四个函数,根据用户输入的操作编号进行调用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值