首頁 >後端開發 >Python教學 >詳解python3中str字串的使用方法

詳解python3中str字串的使用方法

高洛峰
高洛峰原創
2017-03-24 16:19:031800瀏覽

這篇文章主要介紹了python3中str(字串)的使用教程,文中介紹的非常詳細,對python3中各種str字符串的操作都包含這篇文章中了,需要的朋友可以參考學習,下面來一起看看吧。

本文主要介紹的是python3中對str(字串)的使用操作總結,文中介紹的非常詳細,需要的朋友們下面來一起看看吧。

__add__函數(在後面追加字串)

s1 ='Hello'
s2 = s1.__add__(' boy!')
print(s2)

#输出:Hello boy!

__contains__(判斷是否包含某字串,包含則傳回True)

s1 = 'Hello'
result = s1.__contains__('He')
print(result)

#输出:True

__eq__(判斷兩個字符串是否相同,相同則回傳True)

s1 = 'Hello'
s2 = 'How'
result = s1.__eq__(s2)
print(result)

#输出:False

 __format__

#占位

__getattribute__

#占位

__getitem__

#占位

__getnewargs__

大於或等於)

#占位
__gt__(大於)

print('b'.__ge__('a'))

#输出:True
__hash__

print('b'.__ge__('a'))

#输出:True
__iter__

#占位
__len__(返回字串長度)

#占位
__le__(小於或等於)

print('abc'.__len__())

#输出:3
__lt__(小於)

print('b'.__le__('a'))

#输出:False
__mod__

print('b'.__lt__('a'))

#输出:False
__mul__

#占位
__new__

#占位
__ne__

#占位
__repr__

#占位
__rmod__

#占位
__rmul__

#占位
__sizeof__

#占位
__str__(傳回自已)

#占位
capitalize(首字母大寫)

print('abc'.__str__())

#输出:abc
casefold(大寫轉換成小寫)

s = 'tom'
print(s.capitalize())

#输出:Tom
center (指定長度和填充字符,內容居中,填充字符留空則為空格)

s = 'TOM'
print(s.casefold())

#输出:tom
count(計算某個字串出現的個數,第二個參數:起始位置,第三個參數:結束位置)

s = 'Tom'
print(s.center(20,'-'))

#输出:--------Tom---------
encode(編碼)

s = 'aabbbcccccdd'
print(s.count('cc',3,11))

#输出:2
endswith(判斷字串是否以某個字元或字串結尾的,第二個參數:起始位置,第三個參數:結束位置)

s = "中文"
print(s.encode('gbk'))

#输出:b'\xd6\xd0\xce\xc4'
expandtabs(把1個tab鍵轉換成7個空格)

s = 'Projects'
print(s.endswith('ts'))
print(s.endswith('e',0,5))

#输出:True
# True
find(找出某個字元或字串的索引位置,第二個參數:起始位置,第三個參數:結束位置)

s = 'H\ti'
print(s.expandtabs())

#输出:H i
format (字串格式化/拼接)

s = 'Hello'
print(s.find('o'))
print(s.find('o',0,3)) #找不到返回-1

#输出:4
# -1
format_map

name = 'Tom'
age = 18
s = '{0}\'s age is {1}'.format(name,age)
print(s)

#或者

str = '{name}\'s age is {age}'
result = str.format(age=18,name='Tom')
print(result)

#输出:Tom's age is 18
index(尋找某個字元或字串的索引位置,和find不一樣是,如果字元不存在,會報錯)

#占位
isalnum(是否為字母或數字)

s = 'Hello'
print(s.index('o'))
print(s.index('e',0,3))

#输出:4
# 1
isalpha(是否為字母)

s = '!#'
print(s.isalnum())

#输出:False
isdecimal(是否為十進位數)

s = '123'
print(s.isalpha())

#输出:False
isdigit (是否為數字)

s = '123'
print(s.isdecimal())

#输出:True

#True: Unicode数字,,全角数字(双字节)
#False: 罗马数字,汉字数字
#Error: byte数字(单字节)
isidentifier(是否為標識符/變數名稱)

s = '123'
print(s.isdigit())

#输出:True

#True: Unicode数字,byte数字(单字节),全角数字(双字节),罗马数字
#False: 汉字数字
islower(是否全部為小寫字母)

s = '1num'
print(s.isidentifier())

#输出:False
#因为变量名不能以数字开头
isnumeric(是否為數字)

s = 'Hello'
print(s.islower())

#输出:False
isprintable(是否為可列印字元/能否原樣輸出)

s = '123'
print(s.isnumeric())

#输出:True

#True: Unicode数字,全角数字(双字节),罗马数字,汉字数字
isspace(是否為空格)

s = '\n'
print(s.isprintable())

#输出:False
istitle(是否為標題/每個字首字母大寫)

print(' '.isspace())
print('\t'.isspace())

#输出:True
# True
isupper(是否全部為大寫字母)

print('Hello Boy'.istitle())
print('hello boy'.istitle())

#输出:True
# False
join(將序列中的元素以指定的字元連接產生一個新的字串)

print('BOY'.isupper())
print('Boy'.isupper())

#输出:True
# False
ljust(指定長度和填充字符,內容左對齊,填充字符留空則為空格)

s = ['H','e','l','l','o']
print(''.join(s))
print('-'.join(s))

#输出:Hello
# H-e-l-l-o
lower(字符串全部換成小寫)

s = 'Hello'
print(s.ljust(10,'-'))

#输出:Hello-----
lstrip(移除字符串左側指定的字符,預設為空格)

s = 'TOM'
print(s.lower())

#输出:tom
maketrans(建立字符映射的轉換表,配合translate函數使用)

s = ' Tom'
print(s.lstrip())

#输出:Tom
partition( 指定分隔符,將字串進行分割)

intab = "abcde"
outtab = "12345"
trantab = str.maketrans(intab, outtab)

str = "Hello abc"
print (str.translate(trantab))

#输出:H5llo 123
replace(把字串中的old(舊字串) 替換成new(新字串),如果指定第三個參數max,則替換不超過max 次。 )

s = 'IamTom'
print(s.partition('am'))

#输出:('I', 'am', 'Tom')
rfind(從右邊找指定字串出現的位置,如果沒有符合項目則傳回-1)

s = 'Tom'
print(s.replace('m','o'))

#输出:Too
rindex(從右邊找指定字串出現的位置,如果沒有匹配項則報錯)

s = 'one two one'
print(s.rfind('one'))
print(s.rfind('one',0,6)) #指定起始和结束位置

#输出:8
#  0
rjust(指定長度和填充字符,內容右對齊,填充字符留空則為空格)

s = 'Hello'
print(s.rjust(10,'-'))

#输出:-----Hello

rpartition( 指定分隔符,从右边开始将字符串进行分割)

s = 'IamTom_IamTom'
print(s.rpartition('am'))

#输出:('IamTom_I', 'am', 'Tom')

rsplit(指定分隔符对字符串进行切片,如果指定第二个参数num,则只分隔num次,最后返回一个列表)

s = 'a b c d'
print(s.rsplit())
print(s.rsplit(' ',2)) #从右边开始,按空格分隔两次

#输出:['a', 'b', 'c', 'd']
#  ['a b', 'c', 'd']

rstrip(删除字符串末尾的指定字符,默认为空格)

s = '!!! I am Tom !!!'
print(s.rstrip('!'))

#输出:!!! I am Tom

split(指定分隔符对字符串进行切片,如果指定第二个参数num,则只分隔num次,最后返回一个列表)

s = 'a b c d'
print(s.split())
print(s.split(' ',2)) #从左边开始,按空格分隔两次

#输出:['a', 'b', 'c', 'd']
# ['a', 'b', 'c d']

splitlines(按换行符来分隔字符串,返回一个列表)

s = 'a\nb\nc'
print(s.splitlines()) #默认参数为False
print(s.splitlines(True)) #指定Ture参数,则保留换行符

#输出:['a', 'b', 'c']
#  ['a\n', 'b\n', 'c']

startswith(判断字符串是否以某个字符或字符串开头的,第二个参数:起始位置,第三个参数:结束位置)

s = 'Projects'
print(s.startswith('Pr'))
print(s.startswith('e',4,8))

#输出:True
#  True

strip(删除字符串前后的指定字符,默认为空格)

s = '!!! I am Tom !!!'
print(s.strip('!'))

#输出: I am Tom

swapcase(大小写互换)

s = 'I am Tom'
print(s.swapcase())

#输出:i AM tOM

title(转换成标题,就是每个单词首字母大写)

s = 'i am tom'
print(s.title())

#输出:I Am Tom

translate(根据maketrans方法创建的表,进行字符替换)

intab = "abcde"
outtab = "12345"
trantab = str.maketrans(intab, outtab)

str = "Hello abc"
print (str.translate(trantab))

#输出:H5llo 123

upper(小写转换成大写)

s = 'Hello'
print(s.upper())

#输出:HELLO

zfill(指定字符串的长度。原字符串右对齐,前面填充0)

s = 'Hello'
print(s.zfill(10))

# 输出:00000Hello

以上是詳解python3中str字串的使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn