Skip to content

repoog/ReName

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ReName

Python 3.6.4编写的使用中国古代古诗词起名字的程序,囊括13个朝代12,873名作者的共190,150首诗、词、诗经。 根据姓氏、性别、出生年月日时参数获取相应五行互补的名字,随机获得五组名字及诗词出处。

设计思路

通过阳历生辰年/月/日/时转换得到的农历生辰计算对应的八字,再将八字转换为五行,依据五行平衡的原理算出五行缺失,而后将诗词内容分词得到的双字(新生 儿起名不再接受单字名)依据汉字的“金木水火土”五行取得缺失五行对应的双字词语,作为最终的名字,通过1518测名网(1518.com)评分,选取分数超过95分的5组结果输出,同时输出该名字的出处。 并从国人姓名常用字中筛选对应的分词组合,以避免意义不吉利的词。

为确保名字出处的唯一性,分词结果去掉了数量超过1个的词语,如,以下是古诗词中出现频率最高的前18组词语:

  • 何处(847次)
  • 不知(791次)
  • 春风(715次)
  • 万里(688次)
  • 青山(640次)
  • 东风(629次)
  • 明月(605次)
  • 风雨(587次)
  • 不见(556次)
  • 江南(549次)
  • 秋风(545次)
  • 人间(538次)
  • 千里(535次)
  • 不可(520次)
  • 归来(499次)
  • 白云(495次)
  • 桃花(471次)
  • 夕阳(463次)

程序说明

  • ReName.py: 从古诗词分词结果中依据八字五行随机获取候选名字的程序。
  • lib/DB.py: 爬虫、分词程序进行存储的数据库操作程序。
  • lib/boxcalendar.py: 修改https://github.com/ccdjh/boxcalendar 模块的程序,去掉了不必要的程序和输出,用于转换阳历生辰为农历。
  • db/data.sql: 数据库结构SQL,包括诗词、分词、名字常用词在内的所有表结构及数据。

操作说明

python ReName.py -s 赵 -g M -y 2018 -m 7 -d 1 -H 17

[*] 出生日期:2018年7月1日, 17时
[*] 五行属性:土, 火

[-] 候选名字:赵护少
[-] 名字出处:
《和之美舟行杂诗八首·罾鱼者》
司马光(宋)
弱绦絓轻丝,尽日寒溪侧。护少近知无,溪鱼皆尔识。

[-] 候选名字:赵信雁
[-] 名字出处:
《龟堂独酌》
陆游(宋)
一榼兰溪自献酬,徂年不肯为人留。巴山频入初寒梦,江月偏供独夜愁。越石壮心鸡喔喔,子卿归信雁悠悠。天生我辈初何用,病骨支离又过秋。

[-] 候选名字:赵常尊
[-] 名字出处:
《上丞相平淮颂》
邢凯(宋)
皇矣圣宋,立国以仁。兼爱南北,肤暨介鳞。蠢芘逆全,假义俫臣。给以餽餫,列之簪绅。鹰饱别剔,浸无忌惮。边臣戕贼,居民涂炭。据我监城,喻口植干。继逼海陵,恣为泮奂。玺书飞下,皇威赫然。声罪致讨,仇激普天。许之节铖,副以金钱。奋忠效命,谁不争先。粤有世臣,虏使元帅。罗致英才,虓将云会。贾勇摧锋,前无坚对。逆全授首,信阳城外。昔淮蔡惟断成功。至平泽潞,伐谋群雄。圣君贤相,视昔则同。山水阳膻,一洗而空。钜伏就不,殊方仰德。鲸波不惊,狼烟永息。男耕女桑,四民安职。玉烛即调,金穰可必。圣君贤相,益固本根。广求民瘼,博尽忠言。屏除贪吏,澄浴治源。狂谋不起,国势常尊。一介微官,尝玷策府。颂我君相,或占古语。於万斯年,受天之佑。锡公纯虾,眉寿何鲁。

[-] 候选名字:赵续开
[-] 名字出处:
《病起幽园检校》
周弼(宋)
病起无情绪,池边日几回。虫声低覆草,螺壳细生苔。暑退芦将变,秋残蓼续开。久消环绕迹,全若未尝来。

[-] 候选名字:赵强说
[-] 名字出处:
《予去杭十六年而复来留二年而去平生自觉出处》
苏轼(宋)
以丑石赠行作三绝句当年衫鬓两青青,强说重临慰别情。衰发只今无可白,故应相对话来生。出处依稀似乐天,敢将衰朽较前贤。便従洛社休官去,犹有闲居二十年。在郡依前六百日,山中不记几回来。还将天竺一峰去,欲把云根到处栽。

About

Come up with a name using poem in ancient China.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages