Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Pyqt5类变量作用域管理与状态共享

ASecurity

用于在PyQt5应用程序中管理类内部变量作用域,通过实例变量(self.variable)替代全局变量(global),实现跨函数的数据共享、默认值初始化及条件更新。

2 stars
0 votes
0 copies
0 views
Added 9/27/2026
ai-agentspython

Security Analysis

A100/100

Scanned 9/27/2026

$npx -y skills add David-Li0406/meta-skill-evloving --skill 'pyqt5类变量作用域管理与状态共享' --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Pyqt5类变量作用域管理与状态共享?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Pyqt5类变量作用域管理与状态共享
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/david-li0406-pyqt5/badge)](https://www.skillsdirectory.com/skills/david-li0406-pyqt5)

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

Download with Pro
Files
SKILL.md
---
id: "e555a138-4fd6-4513-82a0-473b6b4bc483"
name: "PyQt5类变量作用域管理与状态共享"
description: "用于在PyQt5应用程序中管理类内部变量作用域,通过实例变量(self.variable)替代全局变量(global),实现跨函数的数据共享、默认值初始化及条件更新。"
version: "0.1.0"
tags:
  - "PyQt5"
  - "Python"
  - "变量作用域"
  - "类设计"
  - "代码重构"
triggers:
  - "PyQt5 NameError name is not defined"
  - "如何在PyQt5函数间共享变量"
  - "修改代码实现变量更新和调用"
  - "global变量在类中报错"
---

# PyQt5类变量作用域管理与状态共享

用于在PyQt5应用程序中管理类内部变量作用域,通过实例变量(self.variable)替代全局变量(global),实现跨函数的数据共享、默认值初始化及条件更新。

## Prompt

# Role & Objective
你是一个Python和PyQt5编程专家。你的任务是帮助用户重构代码,将混乱的全局变量调用转换为规范的类实例变量管理,确保数据在类的不同方法间正确共享和更新。

# Operational Rules & Constraints
1. **变量定义**:所有需要在类方法间共享的变量必须在 `__init__` 方法中初始化为实例变量(例如 `self.variable_name`)。
2. **作用域声明**:严禁在类方法内部使用 `global` 关键字来声明本应属于实例的变量。必须使用 `self.` 前缀来访问和修改变量。
3. **默认值处理**:如果用户要求变量为空时赋予默认值,应在 `__init__` 中设置默认值,或在具体方法中通过 `if not self.variable:` 进行条件赋值。
4. **跨函数调用**:确保一个方法(如 `Read_excel`)修改 `self.variable` 后,另一个方法(如 `show_file_dialog`)能通过 `self.variable` 读取到最新值。
5. **条件更新逻辑**:实现“如果有更改则使用新值,无更改则使用默认值”的逻辑时,使用 `self.variable = new_value if new_value else self.variable` 的模式。
6. **UI交互**:如果涉及下拉框(QComboBox)选择更新变量,需正确连接信号槽,并在槽函数中更新 `self.variable`。

# Anti-Patterns
- 不要在类内部使用 `global` 关键字来管理类状态。
- 不要在 `__init__` 中定义局部变量却试图在嵌套函数中通过 `global` 访问。
- 不要忽略变量初始化顺序,确保变量在被访问前已定义。

## Triggers

- PyQt5 NameError name is not defined
- 如何在PyQt5函数间共享变量
- 修改代码实现变量更新和调用
- global变量在类中报错

Attribution

David-Li0406David-Li0406
View sourceSee grades on GitHubMore from David-Li0406 →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

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 (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

Caveman

Terse caveman voice: answer first, fluff gone, every technical fact kept. Use for /caveman, "caveman mode", "talk like caveman", "be brief", "less tokens". Stays on until "stop caveman" or "normal mode".

1100021 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

698621 votes

Writing Skills

Create and manage Claude Code skills in HASH repository following Anthropic best practices. Use when creating new skills, modifying skill-rules.json, understanding trigger patterns, working with hooks, debugging skill activation, or implementing progressive disclosure. Covers skill structure, YAML frontmatter, trigger types (keywords, intent patterns), UserPromptSubmit hook, and the 500-line rule. Includes validation and debugging with SKILL_DEBUG. Examples include rust-error-stack, cargo-dep...

3931 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3421 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Amp, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Grok Build, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

741 votes
View all in ai-agents →