亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python如何尋找主串中所有指定子串下標

 更新時間:2023年01月03日 10:52:55   作者:頭禿頭涼涼  
這篇文章主要介紹了python如何尋找主串中所有指定子串下標,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

python尋找主串中所有指定子串下標

該函數可實現顯示字符串中指定子串所有下標(首字下標)

def subStrIndex(substr,str):
? ? result = []
? ? index = 0
? ? while str.find(substr,index,len(str)) != -1:
? ? ? ? temIndex = str.find(substr,index,len(str))
? ? ? ? result.append(temIndex)
? ? ? ? index = temIndex + 1
? ? return result

其中substr中傳入需要的尋找子串,str為主串。

使用示例:

str = "我們去了天安門,天安門附近有很多人"
list = subStrIndex('天安門',str)
print(list)

輸出結果:[4,8]

其中4表示第一次出現“天安門”的下標,8表示第二次出現的下標。(由0開始)

python字符串常用操作

查找

1、find():檢測某個?串是否包含在這個字符串中,如果在,返回這個串開始的位置下標,否則則返回-1。

語法:字符串串序列列.find(?子串串, 開始位置下標, 結束位置下標)

mystr = "hello world and itcast and itheima and Python"
print(mystr.find('and')) # 12
print(mystr.find('and', 15, 30)) # 23
print(mystr.find('ands')) # -1

2、index():檢測某個?串是否包含在這個字符串中,如果在返回這個子串開始的位置下標,否則報異常。

語法:字符串串序列列.index(?子串串, 開始位置下標, 結束位置下標)

mystr = "hello world and itcast and itheima and Python"
print(mystr.index('and')) # 12
print(mystr.index('and', 15, 30)) # 23
print(mystr.index('ands')) # 報錯
  • rfind(): 和find()功能相同,但查找?方向為右側開始。
  • rindex():和index()功能相同,但查找?方向為右側開始。

3、count():返回某個?子串串在字符串串中出現的次數

語法:字符串串序列列.count(?子串串, 開始位置下標, 結束位置下標)

mystr = "hello world and itcast and itheima and Python"
print(mystr.count('and')) # 3
print(mystr.count('ands')) # 0
print(mystr.count('and', 0, 20)) # 1

修改

1、replace():替換

語法:字符串序列.replace(舊?串, 新?串, 替換次數)

mystr = "hello world and itcast and itheima and Python"
# 結果:hello world he itcast he itheima he Python
print(mystr.replace('and', 'he'))
# 結果:hello world he itcast he itheima he Python
print(mystr.replace('and', 'he', 10))
# 結果:hello world and itcast and itheima and Python
print(mystr)

字符串類型的數據修改的時候不能改變原有字符串,屬于不能直接修改數據的類型即是不可變類型。

2、split():按照指定字符分割字符串。

語法:字符串序列.split(分割字符, num)

num表示的是分割字符出現的次數,即將來返回數據個數為num+1個。

mystr = "hello world and itcast and itheima and Python"
# 結果:['hello world ', ' itcast ', ' itheima ', ' Python']
print(mystr.split('and'))
# 結果:['hello world ', ' itcast ', ' itheima and Python']
print(mystr.split('and', 2))

3、join():用一個字符或?串合并字符串,即是將多個字符串合并為個新的字符串。

語法:字符或?串.join(多字符串組成的序列)

list1 = ['chuan', 'zhi', 'bo', 'ke']

# 結果:chuan_zhi_bo_ke
print('_'.join(list1))

4、字符轉換

  • capitalize():將字符串第一個字符轉換成大寫
  • title():將字符串每個單詞首字母轉換成大寫
  • lower():將字符串中大寫轉小寫
  • upper():將字符串中?寫轉大寫
mystr = "hello world and itcast and itheima and Python"

# 結果:Hello world and itcast and itheima and python
print(mystr.capitalize())

# 結果:Hello World And Itcast And Itheima And Python
print(mystr.title())

# 結果:hello world and itcast and itheima and python
print(mystr.lower())

# 結果:HELLO WORLD AND ITCAST AND ITHEIMA AND PYTHON
print(mystr.upper())
  • lstrip():刪除字符串左側空白字符
  • rstrip():刪除字符串右側空?字符
  • strip():刪除字符串兩側空白字符


在這里插入圖片描述

  • ljust():返回一個原字符串左對齊,并使用指定字符(默認空格)填充?至對應?度的新字符串。

語法:字符串序列.ljust(?度, 填充字符)

  • rjust():返回?個原字符串右對?,并使?指定字符(默認空格)填充?至對應?度的新字符串,語法和ljust()相同。
  • center():返回?個原字符串居中對齊,并使?指定字符(默認空格)填充?對應長度的新字符串,語法和ljust()相同。


在這里插入圖片描述

判斷

  • startswith():檢查字符串是否是以指定?串開頭,是則返回 True,否則返回 False。如果設置開始和結束位置下標,則在指定范圍內檢查。
mystr = "hello world and itcast and itheima and Python "
# 結果:True
print(mystr.startswith('hello'))
# 結果False
print(mystr.startswith('hello', 5, 20))
  • endswith():檢查字符串是否是以指定?串結尾,是則返回 True,否則返回 False。如果設置開始和結束位置下標,則在指定范圍內檢查。
mystr = "hello world and itcast and itheima and Python"
# 結果:True
print(mystr.endswith('Python'))
# 結果:False
print(mystr.endswith('python'))
# 結果:False
print(mystr.endswith('Python', 2, 20))
  • isalpha():如果字符串至少有?個字符并且所有字符都是字母則返回 True, 否則返回 False。
  • isdigit():如果字符串只包含數字則返回 True 否則返回 False。
  • isalnum():如果字符串至少有一個字符并且所有字符都是字母或數字則返回 True,否則返回False。
  • isspace():如果字符串中只包含空白,則返回 True,否則返回False。
mystr1 = 'hello'
mystr2 = 'hello12345'
# 結果:True
print(mystr1.isalpha())
# 結果:False
print(mystr2.isalpha())
-----------------------------
mystr1 = 'aaa12345'
mystr2 = '12345'
# 結果: False
print(mystr1.isdigit())
# 結果:False
print(mystr2.isdigit())
-----------------------------
mystr1 = 'aaa12345'
mystr2 = '12345-'
# 結果:True
print(mystr1.isalnum())
# 結果:False
print(mystr2.isalnum())
-----------------------------
mystr1 = '1 2 3 4 5'
mystr2 = ' '
# 結果:False
print(mystr1.isspace())
# 結果:True
print(mystr2.isspace())

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • python之pymysql模塊簡單應用示例代碼

    python之pymysql模塊簡單應用示例代碼

    這篇文章主要介紹了python之pymysql模塊簡單應用示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • PyQt5 designer 頁面點擊按鈕跳轉頁面實現

    PyQt5 designer 頁面點擊按鈕跳轉頁面實現

    本文主要介紹了PyQt5 designer 頁面點擊按鈕跳轉頁面實現,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Python多進程通信Queue、Pipe、Value、Array實例

    Python多進程通信Queue、Pipe、Value、Array實例

    這篇文章主要介紹了Python多進程通信Queue、Pipe、Value、Array實例,queue和pipe用來在進程間傳遞消息、Value + Array 是python中共享內存映射文件的方法,需要的朋友可以參考下
    2014-11-11
  • python中協程實現TCP連接的實例分析

    python中協程實現TCP連接的實例分析

    在本篇文章中我們給大家分享了python中協程實現TCP連接的代碼示例內容,有需要的朋友們可以跟著學習下。
    2018-10-10
  • 對Python中的@classmethod用法詳解

    對Python中的@classmethod用法詳解

    下面小編就為大家分享一篇對Python中的@classmethod用法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Django models文件模型變更錯誤解決

    Django models文件模型變更錯誤解決

    這篇文章主要介紹了Django models文件模型變更錯誤解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • 如何利用Python實現簡易的音頻播放器

    如何利用Python實現簡易的音頻播放器

    這篇文章主要介紹了如何利用Python實現簡易的音頻播放器,需要用到的庫有pygame和tkinter,實現音頻播放的功能,供大家學習參考,希望對你有所幫助
    2022-03-03
  • jenkins配置python腳本定時任務過程圖解

    jenkins配置python腳本定時任務過程圖解

    這篇文章主要介紹了jekins配置python腳本定時任務過程圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10
  • python+requests+pytest接口自動化的實現示例

    python+requests+pytest接口自動化的實現示例

    這篇文章主要介紹了python+requests+pytest接口自動化的實現示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • Python Reduce函數的高級用法詳解

    Python Reduce函數的高級用法詳解

    這篇文章主要介紹了reduce函數的工作原理和應用,同時提供豐富的示例代碼,方便更好地理解如何使用reduce函數來輕松解決復雜的數據聚合問題,需要的可以參考下
    2023-11-11

最新評論