我用Python摆摊算命易数卦象python占卜二进制

一直以来,中式占卜都是基于算命先生手工实现,程序繁琐(往往需要沐浴、计算天时、静心等等流程)。准备工作复杂(通常需要铜钱等道具),计算方法复杂,需要纯手工计算二进制并转换为最终的卦象,为了解决这个问题,笔者基于python实现了一套科学算命工具,用于快速进行占卜。

本文的算命方式采用八卦+周易+梅花易数实现,脚本基于python3.9.0开发。本人对于周易五行研究较浅,如有疏漏请见谅最终效果如图,在运行程序之后,会根据当前的运势自动获取你心中所想之事的卦象(本卦、互卦、变卦)

首先我们需要了解一些最基本的占卜知识,目前我国几种比较主流的占卜方式基本都是基于易演化而来。总体而言都是根据某些现象,得到不同的卦象,而不同的卦象最终会代表所占卜事情的开端,发展和结果。

太极生两仪,两仪生四象,四象生八卦

这句话相信大家在很多影视作品中都听说过,但很少有人知道它的真正含义,这句话其实概括了卦象产生的流程。

太极:代表一个绝对混沌的状态,是一个哲学观念,非要套用我们的客观世界,可以理解为是大爆炸之前宇宙的状态,所有的物理法则都不生效,当我们还未起卦时就处于这个状态。

两仪:同样是一个哲学观念,代表一个事物的两个对立状态,套用到客观世界可以是“生-死”、“黑-白”、“清-浊”,在占卜的过程中,我们通常会有“阴-阳”两个状态,为了方便记录,古人发明了两个符号代表这两个状态,在占卜的时候,一个这样的状态我们称之为一爻(yao)

四象:当我们将阴阳两两组合时,就可以得到四种不同的组合,古人称之为四象,注意,这里的四象同样是哲学层面的状态,它可以是“青龙白虎朱雀玄武”,也可以是东南西北四个方位,在占卜的时候,我们通常会用“太阴”、“少阴”、“太阳”、“少阳”来称呼这四象

八卦:当给我们在四象中增加一爻,也就是三个阴阳组合在一起的时候,我们可以得到八个组合,古人认为这八个组合可以代表自然界中的八类事物(八中状态),即是为八卦

当然,八个状态用来代表事情的发展方向还是不够用,于是古人又将八卦(单独的八卦称之为经卦)两两组合,从而得到了64个不同的别卦,易经中的六十四卦就是这么产生的

目前,国内的主流占卜基本都是通过不同的取数方式得到不同的别卦,最终判断事情的走向。其实对于程序员来说,可以吧两仪当做一个一位二进制数,有0、1两个状态。四象就是两位二进制数,有00,01,10,11四个状态。八卦则是三位二进制数,有000,、001、010、011、100、101、110、111四个状态

如何产生卦象

现在我们知道了卦象是如何演变的,但是我们还没有能够得到卦象的方式,其实在占卜的过程中,不同的占卜方式往往最大的区别就是起卦方式不同,我们这里采用梅花易数的方式起卦。

梅花易数起卦法(这里只截取两种起卦方式):

1、年月日时起卦

即以农历之年月日总和除以八,以余数为卦数求上卦;以年月日时总和除以八,以余数为卦数求下卦,再以年月日时总和除以六,以余数为动爻。

例:农历壬申年四月十一日巳时起卦:申年9数,巳时6数。

上卦为:(年+月+日)÷8,取余数。即:(9+4+11)÷8,此处无余数。

下卦为:(年+月+日+时)÷8,取余数。即:(9+4+11+6)÷8,余数为6为坎卦。

动爻数为:(年+月+日+时)÷6,取余数。即:(9+4+11+6)除以6,此处无余数。

此卦为:上卦为坤,下卦为坎,动爻为上爻。

2、直接以数起卦

这是一种简便而准确率极高的起卦方法。当有人求测某事时,可以让来人随意说出两个数,第一个数取为上卦,第二个数取为下卦,两数之和除以6,余数为动爻,或者可以随便借用其他能得到两数的办法起卦,如翻书、日历等等。

我们将梅花易数的起卦方式流程用程序员的话总结一下,流程如下

再获取一个随机数,对八取模,当做下挂(一个三位二进制数)

将上述两个随机数进行组合,得到一个六位二进制数

六位二进制数转化为十进制数并查表,得到本卦

取一个随机数,对6取模,将上述六位二进制数对应位数的0变为1,1变为0,然后转化为十进制数并查表,得到变卦

根据本卦和变卦查表,得到占卜结果

importjsonimportrandomimporttime

#别挂配置数据gua_data_path="data.json"

#别卦数据gua_data_map={

}fake_delay=10

#读取别卦数据definit_gua_data(json_path):withopen(gua_data_path,'r',encoding='utf8')asfp:globalgua_data_mapgua_data_map=json.load(fp)#爻图标映射yao_icon_map={0:"--",1:"---"}

#经卦名base_gua_name_map={0:"坤",1:"震",2:"坎",3:"兑",4:"艮",5:"离",6:"巽",7:"乾"}

#数字转化为二进制数组defbase_gua_to_yao(gua,yao_length=3):result=[]whilegua>=1:level=0ifgua%2==0else1gua//=2result.append(level)whilelen(result)

#二进制数组转化为数字defbase_yao_to_gua(array):array=array[:]whilelen(array)>0andarray[-1]==0:array.pop()result=0foriinrange(len(array)):ifarray[i]==0:continueresult+=pow(2,i)

returnresult

#打印一个挂defprint_gua(gua):yao_list=base_gua_to_yao(gua,6)up_yao_list=yao_list[0:3]up=base_yao_to_gua(up_yao_list)

print(yao_icon_map[up_yao_list[2]])print(yao_icon_map[up_yao_list[1]]+""+base_gua_name_map[up])print(yao_icon_map[up_yao_list[0]])

print("")

down_yao_list=yao_list[3:6]down=base_yao_to_gua(down_yao_list)print(yao_icon_map[down_yao_list[2]])print(yao_icon_map[down_yao_list[1]]+""+base_gua_name_map[down])print(yao_icon_map[down_yao_list[0]])

change_gua=base_yao_to_gua(change_yao_list)print_gua(change_gua)change_gua_code=str(base_gua_name_map[up_change_gua])+str(base_gua_name_map[down_change_gua])change_gua_data=gua_data_map[change_gua_code]print("变卦为:",change_gua_data['name'])print("辞:",change_gua_data['words'],"译:",change_gua_data['white_words'])print("象:",change_gua_data['picture'],"译:",change_gua_data['white_picture'])

defprint_a_wait_animation(tips,times):animation="|/-\\"idx=0foriinrange(times):print(tips+animation[idx%len(animation)],animation[idx%len(animation)],animation[idx%len(animation)],animation[idx%len(animation)],animation[idx%len(animation)],end="\r"),idx+=1time.sleep(0.1)

init_gua_data(gua_data_path)calculate_with_plum_flower()源代码

THE END
1.周易八卦算命,周易算命,生辰八字终身卦,免费易经算命周易八卦,即乾卦、坤卦、震卦、巽卦、坎卦、离卦、艮卦、兑卦,是周易占卜的基本元素,《易经》里面将八卦两两配合,翻成八八六十四卦,然后再用六十四卦来占筮吉凶运程。 卜易居周易八卦算命,是根据周易梅花易数的终生卦进行测算您的命运,当然,专业的终生卦论命更为复杂,这里的周易算命只是概论,作为参考。 https://www.buyiju.com/bgsm/
2.从八卦看生辰八字算命如何看八卦图解5、农历算命最准免费 八卦怎么算生辰八字(周易八卦生辰八字是怎么算出来的)神,八卦算生辰八字是以阴阳五行相生相克为基础根据一个人的出生时间(年、月、日、时)推算出八个干支包括年干、年支、月干、月支、日干、日支、时干、时支。阴阳五行相生相克关系为。 https://www.16757.com/ysh/bazi/5158.html
3.八卦算命口诀八卦算命口诀近日,很多都在关注天机泄露!决不外传的八字命理算命口诀分享(最全版)这方面的信息,下面就为大家分享一些关于天机泄露!决不外传的八 字命理算命口诀分享(最全版)的具体情况,大家一起来看看吧。一、太极流变四柱命理真传少,只把日柱作太极;柱柱皆可为太极,必会发现新天 http://www.360doc.com/content/24/0215/23/81883568_1114155457.shtml
4.八卦算生辰八字算命:详解如何利用八字算命许多人认为通过八字算命可以找到自己的贵人、开运之路,因此备受人们关注。 八字算命的基本理念是“天时地利人和”,认为人的一生命运受到天地之间的影响,而通过八字算命可以了解到自己的天时地利。而八卦算命则是结合了易经八卦的智慧,通过八卦的阴阳五行属性来分析一个人的八字,并据此来预测吉凶祸福。 通过八卦算生辰八字http://hmz6.com/news/2024-06-08-232544130
5.什么是算命术,哪些算命术需要用到八卦来排盘?什么是算命术,哪些算命术需要用到八卦来排盘?算命,即是指推测人命运休咎之行为,属玄学范畴。理论核心是阴阳五行、天干地支及伏羲八卦,水墨先生网的八字算命知识专题为大家呈现更多精彩纷呈的内容,大家快来看看吧! 什么是算命术? 算命,即是指推测人命运休咎之行为,属玄学范畴。狭义的算命是指对人生辰八字(四柱八字、https://www.smxs.com/mingli/bzzs_bzsm/110683.html
6.免费周易八卦算命五行八卦命运测试详细介绍文王八卦算命 文王八卦算命,以同圆内的圆心为界,画出相等的两个阴阳代表万物相互关系。阴鱼用黑色,阳鱼用白色,这是白天与黑夜的代表法。阳鱼的头部有个阴眼,阴鱼的头部有个阳眼,代表万物都在相互转化,互相渗透,阴中有阳,阳中有阴,阴阳相合,相生相克,即现代哲学中和矛盾对立统一规律代表法。 以圆心可https://m.k366.com/gj/9599.htm
7.四象生八卦!手把手教你如何用Python算命手把手教你如何用Python算命 本文介绍了一种使用Python实现的科学算命工具,结合八卦、周易和梅花易数,通过随机数和二进制转换得到卦象。文章详细解释了起卦的原理和流程,包括年月日时起卦和直接以数起卦的方法,并探讨了在当前大数据时代学习Python的重要性。https://blog.csdn.net/weixin_68789096/article/details/133992097
8.八卦在算命在的运用自古,有句话就是人的命运上天已经注定了。但是,这个已经注定我们要什么样,才能会去了解去探索自己的命运呢?古时,古人已经知道通过八卦来演算自己的命运。其中一种就是八字算命。 八字算命就是通过每个人的八字,然后运用八卦复杂的演算过程来算自己的命运。八卦这个从运古流传下来的东西,其本身就是一个神秘的东西。相https://www.d5168.com/bazisuanming/2013-06-24/2308.html
9.周易摇卦占卜app免费下载周易摇卦占卜安卓最新版v2.8.1下载周易摇卦软件是一款占卜软件,周易摇卦占卜软件是依据《易经》开展周易八卦预测,六十四卦,对感情、婚姻生活、工作、财气、、运程等都是有一个不错的预测,全方位助你做事成功!周易八卦免费算命生辰八字让您可以取得成功的解灾、助运装运。 做事占卜,简易功能强大,日常问卦必不可少! https://www.duote.com/android/652537.html
10.生辰八字算命app免费下载最准的八字算命软件八字算命排盘软件下面是小编特意为大家寻来的一些,有子平八字算命、易奇八字算命大师、 八字算命风水占卜、 灵机八字算命风水等等,小编在这里就不一一列举了,反正各个都有自己的特色,比如你到哪里买了房子之后还可以看风水好不好,能够给你心灵的慰藉,感兴趣的话就来当易网下载吧。http://www.downyi.com/key/bazisuanming/
11.生辰八字算命八字算命八字预测非常运势免费生辰八字算命产品对您的生辰八字进行八字算命,能够精准剖析人的八字命盘、流年大运、五行强弱、婚姻爱情、事业财运等等,帮您测八字、算八字、批八字。https://bz.99166.com/
12.八字排盘四柱八字在线排盘生辰八字查询免费算命排八字什么是八字算命? 易安居提醒大家:每个人出生的时间、出生的地点、出生的环境形成了一个特定的宇宙磁场,古人将其具体到用天干地支四柱表示的生辰八字,所以也称为四柱八字;年月日时为四柱,按干支纪年法每柱一干一支,共为八字。八字可以转换为"金、水、木、火、土"五行,相生相克。五行代表五种元素,作为构成宇宙万物https://www.zhouyi.cc/bazi/pp/