図1に示すように、要素の分類
需要:以下セット[11,22,33,44,55,66,77,88,99,90 ......]、最初のキーに66を超えるすべての値は、辞書に格納され、値が66未満でありますの第2のキーに格納されている値
コードの実装:
1つの #は、リスト・ファイルを定義する
2のLi = [11,22,33,44,55,66,77,88,99,90 ]
3つの。 #が定義空の辞書
4。 DIC = { " K1 ":[]、" K2 " 。 []}
5。 ための I でのLi:
6 IF Iは= 66 < :
7 DIC [ ' K1 ' ] .append(I)
8。 他:
。9 DIC [ ' K2 ' ] .append(I)
10 プリント(DIC)
図2に示すように、ブランクの各要素が除去され、要素のリストを検索し、先頭またはAで終わるを見つけ、Cのすべての要素
コードの実装:
リー= [ " aleb "、" ARIC "、" アレックス"、" トニー"、" 雨" ]
#TU =( "アレック"、 "ARIC"、 "アレックス"、 "トニー"、 "雨")もタプル以下の方法を適用
するための I でのLi:
#は、私は、各要素を表し
new_i = i.strip()
#の背面に判断、フロント場合配列;又は、ラインの自動実行と
#が最初に実行し、次に括弧の括弧外行います
IF(new_i.startswith(' A ')、または new_i。STARTSWITH( ' A '))と new_i.endswith(' C ' ):
プリント(I)
#字典
DIC = { " K1 ":" アレックス"、" K2 ":" arlc "、" K3 ":" アレックス"、" K4 ":" トニー" }
のための J でdic.values():
new_j = J。
ストリップ() の場合(new_j.startswith(' A ')又は new_j.startswith(' A '))と new_j.endswith(' C ' ):
プリント(J)
図3に示すように、出力製品リストは、ユーザがシリアル番号を入力し、ユーザは、商品の表示を選択します
コードの実装:
li = ["手机", "电脑", "鼠标垫", "游艇"]
#首先循环商品
for i, j in enumerate(li):
print(i + 1, j)
#用户输入
num = input("请您输入商品编号: ")
#获取索引
num = int(num)
#获取列表的长度
len_li = len(li)
if num > 0 and num <= len_li:
goods = li[num - 1]
print(goods)
else:
print("此商品不存在!")
4、用户交互,显示省市县三级联动的选择
代码实现:
dic = {
"广东": {
"广州": ["天河区", "越秀区", "海珠区"],
"东莞":["长安", "凤岗", "黄江"],
},
"河北": {
"石家庄": ["鹿泉", "元氏", "鹰城"],
"邯郸": ["永年", "涉县", "磁县"],
}
}
#循环输出所有的省
for x in dic:
print(x)
#用户输入省份
i1 = input("请输入省份: ")
a = dic[i1]
#循环输出所有的市
for j in a:
print(j)
#用户输入城市
i2 = input("请输入城市: ")
b = dic[i1][i2]
#循环,将所有的数据打印出来
for z in b:
print(z)
5、购物车
功能需求:
要求用户输入总资产,例如:2000
显示商品列表,让用户根据序号选择商品,加入购物车
购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功
附加:可充值、某商品移除购物车
代码实现方法一:使用列表方式储存购买数量
#定义一个总资产
asset_all = 0
#定义一个购物车列表
car_list = []
num = input('请输入您的总资产: ')
asset_all = int(num)
#所有的商品列表
goods = [
{"name": "电脑", "price": 4999},
{"name": "自行车", "price": 999},
{"name": "耳机", "price": 129},
{"name": "iphone", "price": 10999},
]
for i in goods:
#i,每一个列表的元素,字典
print(i['name'], i['price'])
while True:
g = input('请输入你选择的商品(y结算): ')
if g.lower() == 'y':
break
for j in goods:
if j['name'] == g:
# j = {"name": "电脑", "price": 4999}
car_list.append(j)
#结算
print(car_list)
#定义一个购买总价
all_price = 0
for item in car_list:
p = item['price']
all_price = all_price + p
#总资产与购买总价比较
if all_price > asset_all:
print('您当前的余额不足')
else:
print('购买成功')
代码实现方法二:使用字典方式储存购买数量
#定义一个总资产
asset_all = 0
num = input('请输入您的总资产: ')
asset_all = int(num)
#所有的商品列表
goods = [
{"name": "电脑", "price": 4999},
{"name": "自行车", "price": 999},
{"name": "耳机", "price": 129},
{"name": "iphone", "price": 10999},
]
for i in goods:
#i,每一个列表的元素,字典
print(i['name'], i['price'])
#定义一个购物车字典
car_dict = {}
"""
car_dict = {
"电脑": {'price':单价, num:12}
} """
while True:
g = input('请输入你选择的商品(Y/y结算): ')
#循环所有的商品,查找需要的商品
if g.lower() == 'y':
break
for item in goods:
if item['name'] == g:
# j = {"name": "电脑", "price": 4999}
name = item['name']
#判断购物车是否已经有该商品, 如果有,num + 1
if name in car_dict.keys():
car_dict[name]['num'] = car_dict[name]['num'] + 1
else:
car_dict[name] = {"num": 1, "single_price": item['price']}
#结算,显示购物车里的所有商品
print(car_dict)
#定义一个购买总价
all_price = 0
for k, v in car_dict.items():
#单价
n = v['single_price']
#数量
m = v['num']
#计算每类商品的和
all_sum = m * n
#购买总价
all_price = all_price + all_sum
#总资产与购买总价比较
if all_price > asset_all:
print('您当前的余额不足')
else:
print('购买成功')