Agent Skills
› A-EVO-Lab/a-evolve
› python-data-analysis
python-data-analysis
GitHub提供Python多步任务的最佳实践,重点解决状态隔离问题。推荐编写完整脚本执行,或手动管理文件状态以跨调用传递数据,涵盖数据处理、HuggingFace分析及验证流程。
Trigger Scenarios
需要跨多次python()调用处理数据
进行复杂的数据分析或多步骤脚本编写
Install
npx skills add A-EVO-Lab/a-evolve --skill python-data-analysis -g -y
SKILL.md
Frontmatter
{
"name": "python-data-analysis",
"description": "Best practices for multi-step Python tasks including data analysis, HuggingFace datasets, token counting, and any task requiring state across multiple python() calls."
}
Python Multi-Step Tasks
RULE #1: Each python() call starts fresh — NO state carries over
Variables, imports, data from previous calls DO NOT EXIST. This is the #1 source of NameError.
DEFAULT STRATEGY: Write a complete .py script to a file, then run it.
with open('/app/solve.py', 'w') as f:
f.write('''#!/usr/bin/env python3
import numpy as np
# ALL logic in one file
data = np.load("/app/data.npy")
result = process(data)
with open("/app/answer.txt","w") as out:
out.write(str(result))
''')
Then: bash("python3 /app/solve.py && cat /app/answer.txt")
If you must use multiple python() calls:
- Save state to files between calls:
import json, numpy as np
# Save: json.dump(obj, open('/tmp/state.json','w'))
# Save: np.save('/tmp/arr.npy', array)
# Load: obj = json.load(open('/tmp/state.json'))
- Every call MUST re-import and re-load — never reference prior variables
- NameError = forgot to re-define — add missing definitions, don't just re-run
HuggingFace Datasets + Token Counting (ONE call)
from datasets import load_dataset
from transformers import AutoTokenizer
ds = load_dataset("org/name", split="train")
tok = AutoTokenizer.from_pretrained("model-name")
total = sum(len(tok.encode(r["text"])) for r in ds if r["domain"] == "science")
with open("/app/answer.txt","w") as f: f.write(str(total))
For iterative exploration, keep blocks self-contained
# Each block: imports + load + process + print
import pandas as pd
df = pd.read_csv('f.csv')
print(df.describe())
Verification
- Print/cat output files BEFORE submitting
- Confirm formats match expected schema exactly
Version History
- c9d4789 Current 2026-07-25 07:28


