python-code-analyz

Polar Sponsor
爱发电 赞助
.NET 9.0

专业Python代码分析与优化,支持语法检查、安全扫描、性能评估、复杂度分析及重构后优化代码生成。

Code Analyzer Skill

功能概述

Code Analyzer Skill是一项面向实际任务的技能,主要用于版本 : 1.0.0;作者 : sohot-gdjinni;

核心要点

  • 标签 : code-review , python , security , optimization;
  • 一个专业的 Python 代码分析与优化 Skill,提供:;
  • 语法检查与结构分析;

使用与执行

安全漏洞扫描;性能优化建议;重构后的可直接使用代码;🔍 语法检查;Python 语法验证、AST 结构分析。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。

结果检查与注意事项

从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。

Code Analyzer Skill

版本: 1.0.0
作者: sohot-gdjinni
标签: code-review, python, security, optimization

简介

一个专业的 Python 代码分析与优化 Skill,提供:

  • 语法检查与结构分析
  • 安全漏洞扫描
  • 性能优化建议
  • 重构后的可直接使用代码

功能特性

功能 说明
🔍 语法检查 Python 语法验证、AST 结构分析
🛡️ 安全扫描 检测硬编码密钥、裸 except、SQL 注入等
⚡ 性能分析 识别低效循环、冗余计算、缓存机会
📊 代码质量 复杂度评估、重复代码检测
✅ 修复版本 提供可直接使用的优化后代码

使用方法

1. 直接分析代码

# 分析单个文件
python3 -m code_analyzer analyze /path/to/your/code.py

# 分析目录
python3 -m code_analyzer analyze /path/to/project/ --recursive

2. 在 Python 中使用

from code_analyzer import CodeAnalyzer

analyzer = CodeAnalyzer()
results = analyzer.analyze_file('your_code.py')

# 查看问题列表
for issue in results.issues:
    print(f"[{issue.severity}] {issue.message}")

# 获取修复建议
fixed_code = results.get_fixed_code()

3. 作为 Agent Skill 使用

当你需要分析代码时,直接粘贴代码给我,我会:

  1. 语法检查 - 验证代码能否正常运行
  2. 问题检测 - 找出安全/性能/质量问题
  3. 分级报告 - P0(必须修复) / P1(重要) / P2(建议) / P3(可选)
  4. 提供修复 - 给出可直接使用的优化版本

示例输出

输入代码

def api_get(path):
    import urllib.request
    try:
        req = urllib.request.Request('https://api.example.com' + path)
        with urllib.request.urlopen(req) as resp:
            return json.loads(resp.read())
    except:
        return None

分析结果

📊 代码分析报告
==================================================
函数数量: 1
类数量: 0
导入语句: 1

🔍 发现的问题:
  ⚠️ [P0] 使用裸 except: 可能隐藏所有异常
  ⚠️ [P1] 硬编码 API 地址
  ⚠️ [P1] 缺少超时设置
  ⚠️ [P2] 导入语句在函数内

✅ 优化建议:
  1. 使用具体的异常类型 (HTTPError, URLError)
  2. 添加 timeout 参数
  3. 将 import 移到文件顶部

修复后代码

import json
import urllib.request
import urllib.error
from typing import Optional, Dict

API_BASE_URL = 'https://api.example.com'
DEFAULT_TIMEOUT = 15

def api_get(path: str, timeout: int = DEFAULT_TIMEOUT) -> Optional[Dict]:
    """发送 GET 请求"""
    try:
        req = urllib.request.Request(API_BASE_URL + path)
        with urllib.request.urlopen(req, timeout=timeout) as resp:
            return json.loads(resp.read().decode('utf-8'))
    except urllib.error.HTTPError as e:
        print(f"HTTP错误: {e.code}")
        return None
    except urllib.error.URLError as e:
        print(f"连接错误: {e.reason}")
        return None
    except json.JSONDecodeError as e:
        print(f"JSON解析错误: {e}")
        return None

检查规则

P0 - 必须修复 (安全/稳定性)

  • hardcoded_secrets - 硬编码 API 密钥/密码/令牌
  • bare_except - 裸 except: 捕获所有异常
  • sql_injection - SQL 注入风险(字符串拼接/format/f-string)
  • command_injection - 命令注入(os.system/subprocess 使用动态字符串)
  • dangerous_functions - 危险函数(eval/exec/pickle/yaml.load/marshal)

P1 - 重要 (可靠性)

  • missing_timeout - HTTP 请求未设置 timeout
  • resource_leaks - 锁 acquire 没有对应 release
  • unclosed_files - 文件打开后未关闭
  • debug_code - 调试代码(pdb 导入)

P2 - 建议 (质量)

  • missing_type_hints - 函数参数/返回值缺少类型提示
  • long_functions - 函数超过 50 行
  • unused_variables - 变量被赋值但从未使用
  • inline_imports - 函数内导入
  • debug_code - print 调试语句
  • hardcoded_urls - 硬编码 URL/IP 地址

P3 - 可选 (风格)

  • 命名规范
  • 文档字符串缺失
  • 注释质量

安装

# 克隆仓库
git clone https://github.com/yourusername/code-analyzer-skill.git
cd code-analyzer-skill

# 安装依赖
pip install -r requirements.txt

# 可选:安装为系统命令
pip install -e .

配置

创建 .code_analyzer.yaml:

# 忽略的文件/目录
exclude:
  - "*/venv/*"
  - "*/__pycache__/*"
  - "*/tests/*"

# 自定义规则
rules:
  max_line_length: 120
  max_function_lines: 50
  max_complexity: 10

# 严重性覆盖
severity:
  bare_except: "error"      # 裸 except 升级为错误
  missing_timeout: "warning" # 缺少超时降级为警告

工作原理

┌─────────────────────────────────────────┐
│           代码输入                       │
└─────────────────┬───────────────────────┘
                  ▼
┌─────────────────────────────────────────┐
│  1. 语法检查 (AST解析)                   │
│     - Python 语法验证                   │
│     - 结构分析                          │
└─────────────────┬───────────────────────┘
                  ▼
┌─────────────────────────────────────────┐
│  2. 静态分析                             │
│     - 安全扫描                          │
│     - 性能检测                          │
│     - 代码异味                          │
└─────────────────┬───────────────────────┘
                  ▼
┌─────────────────────────────────────────┐
│  3. 问题分级                             │
│     - P0/P1/P2/P3                       │
│     - 影响评估                          │
└─────────────────┬───────────────────────┘
                  ▼
┌─────────────────────────────────────────┐
│  4. 生成修复                             │
│     - 代码重构                          │
│     - 类型提示                          │
│     - 文档生成                          │
└─────────────────────────────────────────┘

贡献

欢迎贡献!请遵循以下流程:

  1. Fork 仓库
  2. 创建功能分支 (git checkout -b feature/amazing-feature)
  3. 提交更改 (git commit -m 'Add amazing feature')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 创建 Pull Request

许可证

MIT License - 详见 LICENSE 文件

致谢

基于以下开源项目构建:

  • Python AST 模块
  • Bandit (安全扫描)
  • Radon (复杂度分析)

更新日志

v1.0.0 (2026-03-21)

  • 🎉 初始版本发布
  • ✅ 基础语法检查
  • ✅ 安全漏洞扫描
  • ✅ 性能优化建议
  • ✅ 修复代码生成

相关专题

更多
Python Django REST Framework接口安全与认证体系实践
Python Django REST Framework接口安全与认证体系实践

本专题围绕 Django REST Framework 展开,深入讲解 API 认证、JWT 鉴权、权限控制、接口安全防护以及防攻击策略设计。通过完整后端案例,帮助开发者构建安全可靠的 Web API 服务体系。

2026.06.29

140

15

Python FastAPI异步微服务与高性能接口设计
Python FastAPI异步微服务与高性能接口设计

本专题聚焦 Python FastAPI 框架在高性能接口与微服务开发中的应用,讲解异步请求处理、依赖注入机制、路由设计、数据库异步操作以及接口性能优化策略。结合实际项目案例,帮助开发者构建高并发、低延迟的现代化后端服务架构。

2026.06.16

219

12

Python数据分析实战指南
Python数据分析实战指南

聚焦Python在数据分析领域的核心应用,涵盖Pandas、NumPy、Matplotlib等库的使用技巧、真实业务场景案例及性能优化方法。

2026.06.04

146

48

Python入门零基础通关合集
Python入门零基础通关合集

从安装环境、变量循环到函数与类,专为小白设计的手把手Python教程,配套100道实战练习题,快速掌握自动化与数据分析基础。

2026.06.03

334

26

Python 设计模式与代码架构教程合集
Python 设计模式与代码架构教程合集

以 Python 语言特性为基础,讲解经典设计模式的 Pythonic 实现方式,涵盖单例模式(模块级/元类/new)、工厂模式与注册表模式、策略模式(函数作为一等公民替代类继承)、观察者模式(信号与事件系统)、装饰器模式(语言原生支持)、代理模式(getattr 动态代理)、依赖注入(dependency-injector 库)、仓储模式(Repository Pattern)在数据层的应用,同时讲解 Python 项目的分层架构(领

2026.05.15

424

19

Python日志系统与监控告警教程大全
Python日志系统与监控告警教程大全

全面讲解 Python 应用的日志管理与监控方案,涵盖 logging 标准库的 Logger/Handler/Formatter/Filter 体系、日志级别规范与分模块配置、dictConfig / fileConfig 声明式配置、loguru 第三方库的简洁用法与结构化输出、日志轮转(RotatingFileHandler/TimedRotatingFileHandler)策略、JSON 格式结构化日志输出、ELK / Loki

2026.05.15

186

27

Python数据库与ORM实践
Python数据库与ORM实践

全面讲解 Python 中数据库操作的技术方案,涵盖 sqlite3 标准库的轻量数据库操作、PyMySQL / psycopg2 连接 MySQL / PostgreSQL、DB-API 2.0 规范与游标操作、SQL 注入防范与参数化查询、SQLAlchemy Core 表达式语言与 ORM 模型定义/查询/关联关系映射、Alembic 数据库迁移管理、连接池(SQLAlchemy Pool / DBUtils)配置与调优、异步数据

2026.05.11

171

19

Python Web框架FastAPI 全栈开发教程合集
Python Web框架FastAPI 全栈开发教程合集

以 FastAPI 为核心,讲解现代 Python Web API 的高效开发方式,涵盖路由定义与路径参数/查询参数/请求体绑定、Pydantic 模型的数据校验与序列化、依赖注入(Depends)系统的分层设计、中间件与 CORS 配置、OAuth2 + JWT 认证流程、后台任务(BackgroundTasks)、WebSocket 实时通信、SQLAlchemy 异步 ORM 集成、自动生成 OpenAPI/Swagger 交互文

2026.05.09

316

23

Python多线程、多进程与并发编程教程大全
Python多线程、多进程与并发编程教程大全

系统讲解 Python 的并发与并行编程体系,涵盖 GIL 全局解释器锁的原理与影响分析、threading 模块的线程创建/锁/事件/信号量、multiprocessing 模块的进程创建/进程间通信(Queue/Pipe/共享内存)、concurrent.futures 线程池与进程池的统一接口、I/O 密集型与 CPU 密集型任务的方案选择、多线程竞态条件排查与线程安全数据结构、subprocess 子进程管理,帮助开发者根据任务

2026.05.08

114

32

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程