用python写了个算命脚本

下班骑车回家脑海中突发灵感:

你说这车轱辘是圆的,地球是圆的,太阳是圆的,脑袋是圆的。万物之初之所以将万物设计成圆形肯定有它的意义。

那么能量化圆形的最好的数字就是圆周率π,而π是一组不重复且无穷尽的数字串,那么我们的生日必定会匹配到π上的某一处。然后我再取出这个匹配到的字符串的索引值,例如你的生日是19900506,这一串数一定会匹配到π上的某处八位数。

那么将这组数的第一位的索引值,也就是他是在π上的哪个位置的数取出来。比如是在第26592这个位置匹配到了你的生日。

我们再将这个数转成汉字:26592—>柠

然后再对这个字进行拆分就能窥探出你的前世今生啦。

哈哈哈哈哈,波哥太有才啦。当然如果多次匹配到,恭喜你,你就是天选之人啦,多个汉字组合就会给出你一句话。或许这句话就有某种意义也说不定吧!

想到这波哥到家花了点时间写了这个算命的脚本:

在这里插入图片描述
额。。。

因为我找到的π元数据只有100万位,匹配的精度还不够,只能出生年份+月份,如果把这个数字延长至1千万或者1亿,那么我上面的理论肯定是成立的。哈哈!不过波哥也加了一些自己的逻辑。

就当闭关修行的小插曲吧!没事瞎玩呗!算啦!

代码比较少,就贴这里啦!想玩玩的可以参考一下哈!

#coding:utf-8
import re

'''算命脚本,提取π的数字'''
new_filename = 'F:\python\\test\文件\\new_pi_ten_million_digits_string.txt'
#格式化源文件,将其变成一行数字
with open(new_filename) as file_objeck:
    pi=file_objeck.read().replace(" ", "").replace("\n","")

'''每次起始值都往前动一位,初始是0'''
start = 0
search = input('pleace enter your birthday: ')
''''''
numstr=''
newstr=''
while True:
    #在π上进行循环比对
    index = pi.find(search,start)
    if index ==-1:
        break
    #将索引值重新组成一个新的字符串
    numstr += str(index)
    print("%s found at index %s" % (index, chr(index)) )
    #整个数在π上进行比对,每次比对后向后面错一位再比对
    start = index +1
#将新组成的串分成4个一组
numList=re.findall(r'.{4}', numstr)
for num in numList:
    #因为只有2开头的5位十进制是能看懂的汉字所以重新拼接字符串
    newnum="2"+num
    #得到的汉字再拼接成一句话
    newstr +=chr(int(newnum))

print('上苍送给你的一句话是:',newstr)

如果你们没有找到更好的π源数据测试,可以用波哥的

关注公众号-波哥的IT人生,回复:算命脚本获取100万位圆周率元数据。

江湖规矩:如文章对您有帮助,请帮波哥转发分享、点赞哦!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章