python 基本数据类型练习题
练习题
一、元素分类
有如下值集合 [11,22,33,44,55,66,77,88,99,90],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}
dic= {
"k1":[],
"k2":[]
}
li= [11,22,33,44,55,66,77,88,99,90]
for i in li:
if i<=66:
dic["k1"].append(i)
else:
dic["k2"].append(i)
print (dic)
1.元素分类答案
二、查找
查找列表中元素、移除每个元素的空格、并查找以 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_1=[]
s=0
for i in li:
ret=i.strip() #去掉空格
ret=ret.capitalize() #将首字母变成大写
start=ret.startswith("A")
end=ret.endswith("c")
if start==True and end ==True:
li_1.append(li[s])
else:
pass
s+=1
t=0
for i in tu:
ret=i.lstrip() #去掉空格
ret=ret.capitalize() #将首字母变成大写
start=ret.startswith("A")
end=ret.endswith("c")
if start==True and end==True:
li_1.append(tu[t])
else:
pass
t+=1
for value in dic.values():
ret=value.lstrip()
if ret.startswith("A")==True and ret.endswith("c")==True:
li_1.append(ret)
elif ret.startswith("a" )==True and ret.endswith("c")==True:
li_1.append(ret)
print(li_1)
2.查找
三、输出商品列表,用户输入序号,显示用户选中的商品
商品 li = ["手机", "电脑", '鼠标垫', '游艇']
li = ["手机", "电脑", '鼠标垫', '游艇']
for k,v in enumerate(li,1):
print(k,v)
inp =input("input nunbel:")
inp=int(inp)
if inp >0 and inp<=len(li):
print(li[inp-1])
else:
print("商品不存在")
商品列表
四、购物车
功能要求:
要求用户输入总资产,例如:2000
显示商品列表,让用户根据序号选择商品,加入购物车
购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
附加:可充值、某商品移除购物车
ass_all=input('总资产:')
ass_all= int(ass_all)
car_all =[]
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
for i in goods:
print(i["name"],i["price"])
while True:
i2 = input("请选择商品(Y/y结算):")
if i2.lower() == "y":
break
for j in goods:
if j["name"] == i2 :
car_all.append(j)
print(car_all)
p_all = 0
for p in car_all:
m = p["price"]
p_all+=m
if p_all>0 and ass_all < ass_all :
print("购买成功")
elif p_all==0 :
print("你没有选择商品")
else:
print("余额不足")
购物车程序1
#/usr/bin/env python
#_*_coding:utf-8_*_
total = int(input("总额:"))
all_cat={}
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]
for i in goods:
print (i["name"],i["price"]) #打印出所有商品
while True:
i2 = input("请输入要购买的商品名称(Y/y结算):")
if i2.lower()=="y": #检测用户结算行为
break
#循环所有商品
for i in goods:
if i["name"]==i2:
name = i["name"]
if i2 in all_cat.keys():#判断购买的商品是否在购物车
all_cat[name]={"single_price":i["price"],"num":all_cat[i2]["num"]+1} #在,数量上加1
else:
all_cat[name]={"single_price":i["price"],"num":1} #不在条件入购物车
print(all_cat)
sum= 0
for item in all_cat.values() :
single_all = item["num"]*item["single_price"]
sum+=single_all
if sum <= total:
print("购买成功")
elif sum ==0 :
print("你没有选购商品")
else:
print("余额不足")
购物车程序2
五、用户交互,显示省市县三级联动的选择
dic = {
"河北": {
"石家庄": ["鹿泉", "藁城", "元氏"],
"邯郸": ["永年", "涉县", "磁县"],
},
"河南": {
"开封": ["xx", "ooo", "sss"],
"信阳": ["ccc", "bbb", "aaa"],
},
"山西": {
"],
"],
},
}
for s in dic.keys():
print(s)
x= input("请输入省份:")
b= dic[x]
for v in b.keys() :
print(v)
ds= input("请输入地市:")
xc=dic[x][ds]
for xianc in xc:
print(xianc)
5.三级联动
python 基本数据类型练习题的更多相关文章
- Python:程序练习题(二)
Python:程序练习题(二) 2.1温度转换程序. 代码如下: t=input("请输入带符号的温度值(如:32C):") if t[-1] in ["C", ...
- python基本数据类型以及基础运算符
今日分享内容 作业讲解 python基本数据类型 与用户交互 格式化输出 基本运算符 多种赋值方式 逻辑运算符 成员运算符 分享内容详细 # 附加练习题(提示:一步步拆解) # 1.想办法打印出jas ...
- python 基本数据类型分析
在python中,一切都是对象!对象由类创建而来,对象所拥有的功能都来自于类.在本节中,我们了解一下python基本数据类型对象具有哪些功能,我们平常是怎么使用的. 对于python,一切事物都是对象 ...
- python常用数据类型内置方法介绍
熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...
- 闲聊之Python的数据类型 - 零基础入门学习Python005
闲聊之Python的数据类型 让编程改变世界 Change the world by program Python的数据类型 闲聊之Python的数据类型所谓闲聊,goosip,就是屁大点事可以咱聊上 ...
- python自学笔记(二)python基本数据类型之字符串处理
一.数据类型的组成分3部分:身份.类型.值 身份:id方法来看它的唯一标识符,内存地址靠这个查看 类型:type方法查看 值:数据项 二.常用基本数据类型 int 整型 boolean 布尔型 str ...
- Python入门-数据类型
一.变量 1)变量定义 name = 100(name是变量名 = 号是赋值号100是变量的值) 2)变量赋值 直接赋值 a=1 链式赋值 a=b=c=1 序列解包赋值 a,b,c = 1,2,3 ...
- Python基础:八、python基本数据类型
一.什么是数据类型? 我们人类可以很容易的分清数字与字符的区别,但是计算机并不能,计算机虽然很强大,但从某种角度上来看又很傻,除非你明确告诉它,"1"是数字,"壹&quo ...
- python之数据类型详解
python之数据类型详解 二.列表list (可以存储多个值)(列表内数字不需要加引号) sort s1=[','!'] # s1.sort() # print(s1) -->['!', ' ...
随机推荐
- XJOI1652Matrix67的情书
Matrix67的情书 恺撒大帝曾经使用过这样一种加密术:对于明文中的每个字母,恺撒大帝会用它后面的第t个字母代替.例如,当t=3时,字母A将变成C,字母B将变成D,--,字母Y将变成A,字母Z将变成 ...
- 老李分享:《Linux Shell脚本攻略》 要点(一)
老李分享:<Linux Shell脚本攻略> 要点(一) 第一章:Shell起步基础 1.变量:在bash中,每一个变量的值都是字符串.无论你给变量赋值时,有没有使用引号,值都会以字符 ...
- Java集合总结系列2:Collection接口
Collection 接口是 Java 集合类的一个根接口,Java 在 Collection 接口中定义了许多通用的数据操作类方法以及判断类方法. 通过查看 API 文档或源码的方式,我们可以了解到 ...
- (转)Java并发编程:并发容器之ConcurrentHashMap
下面这部分内容转载自: http://www.haogongju.net/art/2350374 JDK5中添加了新的concurrent包,相对同步容器而言,并发容器通过一些机制改进了并发性能.因为 ...
- Java并发编程:volatile 关键字
转自:http://www.cnblogs.com/aigongsi/archive/2012/04/01/2429166.html 其实Java语言是支持多线程的,为了解决线程并发的问题,在语言内部 ...
- 对比字节流和字符流,回答为什么FileReader不能用来拷贝图片
FileReader是输入字符流,拷贝文件没问题,但拷贝图片就有问题了. 假设是在windows下,FileReader用的是GBK码表,一个字符最多用2个字节代表.2个字节就是2的16次方,即有65 ...
- 跟着刚哥梳理java知识点——数组(七)
数组:数组是多个相同类型数据类型的集合,实现对这些数据的统一管理. 元素:数组中的元素可以是任何数据类型,包括基本数据类型和引用类型. 特点:属于引用类型,数组型数据是对象object,数组中的每个元 ...
- 实现全局同一编码:Filter
request.setCharacterEncoding("UTF-8");只对POST方式提交有用 对于GET方式 ,可以有装饰模式和适配器模式,对获取参数的函数进行重写. 对所 ...
- NOIP2009T3最优贸易
洛谷传送门 看到这个题,原本想先从后往前dfs,求出能到终点的点,再在这些点里从前往后spfa,用一条边上的两个城市的商品价格的差来作边权,实施过后,发现图中既有负边权,又有回路,以及各种奇奇怪怪的东 ...
- Eclipse默认编码设置
eclipse 默认编码居然是GBK,js文件默认编码是ISO-....怎么可以这样呢?都修改成UTF8的方法:1.windows->Preferences...打开"首选项" ...