chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

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

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

掃碼添加小助手

加入工程師交流群

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

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

開始之前,你要確保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)注

    57

    文章

    4869

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    【瑞薩RA6E2地奇星開發(fā)板試用】基于RA6E2+ESP8266在STA模式下數(shù)據(jù)透傳到Python服務(wù)器整體系統(tǒng)演示總結(jié)

    基于RA6E2+ESP8266在STA模式下數(shù)據(jù)透傳到Python服務(wù)器整體系統(tǒng)演示總結(jié) 1. 需求描述 1.1. 系統(tǒng)實現(xiàn)概述 使用RA6E2驅(qū)動 esp8266 WiFi模塊, 用串口調(diào)試助手
    發(fā)表于 12-28 20:16

    沒有專利的opencv-python 版本

    保留基礎(chǔ)功能,完全免費合規(guī)),支持 Python 3.13 的版本為 4.8.0.74 及以上,安裝命令: # 清華源加速,安裝最新穩(wěn)定版(自動匹配 Python 3.13) pip install
    發(fā)表于 12-13 12:37

    Termux中調(diào)試圣誕樹Python代碼

    調(diào)試代碼(逐行執(zhí)行) 用Python交互模式: 輸入python回車,進入>>>交互界面; 逐行輸入代碼,比如: >>>
    發(fā)表于 12-09 09:02

    termux調(diào)試python猜數(shù)字游戲

    用termux做一個猜數(shù)字游戲 下面是在Termux中創(chuàng)建猜數(shù)字游戲的步驟及完整實現(xiàn)方案,結(jié)合Python實現(xiàn)(最適配Termux環(huán)境): ? 一、環(huán)境準(zhǔn)備(Termux基礎(chǔ)配置) 1.
    發(fā)表于 08-29 17:15

    termux如何搭建python游戲

    安裝Python及包管理工具 ```bash apt install -y python python-pip# 自動安裝Python3
    發(fā)表于 08-29 07:06

    低功耗測量工具案例:使用 Nordic nRF9151-DK 開發(fā)板測量LTE不同節(jié)能模式

    如何為IoT選擇節(jié)能模式? PSM和eDRX分別適合的應(yīng)用場景是什么?本文使用Python腳本測試不同的LTE節(jié)能模式。
    的頭像 發(fā)表于 08-06 09:01 ?807次閱讀
    低功耗測量<b class='flag-5'>工具</b>案例:使用 Nordic nRF9151-DK 開發(fā)板測量LTE不同節(jié)能<b class='flag-5'>模式</b>

    python app不能運行怎么解決?

    ;python_agent[1241]: xmlrpc request method supervisor.stopProcess failed;python_agent[1241]: xmlrpc request method supervisor.stopProces
    發(fā)表于 08-06 06:27

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

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

    是德示波器DSOX3012A滾動模式設(shè)置指南

    是德示波器DSOX3012A作為一款高性能數(shù)字示波器,其滾動模式(Rolling Mode)為工程師提供了實時監(jiān)測動態(tài)信號變化的強大工具。本文將結(jié)合設(shè)備操作邏輯與工程實踐,詳細闡述滾動模式的設(shè)置步驟
    的頭像 發(fā)表于 05-13 15:55 ?696次閱讀
    是德示波器DSOX3012A滾動<b class='flag-5'>模式</b>設(shè)置指南

    基于LockAI視覺識別模塊:C++模板匹配

    模板匹配是一種在圖像中尋找特定模式的技術(shù)。它通過滑動一個模板圖像(較小的圖像)在輸入圖像上進行比較,找到最相似的區(qū)域。本實驗提供了一個簡單的模板匹配案例,并將其封裝為一個自定義函數(shù)performTemplateMatching,
    的頭像 發(fā)表于 05-13 14:14 ?767次閱讀
    基于LockAI視覺識別模塊:C++模板<b class='flag-5'>匹配</b>

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

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

    如何確保模擬示波器的輸入阻抗匹配?

    輸入阻抗匹配是確保信號完整性和測量精度的關(guān)鍵。模擬示波器通常提供 1 MΩ ± x%(高阻)和 50 Ω 兩種輸入阻抗模式,需根據(jù)被測信號特性選擇匹配模式。以下是確保
    發(fā)表于 04-08 15:25

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

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

    零基礎(chǔ)入門:如何在樹莓派上編寫和運行Python程序?

    在這篇文章中,我將為你簡要介紹Python程序是什么、Python程序可以用來做什么,以及如何在RaspberryPi上編寫和運行一個簡單的Python程序。什么是Python程序?
    的頭像 發(fā)表于 03-25 09:27 ?1977次閱讀
    零基礎(chǔ)入門:如何在樹莓派上編寫和運行<b class='flag-5'>Python</b>程序?

    設(shè)計評審利器——在線評審工具ReviewHub

    設(shè)計評審利器——在線評審工具ReviewHub傳統(tǒng)的評審會議模式,有著諸多挑戰(zhàn):評審人員時間難以統(tǒng)一?會議記錄過于繁瑣?如何快速將評審內(nèi)容與設(shè)計圖紙進行有效整合?如何妥善保存評審記錄?在科技飛速發(fā)展
    的頭像 發(fā)表于 03-21 11:02 ?809次閱讀
    設(shè)計評審利器——在線評審<b class='flag-5'>工具</b>ReviewHub