Python学习(003)-列表[]
列表[]
a=['张帅','李四','王五','陈六','黄旗']
print(a[2]) 王五
print(a[1:3]) ['李四','王五'] 左包含,右不包含
print(a[1:]) 默认输出到最后
print(a[1:-1]) 取到最后一个元素的前一个元素
print(a[1::2]) 从左至右,跳一位取值(间隔取值)
print(a[4::-2]) 从右至左,隔一位取值,-表示游标的方向
print(a[-2::-1]) 从右至左,倒数第二位开始取值
#增删改查
#增 切片
append 将值放在最后一位
insert 插入,可插入任何位置
a.append('吴八') 默认插入到最后一位
a.insert(1,'吴八') 插入坐标为1的位置
#修改
a[1]='修改'
a[1:3]=['修改1','修改2']
#删除 3种方式 remove、pop、del
a.remove('a') 内置方法,不可直接删除下标,只能删除内容(以内容的角度进行删除)
a.pop(1) 以下标的角度进行删除,删除后会返回删除的是哪个值
a.clear() 清空整个列表
del a[0] 非列表单独有 按下表删除
del a 删除整个列表
#extend
a=[1,2,3] b=[4,5,6] a.extend(b) # b加入到a列表中
print(a,b)
结果:
[1, 2, 3, 4, 5, 6]
[4, 5, 6]
#reverse 排序方法,将列表翻转
a.reverse() print(a) --------> [3, 2, 1]
#sort 排序,从小到大进行排序
b=[9,0,2,7,1,6,3] b.sort() print(b) --------->[0, 1, 2, 3, 6, 7, 9] c=['b','p','a','c'] c.sort() print(c) ---------->['a', 'b', 'c', 'p']
#查
.count 查元素出现的次数
a=[1,4,3,2,1,3,4,5,6,3,2,1] b=a.count(1) print(b) -------------->3
.index 依据元素获取下标
a=[1,2,3] print(a.index(1)) ------> 0
#判断是否是列表
a[1,2,3,4] b=type(a) is list print(b) --------->True
题目:
购物车程序:salary = 5000 1. iphone6s 5800 2. mac book 9000 3. coffee 32 4. python book 80 5. bicyle 1500 >>>:1 余额不足,-3000 >>>:5 已加入bicyle 到你的购物车, 当前余额:3500 >>>:quit 您已购买一下商品 bicyle 1500 coffee 30 您的余额为:2970 欢迎下次光临 |
答案:
View Code
product_list=[ ('Mac',9000), ('kindle',800), ('tesla',900000), ('python book',105), ('bike',2000), ] saving=input('please input your money:') shopping_car=[] if saving.isdigit(): saving=int(saving) while True: #打印商品内容 for i,v in enumerate(product_list,1): print(i,'>>>>',v) #引导用户选择商品 choice=input('选择购买商品编号[退出:q]:') #验证输入是否合法 if choice.isdigit(): choice=int(choice) if choice>0 and choice<=len(product_list): #将用户选择商品通过choice取出来 p_item=product_list[choice-1] #如果钱够,用本金saving减去该商品价格,并将该商品加入购物车 if p_item[1]<saving: saving-=p_item[1] shopping_car.append(p_item) else: print('余额不足,还剩%s'%saving) print(p_item) else: print('编码不存在') elif choice=='q': print('------------您已经购买如下商品----------------') #循环遍历购物车里的商品,购物车存放的是已买商品 for i in shopping_car: print(i) print('您还剩%s元钱'%saving) break else: print('invalid input')