一、元素分类
有如下值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存到字典的第一个key中,将于小于66的值保存至第二个key的值中。
li = [11,22,33,44,55,66,77,88,99,90]
dic ={
"k1":[],
"k2":[],
}
for i in li:
if i <= 66:
dic['k1'].append(i)
else:
dic['k2'].append(i)
print(dic)
二、查找查找列表中元素,移动空格,并查找a或A开头并且以c结尾的所有元素。
li = ["alec"," aric","Alex","Tony","rain"]
tu ={"alec"," aric","Alex","Tony","rain"}
dic={"k1":"alex","k2":"aric","k3":"Alex","k4","Tony"}
# li = ["aleb"," aric","Alex","Tony","rain"]
# tu =("aleb"," aric","Alex","Tony","rain")
# dic = {"k1":"alex","k2":"aric","k3":"Alex","k4":"Tony"}
# for i in li:
# new_i = i.strip()
# #if判断的顺序,从前到后
# if (new_i.startswith('a') or new_i.startswith('A')) and new_i.endswith('c'):
# print(i)
# for i in tu:
# new_i = i.strip()
# #if判断的顺序,从前到后
# if (new_i.startswith('a') or new_i.startswith('A')) and new_i.endswith('c'):
# print(i)
# for i in dic.values():
# new_i = i.strip()
# #if判断的顺序,从前到后
# if (new_i.startswith('a') or new_i.startswith('A')) and new_i.endswith('c'):
# print(i)
三、输出商品列表,用户输入序号,显示用户选中的商品
商品 li = ["手机","电脑","鼠标","键盘"]
li = ["电脑","鼠标","u盘",'键盘']
for key,item in enumerate(li):
print(key+1,item)
inp = input("请输入商品:")
#字符串转换为int
inp_num = int(inp)
len_li = len(li)
if inp_num > 0 and inp_num <= len_li:
print(li[inp_num-1])
else:
print("商品不存在")
四、购物车
功能要求:
a要求用户输入总资产,例如2000
b显示商品列表,让用户根据序号选定商品,加入购物车
c购买,如果商品总额大于总资产,提示账户余额不足,否则购买成功。
d附加:可充值、某商品移除购物车
第一种解法(购物车list)
asset_all = 0
car_list = []
i1 = input("请输入总资产")
asset_all = int(i1)
goods = [
{"name":"computer","price":1999},
{"name":"mouse","price":10},
{"name":"boel","price":20},
{"name":"beauty","price":998},
]
for i in goods:
print(i['name'],i['price'])
while True:
i2 = input('plz input your goods(Y/y结算):')
if i2.lower() == "y":
break
for j in goods:
if j['name'] == i2:
car_list.append(j)
all_price = 0
for item in car_list:
p = item['price']
all_price = all_price + p
print(asset_all,all_price)
if all_price > asset_all:
print('you dont have enogh money')
else:
print("OK")
五、用户交互,三级联动
dic = {
"湖北":{
"黄冈":["黄梅","蕲春","武穴"],
"武汉":["武昌","汉口","汉阳"]
},
"江西":{
"南昌":["南昌","永昌","撒旦"],
"九江":["永修","庐山","浔阳"]
},
"浙江":{
"杭州":["绍兴","诸暨","梧桐"],
"宁波":["鄞州","和江南","的算法"]
},
}
#循环输出所有省
for x in dic:
print(x)
i1 = input("请输入省份:")
a = dic[i1]
for j in a:
print(j)
i2 = input("请输入市:")
b = dic[i1][i2]
print(b)
for z in b:
print(z)