python数据结构之字符串方法

1.capitalize():将字符串中首字母转换成大写,其余字符转换成小写

Str="this is string example from runoob ...wow!!!"
print("Str.capitalize():",Str.capitalize())#该方法返回一个首字母大写的字符串


str="123 hello  PYTHON"
print("str.capitalize():",str.capitalize())#如果首字符不是字母,那么不会转换成大写,但是其余字符依然转换成小写



输出:
Str.capitalize(): This is string example from runoob ...wow!!!
str.capitalize(): 123 hello  python

2.find():方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。

语法结构:

str.find(str, beg=0, end=len(string))
str1="Runoob example ... wow!!!"
str2="exam"
print(str1.find(str2))
print(str1.find(str2,5))
print(str1.find(str2,10))



输出:
7
7
-1

注意:字符串的find方法并不返回布尔值。如果返回的是0,则证明在索引0位置找到了子串。

3.jion(): join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串

语法结构:

str.join(sequence)
str1="-"
str2=""
str3=("r","u","n","o","o","b")
print(str1.join(str3))
print(str2.join(str3))


输出:
r-u-n-o-o-b
runoob

4.lower():返回字符串的小写字母版

5.replace():把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。

语法结构:
str.replace(old, new[, max])
str="www.w3school.com"
print("旧地址:",str)
print("新地址:",str.replace("w3school.com","runoob.com"))



输出:
旧地址: www.w3school.com
新地址: www.runoob.com

6.split():将字符串分割成序列

str="this is string example .... wow!"
print(str.split( ))
print(str.split('i',1))
print(str.split('w'))


输出:
['this', 'is', 'string', 'example', '....', 'wow!']
['th', 's is string example .... wow!']
['this is string example .... ', 'o', '!']

7.strip():用来移除字符串首尾指定的字符串

注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。

语法结构:

str.strip([chars]);
str = "*****this is **string** example....wow!!!*****"
print (str.strip( '*' ))  # 指定字符串 *

str = "123abcrunoob321"
print (str.strip( '12' ))  # 字符序列为 12,不考虑序列的顺序


输出:
this is **string** example....wow!!!
3abcrunoob3

8.translate():和replace一样可以替换字符串中的某些部分,但是和前者不同的是,该方法只处理单个字符,它的优势在于可以同时进行多个替换,有些时候比replace效率更高。

translate() 方法根据参数table给出的表(包含 256 个字符)转换字符串的字符,要过滤掉的字符放到 deletechars 参数中

语法结构:

str.translate(table)
bytes.translate(table[, delete])    
bytearray.translate(table[, delete]) 
  • table -- 翻译表,翻译表是通过 maketrans() 方法转换而来。
  • maketrans():接受两个参数,即两个等长字符串,表示第一个字符串中的每个字符都用第二个字符串中相同位置的字符替换。
    table=maketrans("cs","kz")
    
    
  • deletechars -- 字符串中要过滤的字符列表。

  • 返回翻译后的字符串,若给出了 delete 参数,则将原来的bytes中的属于delete的字符删除,剩下的字符要按照table中给出的映射来进行映射 。

  • intab = "aeiou"
    outtab = "12345"
    trantab = str.maketrans(intab, outtab)  # 制作翻译表
    
    str = "this is string example....wow!!!"
    print(str.translate(trantab))
    
    
    输出:
    th3s 3s str3ng 2x1mpl2....w4w!!!
    # 制作翻译表
    bytes_tabtrans = bytes.maketrans(b'abcdefghijklmnopqrstuvwxyz', b'ABCDEFGHIJKLMNOPQRSTUVWXYZ')
     
    # 转换为大写,并删除字母o
    print(b'runoob'.translate(bytes_tabtrans, b'o'))
    
    
    
    输出:
    b'RUNB'

猜你喜欢

转载自blog.csdn.net/qq_38360675/article/details/84954375
今日推荐