基于Python+Django+MySQL构建个人任务管理系统:告别零散记录,实现高效日程管理

一、项目背景与痛点

日常学习、工作、生活中,每个人都存在大量待办事项、定时日程、阶段性任务需要管理。目前主流的任务管理方式多为备忘录、Excel表格、第三方日程APP,这类管理方式在私有化、精细化、数据统计、个性化定制层面存在明显短板,无法满足个人高效任务管控需求,核心痛点集中如下:

  • 零散记录易丢失、无统一管理入口:手机备忘录、纸质笔记记录任务零散,跨设备无法同步,任务堆积混乱,极易遗漏重要事项;
  • 第三方工具功能臃肿、隐私性差:商业化日程软件广告繁多、推送杂乱,多数需要登录云端账号,个人工作学习任务数据托管第三方,存在隐私泄露风险;
  • 无任务分类与优先级区分:各类工作、学习、生活任务混杂展示,无法按场景分类、按优先级排序,难以聚焦核心任务;
  • 缺少超时预警与定时提醒:无任务截止时间管控,临近超时、已超时任务无提醒,频繁出现任务拖延、逾期未完成问题;
  • 无数据统计复盘能力:无法统计每日、每周、每月任务完成率、逾期率,无法直观复盘个人工作学习效率;
  • 无法私有化自定义部署:通用工具固定功能,无法根据个人需求定制字段、分类、提醒规则,灵活性极差。
    针对传统任务管理工具的各类短板,本次基于Python+Django4.2+MySQL+日历可视化组件搭建轻量化个人任务日程管理系统,实现任务分类管理、优先级配置、截止时间预警、定时日程提醒、任务状态流转、完成数据统计、日历可视化展示全套闭环能力,补足专栏个人效率工具、轻量化事务管控全新赛道,和往期天气系统、私有网盘、在线考试、电商管理等所有项目无任何功能与代码重合。

二、核心目标与定位

本项目核心目标:搭建轻量化、私有化、高适配的个人任务日程管控平台,实现用户注册登录→自定义任务分类→新增待办与日程→优先级&截止时间配置→超时自动预警→任务状态流转管理→日历可视化查看→任务完成率统计复盘完整闭环,替代臃肿的第三方日程工具,实现个人事务规范化、高效化、数据化管理。

项目精准定位:轻量化私有化个人效率管理系统,采用Django原生MVT架构开发,无需前后端分离,部署简单、运行无压力;区分普通用户与管理员权限,用户独立管理个人所有任务数据,数据完全隔离、私有化存储;适配学生学习规划、职场工作任务、个人生活日程管控场景,主打分类清晰、提醒及时、数据可复盘、功能极简无冗余。

核心设计理念:任务分类标准化、状态流转清晰化、超时预警智能化、数据复盘可视化、私有化存储安全化,解决传统任务管理杂乱无序、遗漏超时、无法复盘的核心痛点。


三、整体技术方案

项目基于Django原生MVT分层架构开发,MySQL存储用户、任务分类、待办任务、日程记录、任务统计数据,后端定时逻辑实现超时任务检测与状态更新,前端整合日历组件实现日程可视化渲染,依托Django中间件完成权限校验与数据隔离。

3.1 系统分层架构

整体系统采用分层设计,各层职责清晰,协同完成日程管理全流程:
#mermaid-svg-NUAkIa4TerYncnnL{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-NUAkIa4TerYncnnL .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-NUAkIa4TerYncnnL .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-NUAkIa4TerYncnnL .error-icon{fill:#552222;}#mermaid-svg-NUAkIa4TerYncnnL .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-NUAkIa4TerYncnnL .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-NUAkIa4TerYncnnL .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-NUAkIa4TerYncnnL .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-NUAkIa4TerYncnnL .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-NUAkIa4TerYncnnL .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-NUAkIa4TerYncnnL .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-NUAkIa4TerYncnnL .marker{fill:#333333;stroke:#333333;}#mermaid-svg-NUAkIa4TerYncnnL .marker.cross{stroke:#333333;}#mermaid-svg-NUAkIa4TerYncnnL svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-NUAkIa4TerYncnnL p{margin:0;}#mermaid-svg-NUAkIa4TerYncnnL .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-NUAkIa4TerYncnnL .cluster-label text{fill:#333;}#mermaid-svg-NUAkIa4TerYncnnL .cluster-label span{color:#333;}#mermaid-svg-NUAkIa4TerYncnnL .cluster-label span p{background-color:transparent;}#mermaid-svg-NUAkIa4TerYncnnL .label text,#mermaid-svg-NUAkIa4TerYncnnL span{fill:#333;color:#333;}#mermaid-svg-NUAkIa4TerYncnnL .node rect,#mermaid-svg-NUAkIa4TerYncnnL .node circle,#mermaid-svg-NUAkIa4TerYncnnL .node ellipse,#mermaid-svg-NUAkIa4TerYncnnL .node polygon,#mermaid-svg-NUAkIa4TerYncnnL .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-NUAkIa4TerYncnnL .rough-node .label text,#mermaid-svg-NUAkIa4TerYncnnL .node .label text,#mermaid-svg-NUAkIa4TerYncnnL .image-shape .label,#mermaid-svg-NUAkIa4TerYncnnL .icon-shape .label{text-anchor:middle;}#mermaid-svg-NUAkIa4TerYncnnL .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-NUAkIa4TerYncnnL .rough-node .label,#mermaid-svg-NUAkIa4TerYncnnL .node .label,#mermaid-svg-NUAkIa4TerYncnnL .image-shape .label,#mermaid-svg-NUAkIa4TerYncnnL .icon-shape .label{text-align:center;}#mermaid-svg-NUAkIa4TerYncnnL .node.clickable{cursor:pointer;}#mermaid-svg-NUAkIa4TerYncnnL .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-NUAkIa4TerYncnnL .arrowheadPath{fill:#333333;}#mermaid-svg-NUAkIa4TerYncnnL .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-NUAkIa4TerYncnnL .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-NUAkIa4TerYncnnL .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-NUAkIa4TerYncnnL .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-NUAkIa4TerYncnnL .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-NUAkIa4TerYncnnL .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-NUAkIa4TerYncnnL .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-NUAkIa4TerYncnnL .cluster text{fill:#333;}#mermaid-svg-NUAkIa4TerYncnnL .cluster span{color:#333;}#mermaid-svg-NUAkIa4TerYncnnL div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-NUAkIa4TerYncnnL .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-NUAkIa4TerYncnnL rect.text{fill:none;stroke-width:0;}#mermaid-svg-NUAkIa4TerYncnnL .icon-shape,#mermaid-svg-NUAkIa4TerYncnnL .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-NUAkIa4TerYncnnL .icon-shape p,#mermaid-svg-NUAkIa4TerYncnnL .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-NUAkIa4TerYncnnL .icon-shape .label rect,#mermaid-svg-NUAkIa4TerYncnnL .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-NUAkIa4TerYncnnL .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-NUAkIa4TerYncnnL .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-NUAkIa4TerYncnnL :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 技术底座层
数据管理层
业务处理层
用户交互层
用户日程操作层

新增任务/分类管理/状态修改/日程查看
路由视图分发层

页面分发、请求校验、用户身份认证
任务核心业务层

任务新增、状态流转、超时检测、数据统计
数据权限拦截层

个人数据隔离、越权访问拦截、数据保护
任务分类管理层

自定义任务分类、场景化归类管理
超时预警检测层

定时检测截止时间、自动标记超时任务
数据统计复盘层

完成率、逾期率、任务总量数据统计分析
底层技术底座

Python+Django+MySQL+前端组件

3.2 核心技术栈清单

技术领域 具体技术选型 核心作用
Web后端 Python 3.11 + Django 4.2 原生MVT轻量化开发架构,开发效率高、部署便捷
数据库 MySQL 8.0 结构化存储任务分类、待办日程、用户数据、统计记录
时间处理 Python datetime模块 实现任务截止时间校验、超时判定、时间格式化
状态管控 自定义任务状态枚举 实现待处理、进行中、已完成、已超时状态流转
数据统计 后端聚合查询、批量统计 生成任务效率核心指标(完成率、逾期率等)
前端可视化 日历组件 实现日程可视化展示、时间轴排布
安全机制 用户数据隔离、越权操作拦截 任务数据私有保护、请求参数校验

3.3 关键技术实现

  1. 状态流转逻辑:后端自定义任务状态流转逻辑,规范任务全生命周期管理
  2. 超时检测算法:基于时间戳比对算法,实时校验任务截止时间,自动更新状态
  3. 数据统计引擎:Python聚合统计算法,计算任务完成率、逾期率等核心指标
  4. 权限隔离体系:用户数据完全隔离,杜绝跨用户查看、操作他人任务数据

四、核心能力模块详解

  1. 自定义任务分类模块
    支持用户个性化搭建任务分类体系,实现场景化任务精准归类,告别任务杂乱堆积:
  • 自定义分类创建:用户可自由新增工作、学习、生活、运动、备考等个性化任务分类;
  • 分类全量运维:支持分类重命名、删除、排序,自主适配个人任务管理习惯;
  • 任务绑定分类:新增任务可指定所属分类,实现不同场景任务精准划分;
  • 分类筛选查询:支持按分类筛选对应任务,快速聚焦单一场景事务,提升管理效率。
  1. 多维度任务创建模块
    精细化配置任务信息,全方位定义任务属性,适配各类事务管理场景:
  • 完整任务信息录入:支持填写任务标题、详细描述、所属分类、开始时间、截止时间;
  • 优先级分级配置:设置高、中、低三级任务优先级,优先处理核心紧急事务;
  • 任务状态自动初始化:新建任务默认待处理状态,等待用户开启执行;
  • 批量任务创建:支持一次性新增多条同类任务,适配批量事务录入场景。
  1. 全生命周期任务状态流转模块
    规范任务从创建到结束的完整流程,实现任务闭环管控:
  • 四大核心状态流转:待处理→进行中→已完成/已超时,覆盖任务全生命周期;
  • 手动状态切换:用户可自主开启任务、完成任务,灵活调整任务进度状态;
  • 自动超时判定:系统实时比对当前时间与任务截止时间,超时自动标记为已超时;
  • 状态筛选管理:支持按不同任务状态筛选数据,精准查看未完成、已超时、已办结事务。
  1. 任务超时预警与提醒模块(核心亮点)
    从根源解决任务遗漏、拖延问题,实现主动式任务提醒管控:
  • 临近超时预警:对即将到达截止时间的任务进行高亮标记,提醒用户及时处理;
  • 超时自动归档:超时任务自动更新状态,单独归类展示,方便用户复盘逾期事务;
  • 时间智能校验:新增任务时自动校验时间合法性,禁止设置已过期的截止时间;
  • 未完成任务汇总:首页集中展示所有待处理、进行中、即将超时任务,一目了然。
  1. 日历可视化日程模块
    颠覆传统列表展示方式,以日历视图直观呈现每日日程安排:
  • 月历视图展示:以自然月为单位,每日对应展示当日待办任务、日程安排;
  • 日程时间可视化:清晰展示任务起止时间,直观把控每日、月度事务排布;
  • 日历快捷操作:支持在日历页面快速新增、查看、修改当日任务;
  • 今日任务聚焦:首页自动汇总今日待办、今日超时、今日新增任务。
  1. 任务数据统计复盘模块
    量化个人事务完成效率,为时间管理、习惯优化提供数据支撑:
  • 核心数据统计:自动统计总任务数、已完成数、未完成数、超时任务数;
  • 效率指标计算:自动核算任务完成率、任务逾期率,量化个人执行力;
  • 周期数据复盘:支持查看每日、每周、月度任务统计数据,周期性复盘优化;
  • 分类数据统计:按任务分类统计各类事务完成情况,精准定位薄弱环节。

五、创新价值与亮点

  1. 完全私有化数据存储:区别于云端日程工具,所有任务数据本地服务器存储,无第三方托管,彻底杜绝隐私泄露风险;
  2. 智能化超时自动管控:自研时间比对算法,无需人工监控,自动识别超时任务、高亮预警,实现智能事务提醒;
  3. 任务全生命周期闭环管理:从分类创建、任务录入、状态流转到数据复盘,形成完整的个人事务管理闭环;
  4. 日历可视化直观管控:摆脱枯燥列表式展示,日历视图直观呈现日程排布,符合用户日常查看习惯;
  5. 轻量化无冗余设计:专注任务管理核心功能,无广告、无冗余推送,极简高效,适配长期个人使用。

六、应用前景与落地场景

  • 学生学习规划管理:用于课程作业、备考计划、学习任务、社团事务的统一管理,杜绝学习任务遗漏;
  • 职场办公事务管控:管理日常工作任务、项目进度、截止节点,统计工作完成效率,规范办公流程;
  • 个人生活日程规划:统筹生活琐事、运动计划、纪念日、待办事项,养成规律的时间管理习惯;
  • 高差异化毕设/实战项目:区别于常规商城、网盘、考试系统,聚焦个人效率工具赛道,业务场景实用、技术亮点清晰。

七、完整代码结构示例

1. 项目整体目录结构

bash 复制代码
django-task-schedule/
├── manage.py
├── task_project/                  # 项目全局配置目录
│   ├── settings.py                # 数据库、静态资源、时间配置、中间件配置
│   ├── urls.py                    # 任务、分类、日历、统计路由全局分发
│   └── middleware.py              # 登录校验、任务越权访问拦截中间件
├── apps/                          # 模块化业务应用拆分
│   ├── user_auth/                 # 用户注册登录、个人中心、权限校验模块
│   ├── task_category/             # 任务分类新增、编辑、删除、筛选模块
│   ├── task_manager/              # 任务新增、状态修改、超时检测、运维模块
│   ├── task_calendar/             # 日历数据封装、日程可视化渲染模块
│   └── task_statistics/           # 任务数据统计、完成率计算、复盘模块
├── core/                          # 公共工具类文件夹
│   ├── time_check.py              # 任务超时检测、时间合法性校验工具
│   ├── task_stat_calc.py          # 任务完成率、逾期率统计计算工具
│   └── calendar_data.py           # 日历日程数据组装、格式化工具
├── static/                        # 日历组件、页面样式、前端交互脚本
├── templates/                     # 任务列表、日历视图、数据统计页面模板
├── requirements.txt               # 项目全套依赖包
└── readme.md                      # 项目部署、功能使用说明文档

2. 核心可运行代码片段

示例1:任务分类、任务信息核心数据模型(apps/task_manager/models.py)
python 复制代码
from django.db import models
from django.contrib.auth.models import User
from datetime import datetime

# 任务分类模型
class TaskCategory(models.Model):
    name = models.CharField(max_length=100, verbose_name="分类名称")
    description = models.TextField(blank=True, verbose_name="分类描述")
    created_at = models.DateTimeField(auto_now_add=True, verbose_name="创建时间")
    updated_at = models.DateTimeField(auto_now=True, verbose_name="更新时间")
    
    class Meta:
        verbose_name = "任务分类"
        verbose_name_plural = "任务分类"
        ordering = ['-created_at']
    
    def __str__(self):
        return self.name

# 任务信息模型
class Task(models.Model):
    PRIORITY_CHOICES = [
        ('low', '低优先级'),
        ('medium', '中优先级'),
        ('high', '高优先级'),
        ('urgent', '紧急'),
    ]
    
    STATUS_CHOICES = [
        ('pending', '待处理'),
        ('in_progress', '进行中'),
        ('completed', '已完成'),
        ('overdue', '已逾期'),
        ('cancelled', '已取消'),
    ]
    
    title = models.CharField(max_length=200, verbose_name="任务标题")
    description = models.TextField(verbose_name="任务描述")
    category = models.ForeignKey(TaskCategory, on_delete=models.SET_NULL, null=True, verbose_name="任务分类")
    priority = models.CharField(max_length=20, choices=PRIORITY_CHOICES, default='medium', verbose_name="优先级")
    status = models.CharField(max_length=20, choices=STATUS_CHOICES, default='pending', verbose_name="任务状态")
    due_date = models.DateTimeField(verbose_name="截止时间")
    created_by = models.ForeignKey(User, on_delete=models.CASCADE, related_name='created_tasks', verbose_name="创建者")
    assigned_to = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, related_name='assigned_tasks', verbose_name="负责人")
    created_at = models.DateTimeField(auto_now_add=True, verbose_name="创建时间")
    updated_at = models.DateTimeField(auto_now=True, verbose_name="更新时间")
    completed_at = models.DateTimeField(null=True, blank=True, verbose_name="完成时间")
    
    class Meta:
        verbose_name = "任务"
        verbose_name_plural = "任务"
        ordering = ['-due_date', 'priority']
        indexes = [
            models.Index(fields=['status', 'due_date']),
            models.Index(fields=['category', 'priority']),
        ]
    
    def __str__(self):
        return f"{self.title} ({self.get_status_display()})"
    
    def is_overdue(self):
        """检查任务是否逾期"""
        from django.utils import timezone
        return self.status != 'completed' and self.due_date < timezone.now()
示例2:任务超时检测工具(core/time_check.py)
python 复制代码
from django.utils import timezone
from datetime import timedelta
from apps.task_manager.models import Task

class TimeCheck:
    """任务超时检测工具类"""
    
    @staticmethod
    def check_overdue_tasks():
        """检测所有逾期任务并更新状态"""
        now = timezone.now()
        overdue_tasks = Task.objects.filter(
            status__in=['pending', 'in_progress'],
            due_date__lt=now
        )
        
        updated_count = 0
        for task in overdue_tasks:
            task.status = 'overdue'
            task.save(update_fields=['status', 'updated_at'])
            updated_count += 1
        
        return updated_count
    
    @staticmethod
    def get_upcoming_deadlines(hours=24):
        """获取即将到期的任务(默认24小时内)"""
        now = timezone.now()
        deadline = now + timedelta(hours=hours)
        
        upcoming_tasks = Task.objects.filter(
            status__in=['pending', 'in_progress'],
            due_date__range=[now, deadline]
        ).order_by('due_date')
        
        return upcoming_tasks
    
    @staticmethod
    def validate_due_date(due_date):
        """验证截止时间是否合法(不能早于当前时间)"""
        now = timezone.now()
        if due_date < now:
            return False, "截止时间不能早于当前时间"
        return True, "时间合法"
示例3:任务统计计算工具(core/task_stat_calc.py)
python 复制代码
from django.db.models import Count, Q, Avg
from datetime import datetime, timedelta
from apps.task_manager.models import Task

class TaskStatCalculator:
    """任务统计计算工具类"""
    
    @staticmethod
    def calculate_completion_rate(user_id=None, start_date=None, end_date=None):
        """计算任务完成率"""
        filters = Q()
        
        if user_id:
            filters &= Q(created_by_id=user_id)
        
        if start_date:
            filters &= Q(created_at__gte=start_date)
        
        if end_date:
            filters &= Q(created_at__lte=end_date)
        
        total_tasks = Task.objects.filter(filters).count()
        completed_tasks = Task.objects.filter(filters & Q(status='completed')).count()
        
        if total_tasks == 0:
            return 0.0
        
        return round(completed_tasks / total_tasks * 100, 2)
    
    @staticmethod
    def get_task_distribution_by_status():
        """按状态统计任务分布"""
        distribution = Task.objects.values('status').annotate(
            count=Count('id')
        ).order_by('status')
        
        result = {}
        for item in distribution:
            result[item['status']] = item['count']
        
        return result
    
    @staticmethod
    def get_average_completion_time():
        """计算平均任务完成时间(仅限已完成任务)"""
        completed_tasks = Task.objects.filter(
            status='completed',
            completed_at__isnull=False,
            created_at__isnull=False
        )
        
        if not completed_tasks.exists():
            return None
        
        total_seconds = 0
        for task in completed_tasks:
            completion_time = (task.completed_at - task.created_at).total_seconds()
            total_seconds += completion_time
        
        avg_seconds = total_seconds / completed_tasks.count()
        
        # 转换为天、小时、分钟
        days = int(avg_seconds // 86400)
        hours = int((avg_seconds % 86400) // 3600)
        minutes = int((avg_seconds % 3600) // 60)
        
        return {
            'total_seconds': avg_seconds,
            'days': days,
            'hours': hours,
            'minutes': minutes
        }

八、总结与展望

本篇博客聚焦个人效率工具、事务智能化管控 全新赛道,基于Python+Django搭建轻量化任务日程管理系统,区别于专栏以往的接口可视化、文件存储、智能考试、电商建站类项目,主打任务全生命周期管理、智能超时预警、日历可视化、效率数据复盘 核心技术亮点,是实用性极强、落地场景广泛的全栈实战项目。

项目完整覆盖自定义任务分类、精细化任务录入、状态流转管控、超时自动预警、日历可视化日程、多维度数据统计复盘全流程功能,解决了传统任务管理杂乱、易遗漏、无复盘、隐私性差的核心痛点,代码规范、业务逻辑贴合日常刚需,部署简单、可直接长期自用,无论是后端状态管理、时间算法开发学习,还是作为毕业设计、简历差异化实战项目,都具备极高的价值。

后续迭代规划

  1. 新增站内消息推送提醒,任务临近截止自动推送提醒消息,进一步杜绝任务遗漏;
  2. 新增任务重复周期配置,支持每日、每周、每月循环任务,适配周期性事务管理;
  3. 新增任务标签体系,多维度标记任务属性,实现更精细化的任务检索与分类统计;
  4. 新增任务数据可视化图表,以柱状图、饼图展示任务分类占比、完成率趋势。
相关推荐
TickDB2 小时前
支持 MCP 的金融行情数据源怎么选:实时行情、财务数据和交易 API 的工程边界
python·websocket·mcp·行情数据 api
郝学胜-神的一滴2 小时前
干货版《算法导论》08:哈希——重构集合数据结构的速度魔法
数据结构·python·程序人生·算法·重构·软件构建·哈希算法
怣疯knight2 小时前
电脑多版本Python安装+切换全方案(分Windows / Mac/Linux,3种常用方法)
python
白菜欣2 小时前
【MySQL】MySQL数据的增删改查(入门版)
数据库·mysql
李可以量化2 小时前
QMT 实战:自定义绘制专属 K 线(下篇)—— 国产库与高性能库全解析
python·信息可视化·数据分析·量化·qmt·ptrade
天天进步20152 小时前
Python全栈项目--智能远程医疗系统
开发语言·python
AI人工智能+电脑小能手3 小时前
【大白话说Java面试题 第97题】【Mysql篇】第27题:说说分库与分表的设计?
java·开发语言·数据库·分布式·mysql·算法
落地加湿器3 小时前
从Hermes cli的源代码中学习skill
人工智能·python·学习·智能体·源码解读
RSTJ_16253 小时前
PYTHON+AI LLM DAY SIXTY-SEVEN
开发语言·python