python用字典编写购物程序_day 5 - 2 字典(dict)练习

1. 有如下变量(tu 是个元祖),请实现要求的功能

tu = {"alex",[11,22,{"k1":'v1',"k2":["age","name"],"k3":(11,22,33)},44]}

#1)讲述元祖的特性

子元素不可以被修改,子元素中的子元素可能被修改

#2)请问 tu 变量中的第一个元素 "alex" 是否可被修改?

不可以,是元祖的子元素 不可以被修改

#3)请问 tu 变量中的 "k2" 对应的值是什么类型?是否可以被修改?如果可以,请在

#其中添加一个元素 "seven"

print(tu["k2"],type)

可以

tu[1][2][1].append('seven')

print(tu)

#4)请问 tu 变量中的 "k3" 对应的值是什么类型?是否可以被修改?如果可以,请在

#其中添加一个元素 "seven"

不可以

2. 字典 dic,dic={'k1':"v1",'k2':"v2",'k3':[11,22,33]}

dic = {'k1':"v1",'k2':"v2",'k3':[11,22,33]}

#a. 循环打印输出所有 key

for i in dic.keys():

print(i)

#b. 循环打印输出所有 value

for i in dic.values():

print(i)

#c. 循环打印输出所有 key 和 value

for i in dic.items():

print(i)

#d. 请在字典中添加一个键值对 "k4":"v4" 并输出

dic["k4"] = "v4"

print(dic)

#e. 修改字典中 "k1" 为 "alex" 并输出

dic["k1"] = "alex"

print(dic)

#f. 在字典 "k3" 中 追加一个元素 18 并输出

dic["k3"].append(18)

print(dic)

#g. 在字典中 "k3" 对应的第一个值中插入元素 18 并输出

dic["k3"].insert(0,18)

print(dic)

3. 元素分类

有如下值 li=[11,22,33,44,55,66,77,88,99],将所有大于 66 的值保存至字典的第一个 key 中,将小于 66 的值保存至第二个 key 值中

即:{'k1':大于 66 的所有值列表,"k2":小于 66 的所有值列表}

li=[11,22,33,44,55,66,77,88,99]

dic={}

k1=[]

k2=[]

for i in li:

if i==66:continue

if(i>66):

k1.append(i)

else:

k2.append(i)

dic.setdefault("k1",k1)

dic.setdefault("k2",k2)

print(dic)

4.购物车

输出商品列表,用户输入序号,显示用户选中的商品

商品 li=["手机","电脑","鼠标","游艇"]

要求:

1)页面显示 序号 + 商品名称

如:

1 手机

2 电脑

2)用户输入选择的商品序号,然后打印商品名称

3)如果用户输入的商品序号有误,提示错误并重新输入

4)用户输入 q 或 q,退出程序

while 1:

li=["手机","电脑","鼠标","游艇"]

for i in li:

print("{}\t\t{}".format(li.index(i)+1,i))

num = input("请输入商品序号/输入 q\q 退出:")

if num.isdigit():

num = int(num)

if num > 0 and num <= len(li):

print(li[num-1])

else:print("请输入有效数字")

elif num.upper() == 'q':

break

else:print('请输入数字')

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值