python str的一些操做及處理

1、str的定義:Python中凡是用引號引發來的數據能夠稱爲字符串類型,組成字符串的每一個元素稱之爲字符,將這些字符一個一個鏈接起來,而後在用引號起來就是字符串。git

2、str的簡單操做方法:api

conut(數)app

split(以...分割)ide

foemat(格式化輸出)spa

replace(元素替換)code

startswith(判斷是以...開頭,返回bool)orm

endswith(判斷是以...結尾,返回bool)對象

strip(去除首尾字符)blog

lstrip(去除首字符)索引

rstrip(去除尾字符)

a = 'Aab123Dd4Aa'
# conut(數)startswith(判斷是以...開頭) endswith(判斷是以...結尾)
print(a.count("b", 1, 4))  # 1
print(a.startswith("a", 1, 4))  # True
print(a.endswith("1", 1, 4))  # True

# split(以...分割)
print('title,Tilte,atre,'.split('i'))  # ['t', 'tle,T', 'lte,atre,']
print('title,Tilte,atre,'.split('t', 2))  # ['', 'i', 'le,Tilte,atre,']

# format 格式化輸出
print('{} {} {}'.format('egon', 18, 'male'))  # egon 18 male
print('{1} {0} {1}'.format('egon', 18, 'male'))  # 18 egon 18
print('{name} {age} {sex}'.format(sex='male', name='egon', age=18))  # egon 18 male

# strip 去除首尾字符
name = '*bar*ry**'
print(name.strip('*'))  # bar*ry
print(name.lstrip('*'))  # bar*ry**
print(name.rstrip('*'))  # *bar*ry

# replace 元素替換
name = 'alex say :my name is alex'
print(name.replace('alex', '替換', 1))  # 替換 say :my name is alex
View Code

find(返回元素索引,找不到則返回-1)

index(返回元素索引,找不到則報錯)

capitalize(首字母大寫)

swapcase(大小寫反轉)

title(每一個單詞首字母大寫)

a = 'Aab123Dd4Aa'

# find 返回索引,找不到返回-1
print(a.find("2", 1, 7))  # 4
# index 返回索引,找不到則報錯
print(a.index("D", 1, 7))  # 6

# capitalize swapcase title
b = 'alex,Taibai jinxiN'
print(b.capitalize())  # Alex,taibai jinxin
print(b.swapcase())  # ALEX,tAIBAI JINXIn
print(b.title())  # Alex,Taibai Jinxin

# center
c = 'asfht'
print(c.center(10, '*'))  # **asfht***
View Code

is系列

str.isalnum(是否由字母和數字組成)

str.isdigit(是否只由數字組成)

str.isalpha(是否只由字母組成)

str.isupper(是否只由大寫字母組成)

str.islower(是否只由小寫字母組成)

str.istitle(單詞首字母是否爲大寫)
str.isspace(是否只由空格組成)
str.isnumeric(是否只由數字組成,只針對unicode對象)
str.isdecimal(是否只由十進制組成)

d = 'tai Tbai123'
print(d.isalnum())  # 檢測字符串是否由字母和數字組成
print(d.isdigit())  # 是否只由數字組成
print(d.isalpha())  # 是否只由字母組成
print(d.isupper())  # 是否只由大寫字母組成
print(d.islower())  # 是否只由小寫字母組成
print(d.istitle())  # 單詞首字母是否爲大寫
print(d.isspace())  # 是否只由空格組成
print(d.isnumeric())  # 是否只由數字組成,只針對unicode對象
print(d.isdecimal())  # 是否只由十進制組成
View Code

 

小練習:若是用戶輸入一段包含字母數字的str,怎麼計算str中數字之和?(將相鄰的數字看做一個總體)

如,輸入:se123reg4rtey54 ,則計算123+4+54的結果

print('---用戶輸入字母數字串,計算所包含的數字之和---')
a = input('輸入字母或數字:')
for i in a:
    if i.isalpha():
        a = a.replace(i, ' ')
get_list = (a.split())

list = []
for f in get_list:
    list.append(int(f))

sum = sum(list)
print(sum)
View Code
相關文章
相關標籤/搜索