2-2列表,浅copy,小程序购物车
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2-2列表,浅copy,小程序购物车相关的知识,希望对你有一定的参考价值。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#列表
a=[‘aa‘,‘bb‘,‘cc‘,‘dd‘,‘ee‘]
b=a.copy() #复制 ### b=a a变b变。
print(a);print(b) #一样
a[1]=‘ss‘;a.append(‘zz‘)
print(a);print(b)#a变b不变
#循环
for i in b:
print(i)
#切片 步长2
print(a[::2])
print(‘++++++++++++++++++‘)
#浅copy
a=[‘a‘,[‘c‘,100]]
‘‘‘
b=a #第一种#b=a[:]#第二种#c=list(a)#第三种### b=c
import copy
d=copy.copy(a) ###第四种### d=b=c
‘‘‘
#浅copt例 不同账号,相同内容 没啥用
w=a[:];m=a[:]
w[0]=‘nan‘;m[0]=‘nv‘
print(w,m)
w[1][1]=80
print(w,m)
#深copy
import copy
b=copy.deepcopy(a)
print(‘+++++++++++++++++++++++++++‘)
#购物车程序
#1,启动程序,输入工资,打印商品列表
#2,允许用户根据商品编号购买商品
#3,用户选择商品后,检测余额是否够,够直接扣,不够提醒
#4,可随时退出
###1,aa 100 2,bb 200 3,cc 300 #编程,商品,价格
salary=input(‘写出你有多少钱 ‘) #输入工资
shop=[] #购物车
z=[(‘小鸡‘,100),(‘小猫‘,200),(‘小猫‘,300),(‘小虎‘,400),(‘小龙‘,500),] #商品
if salary.isdigit(): #如果是数字,则真。
salary=int(salary) #转换是数字
while True:
for i in z:
print(z.index(i),i)
user=input(‘你要买啥 》》》:‘)
if user.isdigit(): #判断商品号,是否数字
user=int(user)
if user<len(z) and user>-1:#判断商品号,是否有此商品
p=z[user]
if p[1] <=salary: #商品价小于工资,买的起
shop.append(p)
salary-=p[1]
print("你买的 %s into shop,余额\033[31;1m%s\033[0m " % (p,salary))
else:
print("\033[41;1m你只剩[%s]啦,买鸡毛啊\033[0m" % salary)
else:
print("眼不好使是吧?%s没有,别瞎按" % user)
elif user==‘q‘:
print(‘你买了以下东西:‘)
for p in shop:
print(p)
print("你还剩",salary);exit()
else:
print(‘xxx‘)
print(‘------------------‘)
salary=input(‘输入工资: ‘) #输入工资
z=[(‘aa‘,100),(‘bb‘,200),(‘cc‘,300),(‘dd‘,400),(‘ee‘,500),] #商品
if salary.isdigit(): #如果是数字,则真。
salary=int(salary) #转换是数字
while True:
for index,i in enumerate(z): #enumerate 取出下标
print(index,i)
break
#元组,只能切片,只能查,不能修改,不可变。只读
a=(‘a‘,‘b‘,‘c‘)
#程序中,不可变的值
以上是关于2-2列表,浅copy,小程序购物车的主要内容,如果未能解决你的问题,请参考以下文章