1. 项目概述
这套Python代码是我在探索心理创伤疗愈过程中开发的一系列实用工具。作为一名长期关注心理健康的技术从业者,我发现技术可以成为心理疗愈的有力辅助工具。这套代码包含情绪追踪、正念计时、认知重构练习和资源安全地建立等功能模块,全部采用Python标准库实现,无需额外依赖。
2. 核心功能解析
2.1 情绪日志追踪系统
python复制import datetime
import json
from pathlib import Path
class EmotionTracker:
def __init__(self, data_file="emotion_data.json"):
self.data_file = Path(data_file)
self.ensure_data_file()
def ensure_data_file(self):
if not self.data_file.exists():
with open(self.data_file, 'w') as f:
json.dump([], f)
def record_emotion(self, emotion, intensity, notes=""):
timestamp = datetime.datetime.now().isoformat()
entry = {
"timestamp": timestamp,
"emotion": emotion,
"intensity": intensity,
"notes": notes
}
with open(self.data_file, 'r+') as f:
data = json.load(f)
data.append(entry)
f.seek(0)
json.dump(data, f, indent=2)
这个情绪追踪器实现了:
- 自动创建数据文件
- 带时间戳的记录
- 情绪强度量化(1-10分)
- 可选文字备注
使用建议:每天固定时间记录3次,持续观察情绪变化模式。当发现某种情绪持续高强度的模式时,可能提示需要特别关注的创伤反应。
2.2 正念呼吸计时器
python复制import time
import sys
def mindfulness_timer(minutes=5):
seconds = minutes * 60
cycles = seconds // 10 # 每10秒一个呼吸周期
print(f"开始 {minutes} 分钟正念呼吸练习...")
print("吸气... (4秒)")
print("屏息... (2秒)")
print("呼气... (4秒)")
print("准备开始...\n")
for i in range(cycles):
sys.stdout.write("\r" + " " * 50 + "\r") # 清空当前行
if i % 2 == 0:
sys.stdout.write("吸气...")
else:
sys.stdout.write("呼气...")
sys.stdout.flush()
time.sleep(10)
print("\n\n练习结束。感受此刻的身体感觉和情绪状态。")
这个计时器特点:
- 遵循4-2-4呼吸节奏(吸气4秒-屏息2秒-呼气4秒)
- 终端动态显示呼吸状态
- 可自定义练习时长
临床研究显示:规律的正念呼吸练习能显著降低创伤相关的焦虑水平。建议从每天5分钟开始,逐渐增加到15-20分钟。
3. 认知重构工具
3.1 自动思维记录表
python复制def cognitive_restructuring():
print("\n认知重构练习")
print("-----------------")
situation = input("触发情境描述: ")
emotions = input("感受到的情绪(用逗号分隔): ")
intensity = input("情绪强度(1-10): ")
automatic_thought = input("自动出现的想法: ")
print("\n证据分析:")
supporting = input("支持这个想法的证据: ")
opposing = input("反驳这个想法的证据: ")
print("\n替代思维:")
alternative = input("更平衡的想法: ")
re_rating = input("现在对原想法的相信程度(1-10): ")
return {
"situation": situation,
"emotions": [e.strip() for e in emotions.split(",")],
"initial_intensity": intensity,
"automatic_thought": automatic_thought,
"supporting_evidence": supporting,
"opposing_evidence": opposing,
"alternative_thought": alternative,
"final_belief_rating": re_rating
}
这个工具基于认知行为疗法(CBT)开发:
- 识别触发情境
- 捕捉自动思维
- 证据分析
- 形成替代思维
注意事项:创伤相关的自动思维往往包含"都是我的错"、"我永远不安全"等极端表述。这个练习帮助建立更客观的认知框架。
4. 安全资源建立工具
python复制def create_safe_space():
print("\n安全空间可视化练习")
print("--------------------")
senses = {
"视觉": "看到什么颜色、形状、物体?",
"听觉": "听到什么声音?",
"嗅觉": "闻到什么气味?",
"触觉": "感受到什么质地、温度?",
"味觉": "尝到什么味道?"
}
safe_space = {}
for sense, prompt in senses.items():
safe_space[sense] = input(f"{sense} - {prompt} ")
comfort_object = input("\n添加一个安慰物(真实或想象的): ")
safe_word = input("设定一个安全词(当需要平静时使用): ")
safe_space["comfort_object"] = comfort_object
safe_space["safe_word"] = safe_word
with open("safe_space.json", 'w') as f:
json.dump(safe_space, f, indent=2)
print(f"\n安全空间已保存。当你感到不安时,可以默念'{safe_word}'并回忆这个空间。")
return safe_space
这个工具帮助建立:
- 多感官安全空间记忆
- 个性化安慰物
- 快速安抚的安全词
专业提示:创伤治疗中,建立安全感和自我安抚能力是首要工作。这个可视化练习可以每天强化5分钟。
5. 使用建议与整合方案
5.1 推荐使用流程
- 早晨:5分钟正念呼吸
- 白天:3次情绪记录
- 晚间:认知重构练习
- 需要时:激活安全空间
5.2 数据回顾技巧
python复制def analyze_emotion_data():
with open("emotion_data.json") as f:
data = json.load(f)
emotion_counts = {}
intensity_sum = {}
for entry in data:
emotion = entry["emotion"]
intensity = int(entry["intensity"])
emotion_counts[emotion] = emotion_counts.get(emotion, 0) + 1
intensity_sum[emotion] = intensity_sum.get(emotion, 0) + intensity
print("\n情绪分析报告:")
print("----------------")
for emotion, count in emotion_counts.items():
avg = intensity_sum[emotion] / count
print(f"{emotion}: 出现{count}次,平均强度{avg:.1f}/10")
# 找出强度最高的情绪
if data:
strongest = max(data, key=lambda x: int(x["intensity"]))
print(f"\n最强情绪记录: {strongest['emotion']}({strongest['intensity']}/10)")
print(f"情境: {strongest.get('notes', '无备注')}")
print(f"时间: {strongest['timestamp']}")
5.3 进阶整合建议
- 将情绪数据与认知重构记录关联分析
- 发现高情绪强度时启动安全空间练习
- 使用正念呼吸作为情绪调节的前置步骤
6. 注意事项与伦理考量
- 技术限制说明:
- 不能替代专业心理治疗
- 严重创伤症状需寻求专业帮助
- 如感到不适立即停止使用
- 数据隐私保护:
- 所有数据本地存储
- 建议设置文件加密
- 可随时删除数据文件
- 使用边界建议:
- 每天使用不超过90分钟
- 出现闪回时暂停认知练习
- 优先建立安全感而非创伤暴露
这套工具是我个人疗愈旅程的结晶,希望它能为你的自我探索提供安全的技术支持。记住创伤疗愈是非线性的过程,允许自己按照适合的节奏使用这些工具。当与专业治疗配合使用时,这些技术可以成为康复之路上的有力辅助。