python3 str 的方法


字符串的常用方法。

·1,capitalize 首字母大寫

例子:

#字符串的操作
s = 'dmailT'
s1 = s.capitalize() # 首字母大寫
print(s1)

運行結果:

DmailT

2,upper全大寫,lower全小寫,代碼如下,以省略上面的代碼。

#全大寫,全小寫
s2 = s.upper()
s21 = s.lower()
print(s2,s21)

運行結果:

DMAILT dmailt

該方法的需求場景例子:不區分大小寫的驗證碼識別,代碼如下:

#驗證碼識別,不區分大小寫
s_str = 'AkJM'
print('請輸入驗證碼:%s'%s_str)
you_input = input("請輸入驗證碼,不區分大小寫.\n")
if s_str.upper() == you_input.upper():
    print("驗證通過!")
else:
    print("驗證失敗,請重新輸入!")

運行結果:

請輸入驗證碼:AkJM
請輸入驗證碼,不區分大小寫.
akjm
驗證通過!

 3,swapcase 大小寫翻轉,大寫變成小寫,小寫變成大寫,代碼如下,以省略上面的代碼。

#大小寫翻轉,大寫的變成小寫,小寫的變成大寫
s3 = s.swapcase()
print(s3)

運行結果:

DMAILt

4,title,被特殊字符或者數字分隔開的單詞首字母變成大寫。

#每個隔開(特殊字符或者數字)的單詞首字母大寫
s = ',are$you_ok9thank*you'
s4 = s.title()
print(s4)

運行結果:

,Are$You_Ok9Thank*You

5,center,文字居中,可以設置填充字符,默認是空白。

#center 字符串居中,可以設置空白填充字符
s = 'Damil!'
s5 = s.center(20,"*")
print(s5)

運行結果:

*******Damil!*******

6,expandtabs \t 將\t替換掉,\t前面長度低於8位,可以用空白填充到第八位(該方法不常用)

#expandtabs \t 將\t替換掉,\t前面長度低於8位,可以用空白填充到第八位
s = 'Dmail\tstr'
print(s)
s6 = s.expandtabs()
print(s6)

運行結果:

Dmail    str
Dmail   str

7,公共方法

#公共方法 len
s="adsjfdkjshf146456"
l = len(s)
print(l)

運行結果:

17

8 、startswith ,判斷字符串開頭 返回bool類型。(endswith同理,用來判斷某塊字符串以什么結尾)

#startswith 判斷字符串開頭 返回bool類型
s = 'DmailUserName'
s7 = s.startswith(s)
s71 = s.startswith(s,2,5)
print(s7,s71)

運行結果:

True False

9,find 查找字符串(參數2start 和 參數3 end,填寫起始位置可以進行切片查找。)

#find 查找字符串,找到了則返回對應元素的下標,否則返回-1。
s = 'helloWorld'
s8 = s.find('hello')
s81 = s.find('hellodd')
print(s8,s81,type(s8))

運行結果:

0 -1 <class 'int'>

10,strip 默認刪除空格,前后的空格。也可以刪除其他符號,比如想要刪除字符串前面后面的%和*號 ,s.strip('%*')

# strip 刪首尾的空格
s = '   Dmail   '
print(s)
s9 = s.strip()
print(s9)

運行結果:

   Dmail   
Dmail

 補充:rstrip 從后面刪,前面的不刪

            lstrip 從前面刪,后面的不刪

11,count 計算字符串包含多少個指定元素,返回包含個數。沒有就返回0。該方法可以將字符串切片進行查找。

#count
s = 'aaaaaasjjjaaaaajajja'
print(s.count('a'))

運行結果:

13

12,split 分割字符串,返回列表元素。

#split
s = 'Java|Python|C++'
l = s.split('|')
print(l,type(l))

運行結果:

['Java', 'Python', 'C++'] <class 'list'>

13,format的三種玩法 格式化輸出

#format的三種玩法 格式化輸出
s = '我叫{},今年{}歲,愛好{},再說一下,我叫{}。'.format('狗子',2,'啃骨頭','狗子')
print(s)
s = '我叫{0},今年{1}歲,愛好{2},再說一下,我叫{0}。'.format('狗子',2,'啃骨頭','傻逼')
print(s)
s = '我叫{name},今年{age}歲,愛好{hobby},再說一下,我叫{name}。'.format(name='狗子',age=2,hobby='啃骨頭')
print(s)

運行結果:

我叫狗子,今年2歲,愛好啃骨頭,再說一下,我叫狗子。
我叫狗子,今年2歲,愛好啃骨頭,再說一下,我叫狗子。
我叫狗子,今年2,愛好啃骨頭,再說一下,我叫狗子。

14,replace,替換字符串。

#replace 替換字符串
s = '狗子今天來到街道,看到了一根骨頭,還認識到了另外一個狗子。'
s10 = s.replace('狗子','小貓')
s10 = s10.replace('一根骨頭','一片小魚干')
print(s10)

運行結果:

小貓今天來到街道,看到了一片小魚干,還認識到了另外一個小貓。

 

15,is系列

#is 判斷是否只由數字組成
s = '123456'
s11  = s.isdigit()
print(s11,type(s11))
#is 判斷是否為數字或者字母組成
s = 'aaammmdm2323'
s11 = s.isalnum()
print(s11,type(s11))
#is 判斷是否只有字母組成
s11 = s.isalpha() 
print(s11,type(s11))

運行結果:

True <class 'bool'>
True <class 'bool'>
False <class 'bool'>

 

其他方法查找:

https://www.runoob.com/python3/python3-string.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM