ソース情報
- リポジトリ
- JohnNuwan/EVA_CORE
- ソースの最終更新活動
- 2026年7月18日 08:30
- 検出された SKILL.md の言語
- フランス語
- スター
- 0
- フォーク
- 0
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/JohnNuwan/EVA_CORE --skill python-pep572-pep634コマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
Concevoir et maintenir un watchdog auto-correcteur pour services HTTP — checks de santé, auto-restart, état persistant, rapports et pièges bash.
Serveur de messagerie sécurisé auto-hébergé (Signal-like) avec Flask + WebSocket + AES-256-GCM + pont EVA
ADAM-SENTINEL — Veilleur technologique 24h/24h. Scanne 10 domaines, cree des rapports, met a jour les skills, alerte sur les CVE et breaking changes.
SOC 職業分類に基づく
SKILL.md を表示中
| name | python-pep572-pep634 |
| description | Utiliser l'opérateur Walrus et le Pattern Matching. |
| version | 1.0.0 |
| author | EVA Agent (adapté de obra/superpowers) |
| license | Privée EVA St-Étienne |
| platforms | ["linux","macos","windows"] |
| metadata | {"EVA":{"tags":["python","pep572","pep634","walrus-operator","pattern-matching"],"related_skills":["python-pep8","python-pep257","python-pep20","simplify-code"]}} |
Cette compétence décrit les règles d'utilisation et les bonnes pratiques pour deux fonctionnalités majeures de la syntaxe moderne de Python : l'opérateur d'assignation nommé opérateur Walrus (PEP 572) et le Structural Pattern Matching (PEP 634). Bien utilisées, elles réduisent la duplication de code et améliorent la clarté des embranchements complexes.
L'opérateur Walrus (:=) permet d'assigner une valeur à une variable au sein même d'une expression plus large (comme une condition ou une boucle).
Boucles de lecture de flux : Évite de répéter l'appel de fonction avant et pendant la boucle.
# Recommandé (Walrus)
while (block := file.read(256)) != b"":
process_block(block)
Clauses conditionnelles de filtrage : Récupère une valeur calculée et l'utilise directement dans la condition et son bloc associé.
# Recommandé (Walrus)
if (match := pattern.search(text)) is not None:
return match.group(1)
Compréhensions de listes : Réduit le double calcul d'une fonction coûteuse.
# Recommandé (Walrus)
results = [y for x in data if (y := expensive_computation(x)) > 0]
Introduit en Python 3.10, le pattern matching structurel utilise les mots-clés match et case pour valider et extraire des données selon des motifs structurels spécifiques.
def handle_status(status_code: int) -> str:
match status_code:
case 200 | 201:
return "Succès"
case 400:
return "Requête invalide"
case 404:
return "Non trouvé"
case _: # Cas générique par défaut (wildcard)
return "Erreur inconnue"
Le pattern matching excelle pour valider et extraire des valeurs à partir de dictionnaires ou de tuples :
def process_message(message: dict) -> None:
match message:
# Correspond si 'type' vaut 'alert' et extrait le message sous 'text'
case {"type": "alert", "text": str(body)}:
show_alert(body)
# Correspond si 'type' vaut 'status' et extrait une liste de deux entiers
case {"type": "status", "data": [int(code), int(level)]}:
update_status(code, level)
case _:
raise ValueError("Format de message non reconnu.")
Vous pouvez inspecter les instances de classes et ajouter des conditions dynamiques à l'aide du mot-clé if :
class Point:
def __init__(self, x: float, y: float):
self.x = x
self.y = y
def locate_point(point: Point) -> None:
match point:
case Point(x=0, y=0):
print("À l'origine.")
case Point(x=x, y=y) if x == y:
print(f"Sur la diagonale y = x = {x}.")
case Point(x=x, y=y):
print(f"Point libre à ({x}, {y}).")
case _: si vos cas ne couvrent pas l'intégralité des possibilités, afin d'éviter les comportements imprévus.if/elif.