astrology-ziwei-api / sihua_data.py
th
feat: 紫微分析引擎全面升级 v3.0
e6024b0
Raw History Blame Contribute Delete
5.28 kB
"""
四化飞星数据库
Four Transformations Data - The Soul of Ziwei Doushu
十天干四化对照表 - 这是紫微斗数的核心灵魂
"""
# 十天干四化对照表
TIANGAN_SIHUA = {
'甲': {
'化禄': '廉贞',
'化权': '破军',
'化科': '武曲',
'化忌': '太阳'
},
'乙': {
'化禄': '天机',
'化权': '天梁',
'化科': '紫微',
'化忌': '太阴'
},
'丙': {
'化禄': '天同',
'化权': '天机',
'化科': '文昌',
'化忌': '廉贞'
},
'丁': {
'化禄': '太阴',
'化权': '天同',
'化科': '天机',
'化忌': '巨门'
},
'戊': {
'化禄': '贪狼',
'化权': '太阴',
'化科': '右弼',
'化忌': '天机'
},
'己': {
'化禄': '武曲',
'化权': '贪狼',
'化科': '天梁',
'化忌': '文曲'
},
'庚': {
'化禄': '太阳',
'化权': '武曲',
'化科': '太阴',
'化忌': '天同',
'化忌2': '天相' # 令东来:庚干双化忌(天同+天相)
},
'辛': {
'化禄': '巨门',
'化权': '太阳',
'化科': '文曲',
'化忌': '文昌'
},
'壬': {
'化禄': '天梁',
'化权': '紫微',
'化科': '左辅',
'化忌': '武曲'
},
'癸': {
'化禄': '破军',
'化权': '巨门',
'化科': '太阴',
'化忌': '贪狼'
}
}
# 四化的基本效应
SIHUA_EFFECTS = {
'化禄': {
'nature': 'highly_auspicious',
'element': '财',
'effect': '财运、喜庆、顺利、得财得福',
'score_multiplier': 1.5,
'color': 'green'
},
'化权': {
'nature': 'auspicious',
'element': '权',
'effect': '权力、掌控、积极、得权得势',
'score_multiplier': 1.3,
'color': 'blue'
},
'化科': {
'nature': 'auspicious',
'element': '名',
'effect': '名声、贵人、考试、得名得贵',
'score_multiplier': 1.2,
'color': 'yellow'
},
'化忌': {
'nature': 'inauspicious',
'element': '忌',
'effect': '阻碍、是非、损失、受损受阻',
'score_multiplier': -1.5,
'color': 'red'
}
}
# 十二宫位名称
PALACE_NAMES = [
'命宫', '兄弟宫', '夫妻宫', '子女宫',
'财帛宫', '疾厄宫', '迁移宫', '奴仆宫',
'官禄宫', '田宅宫', '福德宫', '父母宫'
]
# 宫位英文对照
PALACE_ENGLISH = {
'命宫': 'Life Palace',
'兄弟宫': 'Siblings Palace',
'夫妻宫': 'Marriage Palace',
'子女宫': 'Children Palace',
'财帛宫': 'Wealth Palace',
'疾厄宫': 'Health Palace',
'迁移宫': 'Travel Palace',
'奴仆宫': 'Friends Palace',
'官禄宫': 'Career Palace',
'田宅宫': 'Property Palace',
'福德宫': 'Fortune Palace',
'父母宫': 'Parents Palace'
}
# 四化影响最严重的宫位(化忌最怕落入这些宫位)
CRITICAL_PALACES_FOR_HUAJI = {
'命宫': {
'severity': 'very_high',
'reason': '直接影响本人,一生多波折'
},
'财帛宫': {
'severity': 'very_high',
'reason': '破财、财运不佳'
},
'夫妻宫': {
'severity': 'high',
'reason': '婚姻不顺、感情波折'
},
'官禄宫': {
'severity': 'high',
'reason': '事业受阻、工作不稳'
},
'疾厄宫': {
'severity': 'high',
'reason': '健康问题、疾病困扰'
}
}
# 四化最喜欢的宫位(化禄最好落入这些宫位)
BEST_PALACES_FOR_HUALU = {
'命宫': {
'effect': 'very_high',
'reason': '一生有福、贵人多助'
},
'财帛宫': {
'effect': 'very_high',
'reason': '财运旺盛、财源广进'
},
'官禄宫': {
'effect': 'very_high',
'reason': '事业顺利、升职加薪'
},
'福德宫': {
'effect': 'high',
'reason': '精神富足、生活幸福'
}
}
def get_sihua_by_gan(gan: str) -> dict:
"""
根据天干获取四化
Args:
gan: 天干(甲乙丙丁戊己庚辛壬癸)
Returns:
dict: 四化星曜 {'化禄': '廉贞', '化权': '破军', ...}
"""
return TIANGAN_SIHUA.get(gan, {})
def get_sihua_effect(sihua_type: str) -> dict:
"""
获取四化的基本效应
Args:
sihua_type: 四化类型(化禄/化权/化科/化忌)
Returns:
dict: 效应详情
"""
return SIHUA_EFFECTS.get(sihua_type, {})
def is_critical_huaji_palace(palace_name: str) -> bool:
"""
判断是否是化忌的关键宫位
Args:
palace_name: 宫位名称
Returns:
bool: 是否是关键宫位
"""
return palace_name in CRITICAL_PALACES_FOR_HUAJI
def get_palace_english_name(palace_name: str) -> str:
"""
获取宫位的英文名称
Args:
palace_name: 中文宫位名称
Returns:
str: 英文宫位名称
"""
return PALACE_ENGLISH.get(palace_name, palace_name)