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

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

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

3天內不再提示

python判斷字符串是否包含子串

python爬蟲知識分享 ? 來源:python爬蟲知識分享 ? 作者:python爬蟲知識分享 ? 2022-04-08 15:15 ? 次閱讀

1、使用 in 和 not in

innot inPython 中是很常用的關鍵字,我們將它們歸類為 成員運算符。

使用這兩個成員運算符,可以讓我們很直觀清晰地判斷一個對象是否在另一個對象中,示例如下:

>>> "llo" in "hello, python"
True
>>>
>>> "lol" in "hello, python"
False

2、使用 find 方法

使用 字符串 對象的 find 方法,如果有找到子串,就可以返回指定子串在字符串中的出現位置,如果沒有找到,就返回 -1

>>> "hello, python".find("llo") != -1
True
>>> "hello, python".find("lol") != -1
False
>>

3、使用 index 方法

字符串對象有一個 index 方法,可以返回指定子串在該字符串中第一次出現的索引,如果沒有找到會拋出異常,因此使用時需要注意捕獲。

def is_in(full_str, sub_str):
    try:
        full_str.index(sub_str)
        return True
    except ValueError:
        return False

print(is_in("hello, python", "llo"))  # True
print(is_in("hello, python", "lol"))  # False

4、使用 count 方法

利用和 index 這種曲線救國的思路,同樣我們可以使用 count 的方法來判斷。

只要判斷結果大于 0 就說明子串存在于字符串中。

def is_in(full_str, sub_str):
    return full_str.count(sub_str) > 0

print(is_in("hello, python", "llo"))  # True
print(is_in("hello, python", "lol"))  # False

5、通過魔法方法

在第一種方法中,我們使用 in 和 not in 判斷一個子串是否存在于另一個字符中,實際上當你使用 in 和 not in 時,Python 解釋器會先去檢查該對象是否有 __contains__ 魔法方法。

若有就執行它,若沒有,Python 就自動會迭代整個序列,只要找到了需要的一項就返回 True 。

示例如下;

>>> "hello, python".__contains__("llo")
True
>>> "hello, python".__contains__("lol")
False

這個用法與使用 in 和 not in 沒有區別,但不排除有人會特意寫成這樣來增加代碼的理解難度。

6、借助 operator

operator模塊是python中內置的操作符函數接口,它定義了一些算術和比較內置操作的函數。operator模塊是用c實現的,所以執行速度比 python 代碼快。

在 operator 中有一個方法 contains 可以很方便地判斷子串是否在字符串中。

>>> import operator
>>>
>>> operator.contains("hello, python", "llo")
True
>>> operator.contains("hello, python", "lol")
False

7、使用正則匹配

說到查找功能,那正則絕對可以說是專業的工具,多復雜的查找規則,都能滿足你。

對于判斷字符串是否存在于另一個字符串中的這個需求,使用正則簡直就是大材小用。

import re

def is_in(full_str, sub_str):
    if re.findall(sub_str, full_str):
        return True
    else:
        return False

print(is_in("hello, python", "llo"))  # True
print(is_in("hello, python", "lol"))  # False

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

    關注

    1

    文章

    589

    瀏覽量

    21166
  • python
    +關注

    關注

    56

    文章

    4825

    瀏覽量

    86347
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    字符串在數據庫中的存儲方式

    數據庫是現代信息技術中存儲和管理數據的核心組件。字符串作為最常見的數據類型之一,在數據庫中的存儲方式對其性能和可擴展性有著重要影響。 數據類型 固定長度字符串 :如CHAR類型,它為每個字符串分配
    的頭像 發表于 01-07 15:41 ?747次閱讀

    字符串在編程中的應用實例

    字符串在編程中有著廣泛的應用,它們被用于表示文本數據、處理用戶輸入、構建動態內容等。以下是一些字符串在編程中的應用實例: 1. 用戶輸入與輸出 用戶輸入 :程序通常需要從用戶那里獲取輸入,這些輸入通
    的頭像 發表于 01-07 15:33 ?651次閱讀

    字符串字符數組的區別

    大多數編程語言中是一個高級數據結構,通常由語言的運行時環境直接支持。字符串通常以連續的字符序列存儲,但它們不僅僅是字符的簡單集合。字符串對象通常包含
    的頭像 發表于 01-07 15:29 ?1037次閱讀

    字符串反轉的實現方式

    函數自身調用來解決問題的方法。在字符串反轉中,遞歸可以用來逐個字符地構建反轉后的字符串。 實現步驟 基本情況 :如果字符串為空或只有一個字符
    的頭像 發表于 01-07 15:27 ?750次閱讀

    字符串處理方法 字符串轉數字的實現

    在編程中,將字符串轉換為數字是一個常見的需求。不同的編程語言有不同的方法來實現這一功能。以下是一些常見編程語言中的字符串轉數字的實現方法: PythonPython中,可以使用內置
    的頭像 發表于 01-07 15:26 ?802次閱讀

    字符串處理:4G模組軟件指南精要!

    最近一直有朋友咨詢我關于4G模組的字符串處理,今天我便把相關指南展示給大家。
    的頭像 發表于 11-17 09:57 ?497次閱讀
    <b class='flag-5'>字符串</b>處理:4G模組軟件指南精要!

    base64字符串轉換為二進制文件

    一些編程知識。以下是將Base64字符串轉換為二進制文件的一般步驟,以及一個簡單的Python示例代碼。 步驟: 獲取Base64字符串 :首先,你需要有一個Base64編碼的字符串
    的頭像 發表于 11-10 10:55 ?2720次閱讀

    鴻蒙原生應用元服務開發-倉頡基礎數據類型字符串類型

    插值字符串 插值字符串是一種包含一個或多個插值表達式的字符串字面量(不適用于多行原始字符串字面量),通過將表達式插入到
    發表于 09-18 10:43

    MATLAB(5)--字符串處理

    :兩個字符串里的每個字符依次按ASCII值大小逐個進行比較,比較的結果是一個數值向量,向量中的元素為1或者0。 字符串比較函數用于判斷字符串
    發表于 09-06 10:22

    labview字符串數組轉化為數值數組

    在LabVIEW中,將字符串數組轉換為數值數組是一項常見的任務,尤其是在處理數據采集、信號處理或用戶輸入時。 1. 理解LabVIEW的數據類型 在開始之前,了解LabVIEW中的數據類型是非
    的頭像 發表于 09-04 17:47 ?5107次閱讀

    labview字符串如何轉換為16進制字符串

    在LabVIEW中,將字符串轉換為16進制字符串是一個常見的需求,尤其是在處理數據通信和硬件接口時。LabVIEW提供了多種方法來實現這一轉換,包括使用內置函數、編寫VI(Virtual
    的頭像 發表于 09-04 15:54 ?4875次閱讀

    labview中如何實現字符串換行

    1. 字符串換行的基本概念 在LabVIEW中,字符串換行通常指的是在字符串中插入換行符,使得字符串在顯示或輸出時能夠自動換行。這在創建用戶界面或處理文本數據時非常有用。 2.
    的頭像 發表于 09-04 15:47 ?3616次閱讀

    labview中如何實現字符串選擇輸出

    在LabVIEW中實現字符串選擇輸出是一項常見的任務,它涉及到字符串處理、條件判斷和用戶界面設計等多個方面。由于LabVIEW是一種圖形化編程語言,其編程方式與傳統的文本編程語言有所不同,因此實現
    的頭像 發表于 09-04 15:44 ?2086次閱讀

    labview中常用的字符串函數有哪些?

    ) : 功能:該函數用于返回字符串包含字符個數。 應用場景:常用于需要計算字符串長度的場景,如文件命名、數據處理等。 連接字符串(Str
    的頭像 發表于 09-04 15:43 ?1730次閱讀

    labview字符串的四種表示各有什么特點

    。在LabVIEW中,字符串是一種基本的數據類型,用于表示文本信息。字符串在LabVIEW中有多種表示方式,每種方式都有其特定的應用場景和特點。以下是對LabVIEW中四種字符串表示方式的分析: 1.
    的頭像 發表于 09-04 15:40 ?1293次閱讀
    主站蜘蛛池模板: 夜间免费小视频 | 黄色大片在线免费观看 | 久久婷婷丁香七月色综合 | 欧美色老头| 日日操夜夜操免费视频 | 成人午夜毛片 | 视频一区二区在线 | h视频免费 | 亚洲高清成人 | 欧美特黄一级视频 | 伊人久久大香线蕉综合bd高清 | 日日噜噜夜夜狠狠tv视频免费 | 性天堂网| www.av片| 亚洲日本欧美 | 欧美伊人久久综合网 | 欧洲精品码一区二区三区免费看 | sihu国产午夜精品一区二区三区 | 亚洲国产精品乱码一区二区三区 | 黄色免费网站视频 | 日不卡在线 | 日日射天天射 | 国产又色又爽又黄的网站在线一级 | 天天在线精品视频在线观看 | av在线天堂网 | 性欧美视频| 11111日本网站 | 午夜大片免费完整在线看 | 精品视频卡1卡2卡3 精品视频免费看 | 免费在线视频你懂的 | 91在线播放免费不卡无毒 | 91福利国产在线观看网站 | 国产精品久久久久久福利 | 午夜看片福利 | 免费大片黄在线观看日本 | 综合se| 插吧插吧综合网 | 6月婷婷| 欧美日本一区二区 | 看全色黄大色大片免费久久 | 四虎www成人影院免费观看 |