尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

智能衣柜—穿搭助手,内置温湿度传感器,潮湿天气启动除湿功能,防止衣服发霉,APP还能记录衣服穿着频率,推荐久没穿的衣服,避免穿搭重复。

智能衣柜—穿搭助手,内置温湿度传感器,潮湿天气启动除湿功能,防止衣服发霉,APP还能记录衣服穿着频率,推荐久没穿的衣服,避免穿搭重复。
📅 发布时间:2026/6/18 18:58:47

智能衣柜—穿搭助手系统

一、核心代码(模块化设计)

1. 配置文件(

"config.py")

集中管理常量与参数,便于扩展。

# 配置模块:系统常量与参数

class Config:

# 温湿度阈值(湿度>70%启动除湿)

HUMIDITY_THRESHOLD = 70

TEMP_THRESHOLD = 30 # 温度阈值(可选扩展制冷)

# 衣物属性字段

CLOTHING_FIELDS = ["id", "name", "category", "last_worn", "wear_count", "season"]

# 退出命令

EXIT_CMD = "退出"

WELCOME_MSG = "欢迎使用智能衣柜—穿搭助手!"

2. 传感器模拟模块(

"sensor_simulator.py")

模拟温湿度传感器数据读取(实际可对接DHT11等硬件)。

# 传感器模拟:生成随机温湿度数据(实际替换为硬件读取)

import random

from config import Config

def read_sensor_data():

"""模拟读取温湿度传感器数据"""

humidity = random.randint(50, 90) # 湿度50%-90%

temperature = random.randint(20, 35) # 温度20-35℃

return {"humidity": humidity, "temperature": temperature}

3. 除湿控制模块(

"dehumidifier.py")

根据湿度阈值控制除湿功能。

# 除湿控制:湿度超标时启动除湿

from sensor_simulator import read_sensor_data

from config import Config

def check_humidity_and_control():

"""检查湿度并控制除湿"""

data = read_sensor_data()

humidity = data["humidity"]

if humidity > Config.HUMIDITY_THRESHOLD:

print(f"⚠️ 湿度过高({humidity}%),启动除湿功能...")

return {"status": "运行中", "humidity": humidity}

else:

print(f"✅ 湿度正常({humidity}%),无需除湿")

return {"status": "待机", "humidity": humidity}

4. 衣物管理模块(

"wardrobe_manager.py")

用类封装衣物信息,支持增删改查与穿着记录。

# 衣物管理:记录衣物属性与穿着历史

import json

from datetime import datetime

from config import Config

class Wardrobe:

def __init__(self):

self.clothes = [] # 衣物列表,每个元素为字典

self.load_data() # 初始化时加载数据(模拟文件存储)

def add_clothing(self, name, category, season):

"""添加新衣物"""

new_id = len(self.clothes) + 1

self.clothes.append({

"id": new_id,

"name": name,

"category": category, # 如上衣/裤子

"last_worn": None, # 上次穿着时间(YYYY-MM-DD)

"wear_count": 0, # 穿着次数

"season": season # 适用季节:春/夏/秋/冬

})

self.save_data()

def record_wear(self, clothing_id):

"""记录衣物穿着"""

for item in self.clothes:

if item["id"] == clothing_id:

item["last_worn"] = datetime.now().strftime("%Y-%m-%d")

item["wear_count"] += 1

self.save_data()

return True

return False # 未找到衣物

def get_least_worn(self, limit=3):

"""推荐久未穿的衣物(按last_worn升序)"""

sorted_clothes = sorted(

self.clothes,

key=lambda x: x["last_worn"] or "1970-01-01" # 未穿过排最前

)

return sorted_clothes[:limit] # 返回前limit件

def save_data(self):

"""模拟保存数据到文件(实际用json.dump)"""

pass # 简化为内存存储,实际可扩展文件读写

def load_data(self):

"""模拟加载数据(初始为空列表)"""

self.clothes = []

5. 推荐算法模块(

"recommender.py")

基于穿着频率推荐久未穿衣物。

# 推荐算法:调用Wardrobe的get_least_worn方法

from wardrobe_manager import Wardrobe

def recommend_outfit(wardrobe, limit=3):

"""推荐久未穿的衣物"""

return wardrobe.get_least_worn(limit)

6. 用户交互模块(

"user_interface.py")

命令行交互,整合各模块功能。

# 用户交互:处理输入输出与功能调度

from dehumidifier import check_humidity_and_control

from wardrobe_manager import Wardrobe

from recommender import recommend_outfit

from config import Config

def display_menu():

print("\n===== 功能菜单 =====")

print("1. 查看温湿度并控制除湿")

print("2. 添加衣物到衣柜")

print("3. 记录衣物穿着")

print("4. 获取穿搭推荐(久未穿)")

print(f"输入'{Config.EXIT_CMD}'退出")

def run_interaction():

wardrobe = Wardrobe() # 初始化衣柜

print(Config.WELCOME_MSG)

while True:

display_menu()

choice = input("\n请选择功能:").strip()

if choice == Config.EXIT_CMD:

print("感谢使用,再见!")

break

elif choice == "1":

check_humidity_and_control()

elif choice == "2":

name = input("衣物名称:")

category = input("类别(如上衣/裤子):")

season = input("适用季节(春/夏/秋/冬):")

wardrobe.add_clothing(name, category, season)

print(f"✅ 已添加:{name}")

elif choice == "3":

cid = int(input("衣物ID:"))

if wardrobe.record_wear(cid):

print("✅ 穿着记录已更新")

else:

print("❌ 未找到该衣物")

elif choice == "4":

recs = recommend_outfit(wardrobe)

print("\n📌 推荐久未穿的衣物:")

for item in recs:

print(f"ID:{item['id']} {item['name']}(上次穿:{item['last_worn'] or '从未'})")

else:

print("❌ 无效选择,请重试")

7. 程序入口(

"main.py")

整合模块启动系统。

# 程序入口

from user_interface import run_interaction

if __name__ == "__main__":

try:

run_interaction()

except Exception as e:

print(f"程序出错:{e}")

二、README文件(

"README.md")

# 智能衣柜—穿搭助手

## 项目简介

基于Python的智能衣柜系统,集成温湿度监测(防霉除湿)、衣物穿着记录、久未穿推荐功能,模拟智能产品控制逻辑,支持模块化扩展。

## 核心功能

1. **环境监测**:模拟温湿度传感器,湿度>70%自动启动除湿

2. **衣物管理**:添加衣物、记录穿着次数与日期

3. **穿搭推荐**:按“最久未穿”原则推荐衣物,避免重复

4. **交互界面**:命令行菜单操作,简单易用

## 安装与使用

### 环境要求

- Python 3.8+

- 无额外依赖(纯标准库)

### 使用步骤

1. 下载代码:保存上述7个`.py`文件到同一文件夹

2. 运行程序:`python main.py`

3. 操作示例:

欢迎使用智能衣柜—穿搭助手!

===== 功能菜单 =====

1. 查看温湿度并控制除湿

2. 添加衣物到衣柜...请选择功能:2衣物名称:蓝色衬衫类别(如上衣/裤子):上衣适用季节(春/夏/秋/冬):夏✅ 已添加:蓝色衬衫

## 目录结构

├── config.py # 配置常量

├── sensor_simulator.py # 温湿度传感器模拟

├── dehumidifier.py # 除湿控制

├── wardrobe_manager.py # 衣物管理(类封装)

├── recommender.py # 推荐算法

├── user_interface.py # 命令行交互

└── main.py # 程序入口

## 扩展方向

1. 硬件对接:用树莓派+DHT11传感器读取真实温湿度

2. GUI界面:用Tkinter/PyQt开发图形界面

3. 数据存储:用SQLite数据库持久化衣物信息

三、使用说明

1. 准备环境:安装Python 3.8+("官网下载" (https://www.python.org/downloads/))

2. 运行程序:

- 创建文件夹(如

"smart_wardrobe"),放入所有

".py"文件

- 终端执行

"cd smart_wardrobe && python main.py"

3. 操作流程:

- 选1:查看温湿度,湿度超标自动提示启动除湿

- 选2:添加衣物(名称、类别、季节)

- 选3:输入衣物ID记录穿着(更新last_worn和wear_count)

- 选4:获取久未穿衣物推荐(按上次穿着时间排序)

四、核心知识点卡片

知识点 说明 代码应用示例

模块化设计 拆分传感器、控制、管理等独立模块

"sensor_simulator.py"与

"dehumidifier.py"分离

类与对象 用

"Wardrobe"类封装衣物管理逻辑

"wardrobe = Wardrobe()"实例化衣柜

字典数据结构 存储衣物属性(id/name/last_worn等)

"clothes"列表中的字典元素

排序算法

"sorted()"按last_worn推荐久未穿衣物

"sorted(clothes, key=lambda x: x["last_worn"])"

异常处理

"try...except"捕获运行错误

"main.py"中捕获通用异常并打印

模拟硬件交互 用随机数模拟传感器数据

"random.randint(50, 90)"生成湿度值

文件I/O(扩展) 用

"json"持久化衣物数据(当前简化)

"save_data()"/

"load_data()"方法

运行效果示例

欢迎使用智能衣柜—穿搭助手!

===== 功能菜单 =====

1. 查看温湿度并控制除湿

...

请选择功能:1

⚠️ 湿度过高(85%),启动除湿功能...

请选择功能:4

📌 推荐久未穿的衣物:

ID:1 蓝色衬衫(上次穿:从未)

ID:2 牛仔裤(上次穿:2025-12-15)

系统可通过扩展

"wardrobe_manager.py"实现文件存储,或对接真实传感器提升实用性。

关注我,有更多实用程序等着你!

相关新闻

  • pbootcms产品添加与修改
  • jsxjfnnfdm
  • 研究生福音:8款免费AI工具实测,1小时生成万字问卷论文,真实参考文献必备!

最新新闻

  • 传统观念分散持仓越多风险越低,编程逐步增加持仓个股数量,测算组合波动率拐点,找到最优分散上限。
  • 2026知名GEO服务商大盘点!不同场景选型攻略全覆盖 - 品牌测评鉴赏家
  • 如何快速掌握SuperCom串口调试工具:从零开始的终极使用指南
  • PyCaret低代码实现房价预测:从数据准备到模型上线全链路
  • 【Springboot毕设全套源码+文档】基于springboot的智慧仓库(丰富项目+远程调试+讲解+定制)
  • 2026年6月PE排水管企业推荐指南 - 多才菠萝

日新闻

  • 2026年不锈钢卷板厂家推荐排行榜:冷轧热轧/304/201不锈钢卷板,高颜值耐腐蚀源头厂家实力精选 - 企业推荐官【官方】
  • FLUX.1-dev FP8模型实战指南:24GB以下显卡高效部署方案
  • 2026佛山长途搬家价目表:跨省跨市搬家费用完整计算指南 - 从来都是英雄出少年

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号