Python之str內部功能的介紹

林堯彬發表於2020-04-04

str內部功能的介紹

  name = 'eric'    name = str('eric')

  檢視變數屬於什麼型別

  print(type(name))

  檢視有哪些成員提供使用

  print(dir(name))

  任何一種語言,不管是Java,C++,C#,JavaScript還是Ruby等程式語言,字串都是很重要的,因此學好字串是非常有必要的。

__contains__()

一個字串是否包含另外一個字串
name = str('eric')
result1 = 'er' in name
result2 = name.__contains__('er6')
print(result1)
>>>True
print(result2)
>>>False

capitalize()

首字母大寫
name = 'eric'
result = name.capitalize()
print(result)
>>>Eric

casefold()

首字母小寫
name = 'Eric'
print(name.casefold())
>>>eric

swapcase()

大寫轉變成小寫,小寫轉變成大寫
name = 'Eric'
result = name.swapcase()
print(result)
>>>eRIC

center(param1,param2)

將字串居中
param1:總的佔位
param2:預設為空格,可以自定義
name = 'eric'
result1 = name.center(20)
result2 = name.center(20,'*')
print(result1)
>>> eric
print(result2)
********eric********

count(sub,start,end)

sub:字串
start:起始位置
end:結束位置
某一個字元出現的次數,或者某一個子字串出現的個數
name = '12323222323242342'
result = name.count('2')
print(result)
>>>9

encode()

轉碼
name = '小明'
result = name.encode('gbk')
print(result)
>>>b'\xd0\xa1\xc3\xf7'

endswith(suffix,start,end)

suffix:子字串
start:開始位置
end:結束位置
判斷一個字串是否以某個字元後者某個子字串結尾
name = 'alex'
result = name.endswith('x')
print(result)
>>>True

expandtabs()

將tab換成預設的8個空格
name = 'a\tlex' #\t:表示空格
result = name.expandtabs()
print(result)
print(len(result))
>>>a lex
>>>11 這裡由於把\t也算上了,因此為11

find(sub,start,end)

某個字元或者字串的位置
name = 'alex'
result = name.find('le')
print(result)
>>>1
注意:找不到等於-1

index()

某個字元或者字串的位置
name = 'alex'
result = name.index('le')
print(result)
找不到會報錯

format()

按照某種格式拼接字串
(1)
name = 'alex {0} as {1}'
result = name.format('sb','eric')
print(result)
>>>alex sb as eric
(2)
name = 'alex {name} as {id}'
result = name.format(name='sb',id='eric')
print(result)
>>>alex sb as eric

join()

用來做拼接
li = ['a','b','c','d']
result1 = "".join(li)
result2 = "_".join(li)
print(result1)
>>>abcd
print(result2)
>>>a_b_c_d

partition()

根據提示分割字串
name = "alexissb"
result = name.partition('is')
print(result)
>>>('alex', 'is', 'sb')

replace(str,newstr,num)
替換某個字元或子字串
name = "alexidsb"
result = name.replace("sb","bs")
print(result)
>>>alexidbs

splitlines()

根據行進行切割
name = """
aa
bb
cc"""
result = name.splitlines()
print(result)
>>>['', ' aa', ' bb', ' cc']

字串的內部功能很多,以上只是介紹了一些常用的和比較特殊的一些內部功能,想了解字串的其它功能可以查詢其原始碼。

轉載於:https://www.cnblogs.com/wanghao123/p/7976116.html

相關文章