欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python基礎之字符串操作常用函數集合

 更新時間:2020年02月09日 12:49:43   作者:羅阿紅  
這篇文章主要介紹了Python基礎之字符串操作常用函數集合,需要的朋友可以參考下

Python字符串常用功能匯總

1、字符串的定義

#定義空字符串
>>> name=''
#定義非空字符串 >>> name="luoahong"
#通過下標訪問 >>> name[1] 'u'
#不能修改字符串的值,否則會報錯 >>> name[2] = "3" Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'str' object does not support item assignment

  特別提醒:字符串如果修改的話,字符串所在的內存地址也跟著變化,所以不可被修改,但是對于列表來說,可以修改是因為列表的內存是不變的,可以直接在上面修改

2、切片

特別提醒:字符串其實和列表,元組一樣,也是可以切片的

>>> name="ahong luo"
>>> name[1:4]  #取1到4之間的字符,包括1,不包括4
'hon'
>>> name[1:-1]  #取1到-1之間的字符,包括1,不包括-1
'hong lu'
>>> name[0:3] 
'aho'
>>> name[:3]   #從頭開始取,0可以省略,效果等同于name[0:3]
'aho'
>>> name[3:]   #想取到最后一個值,必須不能寫-1,只能這么寫
'ng luo'
>>> name[0::2]  #后面的2表示:每隔一個字符就取一個
'aoglo'
>>> name[::2]   #從頭開始0可以省略,效果跟上一句一樣
'aoglo'

3、首字母大寫(capitalize())

>>> name="ahong luo"
>>> name.capitalize()
'Ahong luo'
>>>

4、統(tǒng)計(count(sub,start=None,end=None))

sub:統(tǒng)計的字符,start:開始位,end:結束位,start和end默認為空時,則表示全部字符中去統(tǒng)計

>>> name="ahong luo"
#有開始和結束符

>>> name.count("o",1,5) 1
#從整個字符串中統(tǒng)計字符 >>> name.count("o")
2 >>>

5、center(width,fillchar)

如果width(字符寬度)小于等于(<=)字符串的長度,則返回原字符串,如果大于(>)字符串的,則用fillchar(填滿字符)填滿,處理結果等于width,字符串位于fillchar的中間

>>> name="ahong luo"
>>> len(name)
9
#10小于等于字符串寬度 >>> name.center(12,'-') '-ahong luo--'
#50大于字符串長度,并且字符串位于填充字符的中間 >>> name.center(50,'-') '--------------------ahong luo---------------------' >>> len(name.center(50,'-')) 50

6、ljust(width,fillchar)

如果字符串的長度大于width(字符寬度),則返回原字符串,如果小于width,則用fillchar(填滿字符)填滿,處理結果等于width,fillchar位于字符串的最右邊

>>> name="ahong luo"
>>> len(name)
9
#小于等于字符串的長度 >>> name.ljust(8,'-') 'ahong luo'
#大于字符串的長度 >>> name.ljust(50,'-') 'ahong luo-----------------------------------------'

 特別提醒:ljust中的l表示left的意思,表示從右向左

7.rjust(width,fillchar)

如果字符串的長度大于width(字符寬度),則返回原字符串,如果小于width,則用fillchar(填滿字符)填滿,處理結果等于width,fillchar位于字符串的最左邊

>>> name="ahong luo"
>>> len(name) 9 >>> name.rjust(8,'-') 'ahong luo' >>> name.rjust(50,'-') '-----------------------------------------ahong luo' 

 特別提醒:ljust中的l表示left的意思,表示從左向右

8、編碼(encode)

字符串的編碼和解碼,在這邊不用說了,我專門寫了一篇博客,詳細地址:猛擊這里

9、endwith(suffix,start=None,end=None)

判斷是否已suffix結尾,是返回True,否返回Fales

suffix:表示字符,start:開始位,end:結束位,start和end默認為空是,表示從整個字符串的結尾去判斷>>> name="ahong luo"

>>> name.endswith('0',1,4) False
>>> name.endswith('o') True >>> name.endswith('o',1,4) False

10、find(sub,start=None,end=None)

全文查找sub中第一個字符所在整個字符串中的索引值,沒有找到則返回-1

sub:字符或者字符串,start:開始位,end:結束位,start和end默認為空時,則在整個字符串中查找

>>> name="ahong luo"

#沒找到,則返回-1 >>> name.find("lu",1,4) -1 >>> name.find("a",2) -1 >>> name.find("lu") 6 >>> name.find("lu",1,6) -1 >>> name.find("lu",1,10) 6 >>>

11、rfind(sub,start=None,end=None)

從左向右查找sub中第一個字符所在整個字符串中的索引值,沒有找到則返回-1

>>> name="ahong luo"
#找到 >>> name.rfind("a") 0
#未找到 >>> name.rfind("a",2) -1

12、format()

①關鍵字拼接也是官方推薦

1
2
3
4
5
6
7
8
9
name = "alex"
age = 18
 
info = '''----info-----
name:{_name}
age:{_age}
 '''.format(_name=name,_age=age)
 
print(info)
 ②占位符拼接

1
2
3
4
5
6
7
8
9
name = "alex"
age = 18
 
info = '''----info-----
name:{0}
age:{1}
 '''.format(name,age)
 
print(info)

13、format_map()

數據格式,以字典形式傳入

>>> name="name:{name},age:{age}"
>>> name.format_map({"name":"luoahong",'age':23})
#輸出結果 'name:luoahong,age:23'

14、isalnum()

是否是一個阿拉伯數字和字母,它包含因為英文字符+(1-9)數字,中間不能有特殊字符

>>> age='23'
>>> age.isalnum()
True
#有特殊字符的 >>> age='ab23' >>> age='ab' >>> age.isalnum() True >>> age='ab' >>> age.isalpha() True >>>

15、isalpha()

是否是一個純的英文字符,包含大寫

>>> age = 'ab'
>>> age.isalpha()
True
#夾著數字
>>> age = 'ab23'
>>> age.isalpha()
False
#大寫
>>> age = 'Ab'
>>> age.isalpha()
True

 16、isdigit()

判斷是否是一個整數

17、isspace()

判斷是否是一個空格

#不是空格
>>> age = ' age'
>>> age.isspace()
False
#是空格
>>> age = ' '
>>> age.isspace()
True

 18、istitle()

 是否是一個標題(字符串中的每個單子首字母大寫)

#每個單詞的首字母是小寫
>>> name="luoahong" >>> name.istitle() False >>> name="luo a hong" >>> name.istitle() False
#每個單詞的首字母大寫 >>> name="Luo A Hong" >>> name.istitle() True >>> name="Luoahong" >>> name.istitle() True 

19、isupper()

是否是大寫,注意字符串必須全部是大寫才會返回True,否則返回False

#全部大寫
>>> name="LUO" >>> name.isupper() True
#小寫 >>> name="Luo" >>> name.isupper() False >>>

 20、join()

序列用某個字符拼接成一個字符串,注意的是,序列的元素必須是str類型

>>> a = ['1','2','3']
>>> '+'.join(a)
'1+2+3'

 21、lower()

字符串中的大寫字母轉換為小寫字母

>>> name="LuoAHong"
>>> name.lower()
'luoahong'
>>>

 22、upper()

字符串中的小寫字母轉換為大寫字母

>>> name="LuoAHong"
>>> name.upper()
'LUOAHONG'

 23、strip()

去掉左右兩邊的空格(space)和回車(\n)

>>> name= " \n luoahong \n"
>>> name.strip()
'luoahong'

 24、lstrip()

刪掉左邊到右的空格(space)和回車(\n)

>>> name= " \n luoahong \n"
>>> name.lstrip()
'luoahong \n'

 25、rstrip()

刪掉右邊到左邊的空格(space)和回車(\n)

>>> name= " \n luoahong \n"
>>> name.rstrip()
' \n luoahong'

至此,方法前有l(wèi)(left)和r(right)的函數,都是對之前函數的一個擴展,帶l的表示至始至終從右到左操作,記住左邊才是最終目的地,而帶r的至始至終都是從左到右,因為右邊才是它的終極目標

26、split()

分割函數,默認是以空格分割(space)生成一個列表,如果其他字符分割,輸入其他字符參數

>>> name="ahong luo"
#默認為空,按空格分割 >>> name.split() ['ahong', 'luo'] >>> name="ahong+luo"
#以"+"字符分割
>>> name.split("+") ['ahong', 'luo']
#以'\n'分割 >>> name="ahong\nluo" >>> name.split("\n") ['ahong', 'luo']

 27、splitlines()

以換行符分割,這個一般在windows上開發(fā),移到Linux上執(zhí)行,或者在Linux上開發(fā),移到Windows上執(zhí)行,因為換行在windows上是"\r\n",linux上是'\n'

>>> name="ahong\nluo"
>>> name.splitlines()
['ahong', 'luo']

 28、swapcase()

把大寫換成小寫,把小寫換成大寫

>>> name="Luo"
>>> name.swapcase()
'lUO'

29、startswith(prefix, start=None,end=None)

判斷是否以prefix開始,是返回True,否返回Fales

prefix:表示字符或者字符或者字符串,start:開始位,end:結束位,start和end默認為空是,表示從整個字符串的結尾去判斷

>>> name="ahong luo"
>>> name.startswith("luo")  #開頭找到"luo"字符串
False
>>> name.startswith("h",3,5)  #在索引3到5之間沒有找到以字符'h'開頭
False 

30、replace(old,new[, max])

old:將被替換的子字符串; new:新字符串,用于替換old子字符串;max:可選字符串, 替換不超過 max 次

>>> name="wo shi luo a hong"
>>> name.replace("shi","bushi")
'wo bushi luo a hong'
#原字符串沒有改變 >>> name.replace("shi","bushi",0) 'wo shi luo a hong' >>> name.replace("shi","bushi",1) 'wo bushi luo a hong'

31、zfill(width)

字符的長度是否大于等于(>=)with,如果比width小,則在字符串錢用0填充,如果>=width,則返回原字符串

>>> name="luoahong"
>>> len(name)
8
#width大于字符串長度 >>> name.zfill(11) '000luoahong'
#width小于等于字符串長度 >>> name.zfill(8) 'luoahong' >>>

相關文章

  • keras讀取h5文件load_weights、load代碼操作

    keras讀取h5文件load_weights、load代碼操作

    這篇文章主要介紹了keras讀取h5文件load_weights、load代碼操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Matplotlib繪圖基礎之配置參數詳解

    Matplotlib繪圖基礎之配置參數詳解

    Matplotlib?提供了大量配置參數,這些參數可以但不限于讓我們從整體上調整通過?Matplotlib?繪制的圖形樣式,下面我們就來看看如何巧妙的運用這些參數吧
    2023-08-08
  • Django與遺留的數據庫整合的方法指南

    Django與遺留的數據庫整合的方法指南

    這篇文章主要介紹了Django與遺留的數據庫整合的方法指南,Django是最具人氣的Python開發(fā)框架,需要的朋友可以參考下
    2015-07-07
  • 利用python-docx模塊寫批量生日邀請函

    利用python-docx模塊寫批量生日邀請函

    這篇文章主要為大家詳細介紹了利用python-docx模塊批量生日邀請函,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • Python NumPy數組裁切和數據類型的實現即原理詳解

    Python NumPy數組裁切和數據類型的實現即原理詳解

    這篇文章主要介紹了Python NumPy數組裁切和數據類型的實現即原理,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧
    2023-05-05
  • Python使用pickle模塊儲存對象操作示例

    Python使用pickle模塊儲存對象操作示例

    這篇文章主要介紹了Python使用pickle模塊儲存對象操作,結合實例形式分析了Python使用pickle模塊針對文件讀寫與轉換的相關操作技巧,需要的朋友可以參考下
    2018-08-08
  • python向MySQL數據庫插入數據的操作方法

    python向MySQL數據庫插入數據的操作方法

    這篇文章主要介紹了python向MySQL數據庫插入數據,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-11-11
  • Python生命游戲實現原理及過程解析(附源代碼)

    Python生命游戲實現原理及過程解析(附源代碼)

    這篇文章主要介紹了Python生命游戲實現原理及過程解析(附源代碼),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-08-08
  • 圖文詳解Python如何導入自己編寫的py文件

    圖文詳解Python如何導入自己編寫的py文件

    有時候自己寫了一個py文件,想要把它導入到另一個py文件里面,所以下面這篇文章主要給大家介紹了關于Python如何導入自己編寫的py文件的相關資料,需要的朋友可以參考下
    2021-11-11
  • nlp自然語言處理學習CBOW模型類實現示例解析

    nlp自然語言處理學習CBOW模型類實現示例解析

    這篇文章主要為大家介紹了nlp自然語言處理學習CBOW模型類實現示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪
    2022-04-04

最新評論