關於列表,元組,字典的小練習
元素分類
有如下值集合 [11,22,33,44,55,66,77,88,99,90…],將所有大於 66 的值保存至字典的第一個key中,將小於 66 的值保存至第二個key的值中。
即: {‘k1’: 大於66的所有值, ‘k2’: 小於66的所有值}
def work1():
m_list = [11,22,33,44,55,66,77,88,99,90]
m_dics = {'k1':[],'k2':[]}
for i in m_list:
if i > 66:
m_dics.get('k1').append(i)
elif i < 66:
m_dics.get('k2').append(i)
else:
print("66--->我該去哪")
print(m_dics)
- 查找
查找列表中元素,移除每個元素的空格,並查找以 a或A開頭 並且以 c 結尾的所有元素。
li = [“alec”, ” aric”, “Alex”, “Tony”, “rain”]
tu = (“alec”, ” aric”, “Alex”, “Tony”, “rain”)
dic = {‘k1’: “alex”, ‘k2’: ’ aric’, “k3”: “Alex”, “k4”: “Tony”}
def work2():
li = ["alec", " aric", "Alex", "Tony", "rain"]
tu = ("alec", " aric", "Alex", "Tony", "rain")
dic = {'k1': "alex", 'k2': ' aric', "k3": "Alex", "k4": "Tony"}
for i in li:
i=i.strip()
if(i.title().startswith('A') and i.title().endswith('c')):
print('li',i)
for i in tu:
i=i.strip()
if(i.title().startswith('A') and i.title().endswith('c')):
print('tu',i)
for i in dic:
i=dic[i].strip()
if(i.title().startswith('A') and i.title().endswith('c')):
print('dic',i)
- 輸出商品列表,用戶輸入序號,顯示用戶選中的商品
商品 li = [“手機”, “電腦”, ‘鼠標墊’, ‘遊艇’]
li = ["手機", "電腦", '鼠標墊', '遊艇']
while True:
num = input('''請輸入你要查看的商品標號
1-->手機
2-->電腦
3-->鼠標墊
4-->遊艇''')
if num == 'quit':
break
if(num.isdigit() and int(num) in [1,2,3,4]):
print(li[int(num)-1])
- 購物車
功能要求:
要求用戶輸入總資產,例如:2000
顯示商品列表,讓用戶根據序號選擇商品,加入購物車
購買,如果商品總額大於總資產,提示賬戶餘額不足,否則,購買成功。
附加:可充值、某商品移除購物車
goods = [
{“name”: “電腦”, “price”: 1999},
{“name”: “鼠標”, “price”: 10},
{“name”: “遊艇”, “price”: 20},
{“name”: “美女”, “price”: 998},
]
def work4():
goods = [
{"name": "電腦", "price": 1999},
{"name": "鼠標", "price": 10},
{"name": "遊艇", "price": 20},
{"name": "美女", "price": 998},]
goods_dict={}
for i in goods:
goods_dict[i.get('name')] = i.get('price')
# print(goods_dict)
user_assets = 0
while(user_assets==0):
input_num = input('請輸入你的初始資產: ')
if(input_num.isdigit() and int(input_num)>0):
user_assets = int(input_num)
print('恭喜您擁有%d元初始資產' % user_assets)
m0_tag=True
user_goods={}
while(m0_tag):
goods_num = input('''
請輸入你要購買的商品標號
1-->電腦 價格:1999元
2-->鼠標 價格:10元
3-->遊艇 價格:20元
4-->美女 價格:998元
5-->查看購物車
6-->充值 咱有錢
7-->OK,結賬''')
if(goods_num in ['1','2','3','4']):
m_good_name = goods[int(goods_num)-1].get('name')
m_good_price = goods[int(goods_num)-1].get('price')
if(user_assets < m_good_price):
print('你的餘額已不足購買%s' % m_good_name)
input('''任意鍵-->繼續操作''')
continue
if (m_good_name in user_goods.keys()):
user_goods[m_good_name]=user_goods.get(m_good_name)+1
else:
user_goods[m_good_name]=1
user_assets-=m_good_price
print(user_goods)
print('購買%s成功,剩餘%d元' % (m_good_name,user_assets))
elif(goods_num == '5'):
if user_goods=={}:
print('恭喜您,購物車空空如也')
else:
m5_tag=True
while m5_tag:
for user_good in user_goods:
print('您已購買:%s---->%d件' % (user_good,user_goods.get(user_good)))
print('您的賬戶餘額:%s' % user_assets)
m_select=input('''
1-->繼續購物
2-->刪除已購買商品
''')
if(m_select=='1'):
m5_tag=False
continue
elif(m_select=='2'):
user_del_sel = input('''
請輸入您要刪除商品標號
1-->電腦
2-->鼠標
3-->遊艇
4-->美女
''')
if(user_del_sel in ['1','2','3','4']):
user_del_good = goods[int(user_del_sel)-1].get('name')
user_del_num = user_goods.get(user_del_good)
if(user_del_good in user_goods.keys()):
user_goods.pop(user_del_good)
print('您已刪除:%s-->%d件' % (user_del_good,user_del_num))
print('---------------------------')
user_assets=user_assets+user_del_num*goods_dict.get(user_del_good)
else:
print('您並沒有購買%s' % user_del_good)
elif(goods_num == '6'):
user_assets_add = input('請輸入您要充值的金額: ')
if(user_assets_add.isdigit()):
user_assets+=int(user_assets_add)
print('充值成功,賬戶餘額:%s元' % user_assets)
else:
print('輸入有誤,請重新操作')
elif(goods_num == '7'):
user_cost=0
if user_goods=={}:
print('恭喜您,一毛錢也沒有花,因爲您什麼也沒有購買')
else:
for user_good in user_goods:
print('您已購買:%s---->%d件' % (user_good,user_goods.get(user_good)))
user_cost+=(user_goods.get(user_good)*goods_dict.get(user_good))
print('購買物品的總價爲:%s元' % user_cost)
print('您的賬戶餘額:%s元' % user_assets)
input('''任意鍵-->退出''')
m0_tag = False
break
input('''任意鍵-->繼續操作''')