成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

python實現(xiàn)成語找一找

enrecul101 / 3671人閱讀

摘要:網(wǎng)上經(jīng)常有些從個字里面找成語的小游戲,那么怎么用把成語組合找出來呢準備詞典從網(wǎng)上下載一個成語的詞典每行一個成語,保存成。

網(wǎng)上經(jīng)常有些從N個字里面找成語的小游戲,那么怎么用python把成語組合找出來呢?

準備詞典

從網(wǎng)上下載一個成語的詞典、每行一個成語,保存成 word.txt。

代碼實現(xiàn)

1.構(gòu)建一個首字-成語的字典模型 predict.model

import pickle
from pathlib import Path

seq = Path("word.txt").read_text().split("
")
predict = {}
for word in seq:
    pre = list(word)[0]
    predict.setdefault(pre, [])
    predict[pre].append(word)
    
with open("predict.model", "wb") as f:
    f.write(pickle.dumps(predict))

2.實現(xiàn)成語查找的類

import pickle

class Idiom(object):
    def __init__(self, model_path="predict.model"):
        self.predict = pickle.loads(Path(model_path).read_bytes())
        
    def find(self, text):
        # 生成單字集合
        chas = set(text)
        for cha in chas:
            # 獲取單字對應的備選成語
            words = self.predict.get(cha, [])
            if not words:
                continue
            for word in words:
                # 檢查備選成語的字是否在單字集合中
                for i in word:
                    if i not in chas:
                        break
                # for循環(huán)執(zhí)行完即備選成語由單字集合中的字組成
                else:
                     print(word)

3.現(xiàn)在就可以開始找成語啦

# 網(wǎng)上一般的成語游戲的備選字比這里少很多
s = """月光如流水一般,靜靜地瀉在這一片葉子和花上。
       薄薄的青霧浮起在荷塘里。
       葉子和花仿佛在牛乳中洗過一樣;又像籠著輕紗的夢。
       雖然是滿月,天上卻有一層淡淡的云,所以不能朗照;
       但我以為這恰是到了好處——酣眠固不可少,小睡也別有風味的。
       月光是隔了樹照過來的,高處叢生的灌木,落下參差的斑駁的黑影,峭楞楞如鬼一般;
       彎彎的楊柳的稀疏的倩影,卻又像是畫在荷葉上。
       塘中的月色并不均勻;但光與影有著和諧的旋律,如梵婀玲上奏著的名曲。""")
obj = Idiom()
obj.find(s)

找出來的成語有:

一天一地、別有風味、別有天地、恰到好處、落花流水、水流花落、
水天一色、流水落花、風輕云淡、月黑風高、高高在上、云淡風輕、
能上能下、不上不落、不上不下、不以為然、不差上下、名高天下、
名滿天下、天下為籠、天高地下、參差不一

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/41368.html

相關(guān)文章

  • 初識gauge自動化測試框架

    摘要:官方網(wǎng)站介紹是一個輕量級的跨平臺測試自動化工具,可以使用不同的語言中編寫測試用例的能力。本質(zhì)上是一個行為驅(qū)動開發(fā)測試框架。支持測試報告可以生成格式的報告。 官方網(wǎng)站:https://docs.gauge.org/latest... 介紹: Gauge是一個輕量級的跨平臺測試自動化工具,可以使用不同的語言中編寫測試用例的能力。Gauge本質(zhì)上是一個BDD(行為驅(qū)動開發(fā))測試框架。如果你了...

    EsgynChina 評論0 收藏0
  • PHP包管理工具--Composer自動加載

    摘要:接觸過的同學都知道使用作為項目的包管理工具但是并不是獨有的是的包管理工具這兩者的關(guān)系就像于于一樣但是發(fā)現(xiàn)真正項目中使用還是比較少的所以這里這里寫一遍文章介紹的使用幫助那些對于還是有點模糊的同學此文跟沒有任何聯(lián)系安裝的方式就不講了具體安裝方式 接觸過Laravel的同學都知道,Laravel使用Composer作為項目的包管理工具.但是Composer并不是Laravel獨有的,Comp...

    xiaoqibTn 評論0 收藏0
  • 一個人,一個月,開發(fā)十款小程序,他是怎么做到的?

    摘要:幾個月之內(nèi)就開發(fā)了幾十款小程序的開發(fā)者陳林,有著自己的解答。資深小程序開發(fā)者陳林,是小程序風口下的探索者之一,借助小程序無需安裝,易于傳播的特點,陳林以小游戲類目為核心,配合小程序間可相互跳轉(zhuǎn)的特性。 showImg(https://segmentfault.com/img/remote/1460000020165110);你是一條產(chǎn)品經(jīng)理,現(xiàn)在要出一個大型需求的方案,你會怎么做? ...

    muddyway 評論0 收藏0
  • 跨時區(qū)時間展示

    摘要:碰到一個問題,關(guān)于時間存儲時區(qū)的問題。使用的是一個工具,可以使用,無奈存的時間是按照時區(qū)的。然后我就思考了,很多情況下,工作中默認的時區(qū)就在東八區(qū),面向用戶也在這里,完全沒考慮其他時區(qū)的情況。 最近作為小白在學習 golang,只能說更多的踩坑,才能更好的學習。 打算使用 go-web 寫點練手的內(nèi)容。 碰到一個問題,關(guān)于 mysql 時間存儲時區(qū)的問題。 使用的是 goose ...

    cheng10 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<