乐于分享
好东西不私藏

Python实战项目:穿衣小助手【附源码】

Python实战项目:穿衣小助手【附源码】

石岛编程周老师:
实战是掌握编程最快的方法,没有之一
放下书本、放下理论,
马上动手做起来。

昨天发了一个C++新手趣味项目:写个“穿衣小助手”,原文链接如下:
C++新手趣味项目:写个“穿衣小助手” 

今天上午有朋友就问能不能写个Python版的,那今天就写个Python版的,
我就喜欢这样的朋友,有什么需求直接说。能做的咱们就做,做不了或没时间的那就不做。

今天写这个Python版穿衣小助手:

1 这个程序尽可能的运用了Python的各种知识点。

融合了Python字符串、列表,字典、函数、推导式等Python重要知识点,
运用了字符串、列表、字典的多种函数。

2 程序文件按步骤分成多个。

程序按实现的功能模块不同,分成了7个步骤,有7个不同的文件。

3 分步视频讲解。

我是边写代码边讲解,顺便就录个屏,
质量呢,肯定没有机构的效果好,但全是真诚、真实的代码书写过程,没有剪辑。
最重要的是,代码的逻辑、BUG的修复

4 免费分享。

获取方式放在文章的最下面,可以免费下载。

一 程序说明

根据天气的温度,让用户计划选择衣服,并判断是否合适,
具体看下面的运行图,主要看右侧,
左侧是部分代码 

二 逻辑过程

这里大概讲一下过程和逻辑,具体的可以看程序源代码和源素材文件。

  1. 随机生成温度值
  2. 输出当前衣服的名称和保暖值
  3. 获取用户输入的穿衣计划
  4. 对用户输入的数据进行判断
  5. 统计衣服、保暖值
  6. 保暖舒适度的判断
  7. 程序完善,多次使用

三 源代码

import random

dict1 = {
"背心"1,
"短袖T恤"2,
"长袖单衣"3,
"保暖内衣"5,
"毛衣"7,
"夹克外套"8
"薄羽绒服"10
"厚羽绒服"14
}
list_clothes = list(dict1.keys())

defshow_menu():
 print( "穿衣保暖小助手".center(20,"-") )
# 生成今天的温度,并输出---------
 temp = random.uniform(-25,38)
 print( "今天的温度是: %.2f"%temp )
# -----------------------------

# 输出衣服的保暖值--------------
 print("你当前的衣服有:")

for n,name in enumerate(list_clothes):
  val = dict1[name]
  print( "%d. %s 保暖值:%d"%(n+1, name, val) )

#------------------------------ 

defuser_input():
 print("""
 \n请输入你的穿衣计划,
 输入衣服编号并用空格隔开
 """
)

#获取用户输入
whileTrue:
  s = input("请输入你的穿衣计划:")
ifnot s.strip():
   print("不能输入空数据"
#退出本次循环
continue

#对字符串用 “ ” 分割成列表
  list1 = s.split(" ")
  n = len(list1)
if n>10:
   print("穿衣的数量不正确!")
continue
else:
#退出整个循环
break

#将列表的每一项改为整数
for i in range(len(list1)):
  list1[i] = int( list1[i] ) 

return list1

defpro(list1):
#方法二
# list1 = list(map(int, input(":").split()))
 total_warmth = 0
 print( "你选择了:")
for i in list1:
  name = list_clothes[i-1]
  val = dict1.get(name,0)
  print(name, end=" ")
  total_warmth += val
 print("\n总保暖值: ", total_warmth)

# 舒适度判断---------------------
if total_warmth < 10:
     print("太冷了!成冰棍了,快加衣服!\n")
elif total_warmth < 16:
  print("有点凉,建议加件外套。\n")
elif total_warmth <= 25:
  print("刚刚好!很舒服!\n")
elif total_warmth <= 30:
  print("有点热,暴汗,可以脱一件。\n")
else:
  print("太热了!穿太多啦!\n")


whileTrue:
 show_menu()
 list1 = user_input()
 pro(list1)

 s = input("按 Enter 开始新的一天,输入 q 退出: ")
if s.lower()=="q":
  print("谢谢使用,再见!")
break
else:
  print("="*20)
  print()

Python版穿衣小助手的源文件下载方式

  1. 关注 公众号
  2. 发消息 穿衣助手

END

✨ 今日份小成就达成!

如果你觉得这个项目有用,欢迎:
️⃣ 点赞/在看——让更多同学看到
️⃣ 留言告诉我——你还想做什么作品?
️⃣ 关注公众号,更新各种实战项目,不迷路!

✨ 关注:石岛极客编程实战

带你用实战项目快速掌握编程,
分享Python、C++、ESP32、掌控板、AI编程等软硬件编程实战项目,
欢迎关注!