可使用整数作为下标进行访问
+可以实现列表增加元素的目的,但不是原地操作,而是返回新列表,涉及大量元素的复制,效率极低。而使用复合赋值运算符+=实现列表追加元素时属于原地操作。与append()一样高效
类似的乘法运算符也有类似的用法,*表示列表与整数相乘,表重复返回新列表
*=则属于原地操作也用于列表元素重复
[1, 2, 3, 4] * 0 #重复零次,清空列表,相当于clear()
因为Python列表中元素存储的是地址而不是值,当包含子列表的列表进行元素重复时,情况会复杂些
但对于下述情况就没有相互影响
import random #随机分配办公室offices = [[], [], []]names = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H']for name in names:index = random.randint(0, 2)offices[index].append(name)i = 0
for office in offices:print("办公室{0}的人数为:{1}".format(i, len(office)))i += 1for name in office:print(name, end = " ")print()print('-'*20)
print('------ 商品列表 ------')
products = [[0, 'iphone', 6888], [1, 'MacPro', 14800], [2, '小米', 2499], [3, 'Coffee', 31], [4, 'Book', 60], [5, 'Nike', 699]]
i = 0
for product in products:print(str(product[0]) + " " + str(product[1]) + "t" + str(product[2]))i += 1
user = input("请问您需要什么:(请选择编号从0-5)")
shopping_cart = []
while user != 'q':if user in "012345":shopping_cart.append(products[int(user)])else:passuser = input("请问您还需要什么:(请选择编号从0-5)")print("------ 购物清单 ------")
for consume in shopping_cart:print(str(consume[0]) + ' ' + str(consume[1]) + 't' + str(consume[2]))
print('------ 商品列表 ------')
products = [['iphone', 6888], ['MacPro', 14800], ['小米', 2499], ['Coffee', 31], ['Book', 60], ['Nike', 699]]
for i,product in enumerate(products):print(str(i) + " " + str(product[0]) + "t" + str(product[1]))
user = input("请问您需要什么:(请选择编号从0-5)")
shopping_cart = []
while user != 'q':if user in "012345":shopping_cart.append(products[int(user)])else:passuser = input("请问您还需要什么:(请选择编号从0-5)")print("------ 购物清单 ------")
for i,product in enumerate(shopping_cart):print(str(i) + " " + str(shopping_cart[i]))
本文发布于:2024-02-04 12:17:44,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170707039655491.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |