300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 88是python语言的整数类型_python基本数据类型练习

88是python语言的整数类型_python基本数据类型练习

时间:2019-12-19 15:40:25

相关推荐

88是python语言的整数类型_python基本数据类型练习

一、元素分类

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

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

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

dic1 = {

'k1':[],

'k2':[]

}

for l in list1:

if l > 66:

dic1['k1'].append(l)

else:

dic1['k2'].append(l)

print(dic1)

二、查找

1、 查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素

li = ["alc", " aric ", "Aex", "Tny", "rain"]

list1 =[]

for l in li:

#使用strip方法确定能寻找到所有元素,startwith,endwith按条件进行查找

if l.strip().startswith('a'or 'A') and l.strip().endswith('c'):

#print(l.strip())

list1.append(l.strip())

print(list1)

2、元组

tu = ("alc", " aric", "Alx", "Tny", "rain")

#找出的元素放到一个新列表中,因为元组中不能增加元素

list2 =[]

for l in tu:

#使用strip方法确定能寻找到所有元素,startwith,endwith按条件进行查找

#if 判断遇到or和and是需要注意执行成功时的判断

if l.strip().startswith('a'or 'A') and l.strip().endswith('c'):

#print(l.strip())

list2.append(l.strip())

print(list2)

3、字典

dic = {'k1': "alx", 'k2': ' aric', "k3": "Alx", "k4": "Tny","k5":" Anc "}

#定义一个空字典

dic1 = {}

for k,v in dic.items():

if (v.strip().startswith('a') or v.strip().startswith('A')) and v.strip().endswith('c'):

print(v)

dic1[k] =v

print(dic1)

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

# 商品

li = ["手机", "电脑", '鼠标垫', '键盘']

for num,v in enumerate(li,1):

print(num,v)

choice = int(input("请选择商品:"))

choice1=choice-1

if choice1>=0 and choice1<=len(li)-1:

print(li[choice1])

else:

print("商品不存在")

四、购物车

# 功能要求:

# 要求用户输入总资产,例如:2000

# 显示商品列表,让用户根据序号选择商品,加入购物车

# 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。

# 附加:可充值、某商品移除购物车

方法一:

goods = [

{"product": "电脑", "price": 1999},

{"product": "鼠标", "price": 10},

{"product": "iphone", "price": 5000},

{"product": "kindle", "price": 998},

]

#已经买到的商品

list_buy = []

#输入总资产

all_money = 0

all_money = int(input("请输入总资产:"))

#输出所有的产品

for key,i in enumerate(goods,1):

print(i['product'],i['price'])

#当条件成立时,在购买环节循环

while True:

#选择需要买的商品

choice = input("请选择商品(y/Y进行结算购买):")

#是否进行结算

if choice.lower() == "y":

break

#循环所有的商品与选择商品进行对比,如果存在,就添加到list_buy中

for v in goods:

if choice == v["product"]:

list_buy.append(v)

#输出所有打算购买的商品

print(list_buy)

#定义商品总价初始值

total_price = 0

for p in list_buy:

#计算所有商品价格

total_price = total_price+p["price"]

if total_price>all_money:

print("你的钱不够,请充值%d元"%(total_price-all_money))

chongzhi = int(input("输入充值金额:"))

all_money +=chongzhi

else:

print("购买成功")

print(list_buy)

方法二:

goods = [

{"product": "电脑", "price": 1999},

{"product": "鼠标", "price": 10},

{"product": "iphone", "price": 5000},

{"product": "kindle", "price": 998},

]

salary = int(input("请输入工资:"))

#dic_shop_cart = {"product":{"price":0,"num":0}}

dic_shop_cart = {}

#循环输出所有产品

for p in goods:

print(p['product'],p['price'])

while True:

choice = input("请选择购买的商品(y/Y进行结算):")

if choice.lower() == 'y':

break

#循环所有商品

for item in goods:

#判断选择的商品是否在所有商品中

if item["product"] == choice:

#如果存在,就把商品赋值给product

product = item["product"]

#如果商品在字典dic_shop_cart中,字典中num就加1

if product in dic_shop_cart.keys():

dic_shop_cart[product]["num"] = dic_shop_cart[product]["num"] + 1

#如果不在,就第一次添加到字典中

else:

dic_shop_cart[product] = {"num":1,"single_price":item["price"]}

print(dic_shop_cart)

sum_price = 0

for k,v in dic_shop_cart.items():

# print(k,v)

t_price = v["single_price"]*v["num"]

print("购买%s的数量为%s:总价为%d"%(k,v["num"],t_price))

sum_price=sum_price+t_price

print("所有商品总价为:%s"%sum_price)

if sum_price>salary:

print("你的钱不够,哈哈哈。。。,别买了吧")

else:

print("购买成功,有钱人啊。。。")

输出结果:

五、用户交互,显示省市县三级联动的选择

dic = {

"河北": {

"石家庄": ["鹿泉", "藁城", "元氏"],

"邯郸": ["永年", "涉县", "磁县"],

},

"北京": {

"大兴": ["黄村", "清源", "天宫院"],

"海淀": ["中关村", "西二旗", "五道口"],

},

"安徽": {

"合肥": ["庐阳", "肥西", "滨湖"],

"安庆": ["桐城", "宜秀区", "岳西"],

}

}

for p in dic:

print(p)

p1 = input("请输入省份:")

if p1 in dic.keys():

for s in dic[p1]:

print(s)

s1 = input("请输入市区:")

if s1 in dic[p1].keys():

for q in dic[p1][s1]:

print(q)

else:

print("市区还没有录入")

else:

print("省份还没有录入")

执行结果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。