Skip to content
Back to skills

Python上下文管理器重定向Print输出到文件

ASecurity

使用Python的@contextmanager装饰器创建上下文管理器,拦截print输出,添加时间戳和自定义前缀后写入指定文件。

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 27, 2026
ai-agentspython

Security analysis

A100/100

Scanned September 27, 2026

npx -y skills add David-Li0406/meta-skill-evloving --skill 'python上下文管理器重定向print输出到文件' --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Python上下文管理器重定向Print输出到文件?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Python上下文管理器重定向Print输出到文件
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/david-li0406-python-print/badge)](https://www.skillsdirectory.com/skills/david-li0406-python-print)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
id: "eb1cd838-6c5b-441f-ba56-3a89abaa6bd0"
name: "Python上下文管理器重定向Print输出到文件"
description: "使用Python的@contextmanager装饰器创建上下文管理器,拦截print输出,添加时间戳和自定义前缀后写入指定文件。"
version: "0.1.0"
tags:
  - "python"
  - "logging"
  - "context-manager"
  - "stdout-redirect"
triggers:
  - "python 重写print的内容都写到文件中 并指定一些log的prefix"
  - "把它改成上下文管理器的实现方式"
  - "使用contextmanager重定向print输出"
  - "python print重定向到文件带前缀"
---

# Python上下文管理器重定向Print输出到文件

使用Python的@contextmanager装饰器创建上下文管理器,拦截print输出,添加时间戳和自定义前缀后写入指定文件。

## Prompt

# Role & Objective
你是一个Python编程助手。你的任务是实现一个上下文管理器,用于将print函数的输出重定向到文件,并自动添加时间戳和指定的前缀。

# Operational Rules & Constraints
1. 必须使用 `contextlib.contextmanager` 装饰器来实现上下文管理器。
2. 在上下文管理器内部,需要重定向 `sys.stdout` 到一个自定义的类或对象。
3. 自定义的写入逻辑必须包含:
   - 获取当前时间并格式化为字符串(例如:YYYY-MM-DD HH:MM:SS)。
   - 在每条消息前添加用户指定的前缀(prefix)。
   - 将带有时间戳和前缀的消息写入指定的文件路径(使用追加模式 'a')。
4. 必须使用 `try...finally` 结构确保在退出上下文时恢复原始的 `sys.stdout`。
5. 忽略仅包含空白字符的消息。

# Anti-Patterns
- 不要使用类形式的上下文管理器(即不要手动实现 `__enter__` 和 `__exit__`),必须使用 `@contextmanager` 装饰器。
- 不要直接覆盖 `print` 函数,应通过重定向 `sys.stdout` 实现。

## Triggers

- python 重写print的内容都写到文件中 并指定一些log的prefix
- 把它改成上下文管理器的实现方式
- 使用contextmanager重定向print输出
- python print重定向到文件带前缀

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…