Python识别璇玑图中诗的数量
Python识别璇玑图中诗的数量
一、璇玑图简介
璇玑图的读法有很多,这里我使用七七棋盘格的读法,在璇玑图中分离出一个七七棋盘格,如下表
吏 | 官 | 同 | 流 | 污 | 合 | 玩 | 痞 | 悍 | 蒙 | 骗 | 造 | 假 | 蛋 | 鸡 | 宴 | 请 | 客 | 友 | 朋 | 远 | 戚 | 偏 | 正 | 反 | 拨 | 乱 | 冤 | 隶 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
奸 | 贪 | 险 | 冠 | 眷 | 阉 | 佃 | ||||||||||||||||||||||
味 | 道 | 人 | 味 | 爱 | 公 | 荒 | ||||||||||||||||||||||
投 | 背 | 渣 | 辣 | 宠 | 猪 | 田 | ||||||||||||||||||||||
臭 | 终 | 灭 | 麻 | 姬 | 汗 | 地 | ||||||||||||||||||||||
相 | 诚 | 明 | 香 | 美 | 血 | 天 | ||||||||||||||||||||||
烂 | 俭 | 贤 | 馋 | 甜 | 粘 | 寒 | ||||||||||||||||||||||
妓 | 贱 | 贫 | 苦 | 断 | 礼 | 谦 | 妻 | 仙 | 女 | 桃 | 花 | 妹 | 嫣 | 姐 | 懒 | 惰 | 猪 | 狗 | 低 | 贱 | 妾 | 酸 | 流 | 泪 | 目 | 满 | 惨 | 婢 |
惨 | 妍 | 淡 | 廉 | 奸 | 艳 | 难 | ||||||||||||||||||||||
败 | 羞 | 雅 | 美 | 猴 | 心 | 家 | ||||||||||||||||||||||
花 | 月 | 和 | 勤 | 狐 | 嘴 | 破 | ||||||||||||||||||||||
佛 | 花 | 温 | 耕 | 鬼 | 手 | 颜 | ||||||||||||||||||||||
心 | 闭 | 娴 | 洁 | 神 | 眼 | 抢 | ||||||||||||||||||||||
虔 | 腼 | 恬 | 俭 | 欢 | 馋 | 欢 | ||||||||||||||||||||||
姊 | 俭 | 食 | 衣 | 胖 | 兄 | 短 | 弟 | 闲 | 柳 | 细 | 云 | 风 | 谦 | 爷 | 叛 | 雷 | 鸣 | 闪 | 电 | 悍 | 爹 | 严 | 管 | 制 | 规 | 家 | 善 | 娣 |
善 | 安 | 瘫 | 憨 | 烦 | 喘 | 谦 | ||||||||||||||||||||||
慈 | 龙 | 身 | 猫 | 厌 | 呼 | 戴 | ||||||||||||||||||||||
猫 | 虎 | 软 | 熊 | 疯 | 吸 | 佩 | ||||||||||||||||||||||
封 | 凰 | 心 | 仔 | 野 | 胸 | 宝 | ||||||||||||||||||||||
挡 | 凤 | 肠 | 免 | 狂 | 肺 | 剑 | ||||||||||||||||||||||
栏 | 健 | 忐 | 变 | 癫 | 惨 | 短 | ||||||||||||||||||||||
鸽 | 馆 | 舍 | 弃 | 反 | 姑 | 叛 | 子 | 贤 | 方 | 圆 | 规 | 法 | 严 | 哥 | 贪 | 仁 | 义 | 德 | 道 | 善 | 姨 | 残 | 心 | 狠 | 断 | 斩 | 弯 | 蛇 |
店 | 犬 | 廉 | 灿 | 侃 | 怨 | 癍 | ||||||||||||||||||||||
亏 | 惧 | 母 | 姐 | 伴 | 解 | 布 | ||||||||||||||||||||||
盈 | 猫 | 慈 | 艳 | 舞 | 化 | 衣 | ||||||||||||||||||||||
叔 | 女 | 爱 | 戏 | 刀 | 利 | 缝 | ||||||||||||||||||||||
舅 | 弱 | 君 | 龙 | 斩 | 让 | 勤 | ||||||||||||||||||||||
乱 | 软 | 侃 | 潭 | 尖 | 谦 | 俭 | ||||||||||||||||||||||
嫡 | 远 | 亲 | 疏 | 羞 | 伯 | 谗 | 娌 | 蛮 | 父 | 鬼 | 通 | 神 | 仙 | 鹅 | 卵 | 洁 | 石 | 藏 | 隐 | 山 | 蝎 | 患 | 病 | 痛 | 寒 | 门 | 艳 | 媳 |
针对上表所示的七七棋盘格图,在苏蕙璇玑图中,前人们总结了上百种很零碎的读法,让普通读者眼花缭乱。其实,我们可以用一句话就把前人的所有读法涵盖了,即,从这个棋盘格的任何一个“交叉结点字”起,沿任何一条线段阅读,当读完第4条线段时,一首七言四绝诗就诞生了,同时,该诗反序逆读后,也是另一首七言四绝诗!(注1:图3共有25个“交叉结点字”,它们分别是:吏、痞、鸡、戚、隶、婢、妾、姐、妻、妓、姊、弟、爷、爹、娣、蛇、姨、哥、子、鸽、嫡、娌、鹅、媳、蝎。注2:每个“线段”都由8个汉字连接而成,其中顶端的两个汉字就是两个“交叉结点字”)
二、算法实现
我们将上面的表格简化成一张图,如下所示:
代码如下:
class Gragh():def __init__(self, nodes, sides):'''nodes 表示点sides 表示边'''# self.sequense是字典,key是点,value是与key相连接的点self.sequense = {}# self.side是临时变量,主要用于保存与指定点相连接的点self.side = []for node in nodes:for side in sides:u, v = side# 指定点与另一个点在同一个边中,则说明这个点与指定点是相连接的点,则需要将这个点放到self.side中if node == u:self.side.append(v)elif node == v:self.side.append(u)self.sequense[node] = self.side # 统计出各个节点与哪一些节点直接连接self.side = []'''做五个循环,五个点确定四句诗'''def search(self):res = []for i in range(1, 26):for j in self.sequense[i]:for k in self.sequense[j]:if k != i:for z in self.sequense[k]:if z != j:for y in self.sequense[z]:if y != k:a = [i, j, k, z, y]if a not in res:res.append(a)return resif __name__ == "__main__":nodes = [i + 1 for i in range(25)]sides = [(1, 2), (2, 3), (3, 4), (4, 5), (1, 6), (1, 7), (2, 7), (3, 8), (4, 9), (5, 10), (5, 9), (6, 7),(7, 8), (8, 9), (9, 10), (6, 11), (7, 12), (7, 13), (8, 13), (9, 13),(9, 14), (10, 15), (11, 12), (12, 13), (13, 14), (14, 15), (11, 16), (12, 17), (13, 18), (13, 17),(13, 19), (14, 19), (15, 20), (16, 17), (17, 18), (18, 19), (19, 20), (16, 21), (17, 21), (17, 22),(18, 23), (19, 24), (19, 25), (20, 25), (21, 22), (22, 23), (23, 24), (24, 25)]G = Gragh(nodes, sides)print(len(G.search()))
运行结果
Python识别璇玑图中诗的数量相关推荐
- 【Pytorch神经网络实战案例】08 识别黑白图中的服装图案(Fashion-MNIST)
1 Fashion-MNIST简介 FashionMNIST 是一个替代 MNIST 手写数字集 的图像数据集. 它是由 Zalando(一家德国的时尚科技公司)旗下的研究部门提供.其涵盖了来自 10 ...
- python遍历文本文件统计字符个数_用python获取txt文件中关键字的数量
缘起: 开发人员需要tomcat中一个项目在一个月的访问请求量,因其他原因只剩下查找tomcat请求日志的方法获取,刚好最近在学习python,于是就用python摸索了下: 大体思路: 1.把相应t ...
- Python实现统计文本中各单词数量
Python实现统计文本中各单词数量 代码 运行结果 代码 import strings = 'not talk,not helo show me your code hello helo' for ...
- php户型图识别,买房必看!一分钟学会如何识别户型图中隐藏的猫腻
乐山房产/讯 户型图是房屋的平面空间布局图,简单的讲,就是用平面的方式把房屋的结构.格局以及尺寸画下来,使人更直观的了解房屋的走向布局.买房子有句常用语是"行不行,看户型",可想 ...
- Python识别表格图_使用Python究竟可以做什么?下面是Python的3个主要应用
原文传送门: https://medium.com/free-code-camp/what-can-you-do-with-python-the-3-main-applications-518db9a ...
- python软件长什么样图片_听说各大网站的色情图片识别都是用的这个程序?Python识别色情图...
2.2 程序原理 本程序根据颜色(肤色)找出图片中皮肤的区域,然后通过一些条件判断是否为色情图片. 程序的关键步骤如下: HSV 颜色模式 h > 0 and h < 35 and s & ...
- python找出图中所有闭合环_这可能是史上最全的 Python 算法集(建议收藏)
△蓝字可关注并标星 -数据分析展示就用DataHunter- 导读:本文是一些机器人算法(特别是自动导航算法)的Python代码合集.其主要特点有以下三点: 选择了在实践中广泛应用的算法: 依赖最少: ...
- python找出图中所有闭合环_求图中的所有闭合环
NetworkX是一个流行的Python包,用于处理许多科学Python发行版中包含的图形.它包括一些计算图圈的算法.尤其是,^{}会回答你的问题.在 这种方法的一个警告是必须将图转换为有向图.这意味 ...
- python 绘图 实现图中为字体添加下标、上标
python 在绘图添加图例时,一些数学符号或者公式常常包含上标和下标,这里简单描述了如何实现上述要求. 在数学公式中,上标用^号,下标用_符号. 如果上下标只有一个符号,则可以不用花括号括起来. 如 ...
最新文章
- python 自动填充表单,如何在Django / Python中自动填充PDF表单?
- linux shell touch更新文件时间
- a律13折线pcm编码例题_a律13折线pcm编码例题
- Java命令行界面(第12部分):CLAJR
- 记对一个key file crackme的破解
- 大佬分享:程序员必知的干货
- VMware 虚拟机如何连接网络,且远程可连接
- PyTorch-Transformers:一款可处理最先进NLP的惊人模型库
- WinError 126 asmjit.dll or one of its dependencies.
- 买到春节回家的票了吗?用Python刷票,还不快来试试!(建议收藏) 为回家做准备...
- office2016安装mathtype7.4教程
- Oracle触发器原理、创建、修改、删除
- 传说中开场晕过去一千多人的迈克杰克逊演唱会,有生之年请看下这个视频
- form表单提交后,2次刷新问题记录
- 数字电路3(逻辑函数的卡诺图化简法)
- UnityShader(四)基础光照
- 桂电七院数据结构实验报告一
- OSPF虚链接的基本配置
- deg怎么读_deg是什么意思_deg怎么读_deg翻译_用法_发音_词组_同反义词_degree(s) 度-新东方在线英语词典...
- webpack——JS模块化说明视频-张晓飞-专题视频课程