def generate_hexagram():
hexagram = []
for _ in range(6):
toss = [random.choice([0, 1]) for _ in range(3)]
if sum(toss) == 0: 3个反面,变爻
hexagram.append(6) 阴变阳
elif sum(toss) == 3: 3个正面,变爻
hexagram.append(9) 阳变阴
elif sum(toss) 1.5: 2或3个正面,老阳或阳
hexagram.append(1) 阳
else: 0或1个正面,老阴或阴
hexagram.append(0) 阴
return hexagram[::1] 反转列表,因为我们是从下往上生成的爻
def interpret_hexagram(hexagram):
这里只是一个非常简单的解释,实际的解释要复杂得多
changing_lines = [i for i, x in enumerate(hexagram) if x in [6, 9]]
if changing_lines:
print(有变爻在第{}爻。.format(', '.join(map(str, [x+1 for x in changing_lines]))))
else:
print(无变爻。)