Python3学习之路~2.3 字符串操作

字符串操作

特性:不可修改 

name="my \tname is alex"
print(name.capitalize())    #首字母变大写
print('Alex LI'.casefold()) #大写全部变小写,返回alex li
print(name.count('a'))      #计算字符串中a的个数
print(name.center(50,'-'))  #一共打印50个字符,如果字符串本身不够,就用-来凑,并且字符串放在中间
print(name.encode())    # 将字符串编码成bytes格式
print(name.endswith("ex"))  #判断字符串是否以ex结尾,若是则返回True
print(name.startswith('my'))  #判断字符串是否以my开头,若是则返回True
print(name.expandtabs(30))  #将字符串中的tab转换成30个空格输出,用处不大
print(name.find("name"))    #查找name,找到返回其首字母索引, 找不到返回-1
print(name[name.find("name"):8]) #字符串切片

msg = "my name is {}, and age is {}"
print(msg.format("alex", 22))

msg = "my name is {0}, and age is {1}"
print(msg.format("alex", 22))

msg = "my name is {name}, and age is {age}"
print(msg.format(age=22, name="alex"))
print(msg.format_map({'name':'alex','age':'21'})) #格式化字符串,这个语法比较少用

print(name.index('name')) #返回name的首字母的索引
print(name.isalnum())#判断字符串是否只包含数字和字母,返回False
print("abcDEF123".isalnum())#判断字符串是否只包含数字和字母,返回True

print(name.isalpha())   #判断字符串是否是纯英文字符,返回False
print("abcDEF".isalpha())   #判断字符串是否是纯英文字符,返回True

print('12A'.isdecimal())    #判断是否是十进制数,返回False,不常用
print('12'.isdecimal())    #判断是否是十进制数,返回True

print('123'.isdigit())  #判断是否是整数,返回True
print('1A'.isidentifier())  #检测一段字符串可否被当作标志符,即是否符合变量命名规则
print('cs'.islower())  #判断是否是全是小写
print('ABC'.isupper())  #判断是否是全是大写
print('33.33'.isnumeric())  #判断字符串是否只包含数字,返回False。与isdigit()类似,不常用
print(' '.isspace())    #判断石是否是空格

print('My Name Is'.istitle())   #判断是否每个字母的首字母均大写,返回True
print('My Name is'.istitle())   #返回False

print('12A'.isprintable())  #对于字符串根本不需考虑其是否可打印,只有在linux上比如说tty file、drive file不可打印
print('+'.join(['1','2','3'])) #返回1+2+3
print(' '.join(['my','name','is','alex'])) #返回my name is alex
print(name.ljust(50,'*'))   #一共打印50个字符,如果字符串本身不够,就用*来凑,字符串在左边
print(name.rjust(50,'*'))   #一共打印50个字符,如果字符串本身不够,就用*来凑,字符串在右边
print('ALEX'.lower())   #将所有大写变成小写
print('alex'.upper())   #将所有小写变成大写
print('-----')
print('  \nAlex  \n'.lstrip())  #去掉左边的空格和回车
print('-----')
print('  \nAlex  \n'.rstrip())  #去掉右边的空格和回车
print('-----')
print('  \nAlex  \n'.strip())  #去掉所有的空格和回车,用的最多
print('-----')

p=str.maketrans("abcdefli","123456#$")  #将1代替a,2代替b,...传进字符串中
print("alex li".translate(p))  #返回1#5x #$

print('my name is alex'.partition('is')) #返回('my name ', 'is', ' alex')
print('alex li'.replace('l','L')) #把所有的l均替换成L
print('alex li'.replace('l','L',1)) #只替换一个

print('alex li'.rfind('l')) #从左往右数,找到最右边的l的下标,即当字符串中有多个l时,返回l的最大下标
print('alex li'.split())    #将字符串按照空格来分成一个列表,返回['alex', 'li']
print('alex li'.split('l'))    #将字符串按照l来分成一个列表,返回['a', 'ex ', 'i']
print('1+2+3+4'.split('+'))     #返回['1', '2', '3', '4']
print('ale\nx li'.splitlines())     #将字符串按照换行符来分成一个列表,返回['ale', 'x li'],
                                    # 相当于print('ale\nx li'.split('\n')),但是splitlines可以自动识别不同系统的换行符
print('ale\nx li'.split('\n'))
print('Alex Li'.swapcase())     #大小写互换,将所有的大写变小写,小写变大写

print('alex li'.title()) #将每个单词的首字母变成大写
print('alex'.zfill(50))   #一共打印50个字符,如果字符串本身不够,就用0来凑,并且0放在字符串前面
View Code

猜你喜欢

转载自www.cnblogs.com/zhengna/p/9179346.html