在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

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

python爬蟲知識分享 ? 來源:python爬蟲知識分享 ? 作者:python爬蟲知識分享 ? 2022-06-17 16:54 ? 次閱讀

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

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

實現模式匹配往往都是用正則表達式,但是如果你想識別特別復雜的模式,編寫正則表達式就會變得非常非常麻煩。而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已經成功安裝在電腦上。

如果你用Python的目的是數據分析,可以直接安裝Anaconda, 它內置了Python和pip.

請選擇以下任一種方式輸入命令安裝依賴
1. Windows 環境 打開 Cmd (開始-運行-CMD)。
2. MacOS 環境 打開 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)]

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

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('我的天,你長得真像鱈魚'))
# => '你像鱈魚'

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • python
    +關注

    關注

    56

    文章

    4822

    瀏覽量

    85855
收藏 人收藏

    評論

    相關推薦

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

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

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

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

    SPC200強大的音頻工具

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

    Python編程:處理網絡請求的代理技術

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

    手寫圖像模板匹配算法在OpenCV中的實現

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

    P2link——強大的內網穿透和遠程訪問工具

    P2Link作為一款強大的內網穿透和遠程訪問工具,可以幫助用戶輕松實現網絡連接和數據傳輸。特別適用于在復雜網絡環境中需要遠程訪問內網資源的場景,如遠程辦公、設備管理和云服務等。
    的頭像 發表于 11-01 14:21 ?763次閱讀

    第二屆大會回顧第25期 | OpenHarmony上的Python設備應用開發

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

    使用Python批量連接華為網絡設備

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

    pytorch和python的關系是什么

    在當今的人工智能領域,Python已經成為了最受歡迎的編程語言之一。Python的易學易用、豐富的庫和框架以及強大的社區支持,使其成為了數據科學、機器學習和深度學習等領域的首選語言。而在深度學習領域
    的頭像 發表于 08-01 15:27 ?2952次閱讀

    Python建模算法與應用

    Python作為一種功能強大、免費、開源且面向對象的編程語言,在科學計算、數學建模、數據分析等領域展現出了卓越的性能。其簡潔的語法、對動態輸入的支持以及解釋性語言的本質,使得Python在多個平臺
    的頭像 發表于 07-24 10:41 ?980次閱讀

    Python在人工智能領域的應用

    功能強大的編程語言,成為了人工智能研究和開發的首選工具之一。本文將深入探討Python在人工智能領域的廣泛應用,分析其優勢、具體應用案例以及未來的發展趨勢。
    的頭像 發表于 07-02 18:20 ?1875次閱讀

    如何使用Python進行神經網絡編程

    。 為什么使用PythonPython是一種廣泛使用的高級編程語言,以其易讀性和易用性而聞名。Python擁有強大的庫,如TensorFlow、Keras和PyTorch,這些庫提
    的頭像 發表于 07-02 09:58 ?625次閱讀

    常見的數據采集工具的介紹

    Scraping) 網絡爬蟲是一種自動化的程序,用于從互聯網上提取信息。它們可以訪問網頁,解析HTML內容,并從中提取所需的數據。 Scrapy : 一個快速且強大Python框架,用于抓取網站數據。 Beautiful Soup : 一個
    的頭像 發表于 07-01 14:51 ?1460次閱讀

    原理圖工具Jupiter強大的連線功能

    利于電路設計和檢查。很多專業的電路設計軟件(原理圖Jupiter)都提供了強大的連線工具,以滿足各種復雜電路的連線需求。連線功能主要具有哪些作用:表示電路連接。連線可清晰地
    的頭像 發表于 05-24 18:35 ?1473次閱讀
    原理圖<b class='flag-5'>工具</b>Jupiter<b class='flag-5'>強大</b>的連線功能

    華為云正式發布CodeArts IDE for Python

    近日,華為云正式發布CodeArts IDE for Python,這是一款內置華為自主創新的Python語言服務,提供智能編程、靈活調試能力的可擴展桌面開發工具,為華為云開發者提供卓越Pyt
    的頭像 發表于 05-08 14:58 ?673次閱讀
    主站蜘蛛池模板: 手机在线看福利 | 色吧综合 | 在线观看亚洲天堂 | bt种子在线搜索 | 色多多在线观看播放 | www.黄网| 手机在线一区二区三区 | 精品亚洲午夜久久久久 | 三级全黄a | 嫩草影院入口一二三免费 | 色综合99 | 天天舔天天射天天操 | 亚欧美色 | 9久久99久久久精品齐齐综合色圆 | 网站在线播放 | 狠狠摸狠狠操 | 日本不卡视频一区二区 | 天天综合色天天综合网 | 天堂中文在线网 | 午夜色视频在线观看 | 亚洲天堂一区二区三区 | 欧美.亚洲.日本一区二区三区 | 天天摸天天做天天爽天天弄 | videosxxoo18欧美| 欧美成人一区二区三区在线电影 | 五月天丁香婷 | vr性资源在线观看 | 色多多www视频在线观看免费 | 成人精品在线观看 | 国产精品情人露脸在线观看 | 狠狠色丁香婷婷综合小时婷婷 | 激情在线网站 | 国产精品特黄毛片 | 免费一级欧美片在线观看 | 美女扒开尿囗给男生桶爽 | 免费大片黄国产在线观看 | 四虎黄色 | 一区二区三区电影 | 亚洲国产综合视频 | 日本黄色免费大片 | 美女被羞羞产奶视频网站 |