python实现垃圾分类程序,对于要处理的垃圾,判断该投放到哪个类别的垃圾桶中
一、编程题目
编程题目:输入要处理的垃圾,空格分隔,判断并输出各个垃圾应该投放到哪个类别的垃圾桶中。其中垃圾有以下分类:
废纸、塑料、玻璃、金属、布料、硬纸板属于可回收垃圾。
蔬菜、瓜果、饭菜、花卉、罐头、骨头、油脂类属于厨余垃圾。
废电池、废灯管、废水银温度计、过期药品属于有害垃圾。
卫生用纸、塑料袋、土、一次性餐具、头发、玻璃碎片属于其他垃圾。
垃圾桶的类别和对应的垃圾桶颜色为:
可回收垃圾对应篮色的垃圾桶。
厨余垃圾对应绿色的垃圾桶。
有害垃圾对应红色的垃圾桶。
其他垃圾对应黑色的垃圾桶。
二、输入输出样例
输入样例:
蔬菜 过期药品 废纸 瓜果 塑料 塑料袋 一次性餐具 废灯管 花卉
输出样例:
请将 蔬菜 瓜果 花卉 投入绿色垃圾桶
请将 过期药品 废灯管 投入红色垃圾桶
请将 废纸 塑料 投入蓝色垃圾桶
请将 塑料袋 一次性餐具 投入黑色垃圾桶
三、代码实现
1、定义垃圾分类字典trash
#定义垃圾分类字典
trash={
'可回收垃圾':["废纸","塑料","玻璃","金属","布料","硬纸板"],
'厨余垃圾':["蔬菜","瓜果","饭菜","花卉","罐头","骨头","油脂类"],
'有害垃圾':["废电池","废灯管","废水银温度计","过期药品"],
'其他垃圾':["卫生用纸","塑料袋","土","一次性餐具","头发","玻璃碎片"]
}
2、定义垃圾桶类别和颜色字典
#定义垃圾桶类别和颜色字典
dustbin={'可回收垃圾':'蓝色','厨余垃圾':'绿色','有害垃圾':'红色','其他垃圾':'黑色'}
3、获取用户输入的垃圾,分割为列表,循环判断每种垃圾是什么垃圾,然后放入到字段中
#定义处理结果分类字典
classfy={}name=input("输入你要处理的垃圾,空格分隔:")ls = name.split()for name in ls:for key in trash:if name in trash[key]:classfy[key]= classfy.get(key,[])+[name]
上面重点一句代码就是classfy[key]= classfy.get(key,[])+[name] 其中get方法传了两个参数,第一个参数是字典的key值,第二个值是key值对应的默认value值,因为一开始classfy字典中是没有数据的,如果直接写get(key)取出来的会是None,所以设置默认为一个空的列表。其次注意后面的[name] ,把name的值转为列表,因为只有列表和列表才能相加,相加表示把两个列表的元素放在一个列表中。
4、按照要求格式,输出每种垃圾,应该投放到哪个类别的垃圾桶中
for key in classfy:print('请将',end=' ')for name in classfy[key]:print(name,end=' ')print('投入{}垃圾桶'.format(dustbin[key]))
四、测试