一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python強大的模式匹配工具—Pampy的使用

python爬蟲知識分享 ? 來源:python爬蟲知識分享 ? 作者:python爬蟲知識分享 ? 2022-06-17 16:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在自然語言處理界,模式匹配可以說是最常用的技術(shù)。甚至可以說,將NLP技術(shù)作為真實生產(chǎn)力的項目都少不了模式匹配。

什么是模式匹配呢?在計算機科學(xué)中,往往是檢查給定的序列或字符串中是否有符合某種模式的片段。比如說:“啊,你的AK-47打得真準”,如果我們將 “啊,你的_____打得真準 ” 作為一種模式,則會將AK-47匹配出來。

實現(xiàn)模式匹配往往都是用正則表達式,但是如果你想識別特別復(fù)雜的模式,編寫正則表達式就會變得非常非常麻煩。而Pampy這個項目能解決你不少的煩惱。https://github.com/santinic/pampy

下面是一個使用例子:

from pampy import match, _
input = [1, 2, 3]
pattern = [1, 2, _]
action = lambda x: "it's {}".format(x)
match(input, pattern, action)

1.準備

開始之前,你要確保Pythonpip已經(jīng)成功安裝在電腦上。

如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda, 它內(nèi)置了Python和pip.

請選擇以下任一種方式輸入命令安裝依賴
1. Windows 環(huán)境 打開 Cmd (開始-運行-CMD)。
2. MacOS 環(huán)境 打開 Terminal (command+空格輸入Terminal)。
3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.

pip installpampy

看到 Successfully installed pampy-0.3.0 則說明安裝成功。

2.使用

特性1:HEAD 和 TAIL

HEAD和TAIL能代表某個模式的前面部分或后面部分。

比如將特定模式后的元素都變成元組:

frompampy importmatch, HEAD, TAIL, _
x = [-1, -2, -3, 0, 1, 2, 3]
print(match(x, [-1, TAIL], lambdat: [-1, tuple(t)]))
# => [-1, (-2, -3, 0, 1, 2, 3)]

將特定模式前的元素設(shè)為集合,后面的元素設(shè)為元組:

frompampy importmatch, HEAD, TAIL, _
x = [-1, -2, -3, 0, 1, 2, 3]
print(match(x, [HEAD, _, _, 0, TAIL], lambdah, a, b, t: (set([h, a, b]), tuple(t))))
# => ({-3, -1, -2}, (1, 2, 3))

特性2:甚至能匹配字典中的鍵

在你不知道哪個鍵下有某個值的時候,這招非常好用:

frompampy importmatch, HEAD, TAIL, _
my_dict = {
'global_setting': [1, 3, 3],
'user_setting': {
'face': ['beautiful', 'ugly'],
'mind': ['smart', 'stupid']
}
}
result = match(my_dict, { _: {'face': _}}, lambdakey, son_value: (key, son_value))
print(result)
# => ('user_setting', ['beautiful', 'ugly'])

特性3: 搭配正則

不僅如此,它還能搭配正則一起使用哦:

importrefrompampy importmatch, HEAD, TAIL, _
defwhat_is(pet):
    returnmatch(
    pet, re.compile('(\w+),(\w)\w+鱈魚$'), lambdamygod, you: you + "像鱈魚"
    )
print(what_is('我的天,你長得真像鱈魚'))
# => '你像鱈魚'

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86789
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    雙工不匹配如何修復(fù)它

    ,確保所有相關(guān)設(shè)備的雙工模式一致,例如都設(shè)置為全雙工或半雙工。 啟用自動協(xié)商功能:推薦在所有端口啟用自協(xié)商功能,以便設(shè)備能夠自動匹配最佳的雙工模式和速度?,F(xiàn)代設(shè)備通常支持智能匹配,可以
    的頭像 發(fā)表于 07-02 09:46 ?115次閱讀

    python入門圣經(jīng)-高清電子書(建議下載)

    和Pygal 等強大Python 庫和工具介紹,以及列表、字典、if 語句、類、文件與異常、代碼測試等內(nèi)容; 第二部分將理論付諸實踐,講解如何開發(fā)三個項目,包括簡單的Python
    發(fā)表于 04-10 16:53

    ?如何在虛擬環(huán)境中使用 Python,提升你的開發(fā)體驗~

    。RaspberryPiOS預(yù)裝了Python3。干擾系統(tǒng)Python的安裝可能會給你的操作系統(tǒng)帶來問題。安裝第三方Python庫時,請務(wù)必使用正確的包管理工具。在Lin
    的頭像 發(fā)表于 03-25 09:34 ?343次閱讀
    ?如何在虛擬環(huán)境中使用 <b class='flag-5'>Python</b>,提升你的開發(fā)體驗~

    OSS Nokalva:適用于Python的OSS NAS工具

    執(zhí)行以下任務(wù):編寫軟件來創(chuàng)建、處理、調(diào)試和測試 NAS 消息。在處理 3GPP 版本中的更改時,此任務(wù)特別耗時且容易出錯。現(xiàn)在客戶可以專注于他們的核心業(yè)務(wù)。 用于 Python 的 OSS NAS 工具
    的頭像 發(fā)表于 02-09 09:16 ?467次閱讀
    OSS Nokalva:適用于<b class='flag-5'>Python</b>的OSS NAS<b class='flag-5'>工具</b>

    SPC200強大的音頻工具

    )配置,具有獨特的串行和并行路由組合,不同于任何動態(tài)處理器。將這種路由能力與模擬任何其他壓縮器的能力相結(jié)合,很明顯SPC2000是一個強大的音頻工具。 軟拐點 壓縮 “拖尾” 的過沖范圍。 模擬建模 SPC2000插件可以模擬各種老式和現(xiàn)代壓縮器的實現(xiàn)方式——包括串行和并
    的頭像 發(fā)表于 02-07 11:31 ?405次閱讀
    SPC200<b class='flag-5'>強大</b>的音頻<b class='flag-5'>工具</b>

    手持 / 便攜多普勒流速流量計:無懼復(fù)雜環(huán)境的強大測流工具

    手持 / 便攜多普勒流速流量儀是一種功能強大的測流工具,具有諸多特點和優(yōu)勢,使其能夠在各種復(fù)雜環(huán)境中準確測量流體的流速和流量。
    的頭像 發(fā)表于 11-22 09:35 ?905次閱讀
    手持 / 便攜多普勒流速流量計:無懼復(fù)雜環(huán)境的<b class='flag-5'>強大</b>測流<b class='flag-5'>工具</b>

    Python編程:處理網(wǎng)絡(luò)請求的代理技術(shù)

    在網(wǎng)絡(luò)編程中,代理技術(shù)扮演著至關(guān)重要的角色,尤其在處理網(wǎng)絡(luò)請求時。通過代理服務(wù)器,我們可以實現(xiàn)請求的轉(zhuǎn)發(fā)、緩存、負載均衡以及安全控制等功能。Python作為一種功能強大的編程語言,為提供了豐富的工具和庫,以便敏捷地實現(xiàn)和處理網(wǎng)絡(luò)
    的頭像 發(fā)表于 11-12 07:23 ?543次閱讀

    手寫圖像模板匹配算法在OpenCV中的實現(xiàn)

    OpenCV中的模板匹配是支持基于NCC相似度查找的,但是不是很好用,一個主要的原因是查找最大閾值,只能匹配一個,自己比對閾值,又導(dǎo)致無法正確設(shè)定閾值范圍,所以問題很多。于是我重新寫了純Python版本的NCC圖像模板
    的頭像 發(fā)表于 11-11 10:12 ?773次閱讀
    手寫圖像模板<b class='flag-5'>匹配</b>算法在OpenCV中的實現(xiàn)

    P2link——強大的內(nèi)網(wǎng)穿透和遠程訪問工具

    P2Link作為一款強大的內(nèi)網(wǎng)穿透和遠程訪問工具,可以幫助用戶輕松實現(xiàn)網(wǎng)絡(luò)連接和數(shù)據(jù)傳輸。特別適用于在復(fù)雜網(wǎng)絡(luò)環(huán)境中需要遠程訪問內(nèi)網(wǎng)資源的場景,如遠程辦公、設(shè)備管理和云服務(wù)等。
    的頭像 發(fā)表于 11-01 14:21 ?1034次閱讀

    功能強大的網(wǎng)絡(luò)通訊工具,支持各類TCP、UDP、HTTP的通訊協(xié)議

    功能強大的網(wǎng)絡(luò)通訊工具,支持各類TCP、UDP、HTTP的通訊協(xié)議,簡單方便,包含歷史記憶功能,體積小,服務(wù)器調(diào)試最合適
    發(fā)表于 09-05 11:51 ?0次下載

    第二屆大會回顧第25期 | OpenHarmony上的Python設(shè)備應(yīng)用開發(fā)

    Python以其簡單、易學(xué)和功能強大而聞名,有著廣泛的用戶群體。采用Python開發(fā)有助于降低OpenHarmony的學(xué)習(xí)門檻。如何在OpenHarmony上用Python開發(fā)設(shè)備應(yīng)用
    的頭像 發(fā)表于 08-27 11:53 ?1229次閱讀
    第二屆大會回顧第25期 | OpenHarmony上的<b class='flag-5'>Python</b>設(shè)備應(yīng)用開發(fā)

    使用Python進行Ping測試

    在網(wǎng)絡(luò)工程中,Ping測試是一種常用的網(wǎng)絡(luò)診斷工具,用于檢查網(wǎng)絡(luò)連接的可達性和響應(yīng)時間。Ping測試通過向目標主機發(fā)送ICMP(Internet Control Message Protocol
    的頭像 發(fā)表于 08-12 17:56 ?1010次閱讀
    使用<b class='flag-5'>Python</b>進行Ping測試

    使用Python批量連接華為網(wǎng)絡(luò)設(shè)備

    隨著網(wǎng)絡(luò)規(guī)模的擴大和設(shè)備數(shù)量的增加,手動配置和管理每臺網(wǎng)絡(luò)設(shè)備變得越來越不現(xiàn)實。因此,自動化工具和腳本變得尤為重要。Python語言以其簡潔性和強大的第三方庫支持,成為了網(wǎng)絡(luò)自動化領(lǐng)域的首選。本篇文章將詳細介紹如何使用
    的頭像 發(fā)表于 08-12 17:48 ?917次閱讀

    pytorch和python的關(guān)系是什么

    在當今的人工智能領(lǐng)域,Python已經(jīng)成為了最受歡迎的編程語言之一。Python的易學(xué)易用、豐富的庫和框架以及強大的社區(qū)支持,使其成為了數(shù)據(jù)科學(xué)、機器學(xué)習(xí)和深度學(xué)習(xí)等領(lǐng)域的首選語言。而在深度學(xué)習(xí)領(lǐng)域
    的頭像 發(fā)表于 08-01 15:27 ?3285次閱讀

    Python建模算法與應(yīng)用

    Python作為一種功能強大、免費、開源且面向?qū)ο蟮木幊陶Z言,在科學(xué)計算、數(shù)學(xué)建模、數(shù)據(jù)分析等領(lǐng)域展現(xiàn)出了卓越的性能。其簡潔的語法、對動態(tài)輸入的支持以及解釋性語言的本質(zhì),使得Python在多個平臺
    的頭像 發(fā)表于 07-24 10:41 ?1274次閱讀