Python3 字符串

python的字符串操作通过2部分的方法函数基本上就可以解决所有的字符串操作需求:
  • python的字符串属性函数
  • python的string模块

一、字符串属性方法操作:

  1.>字符串格式输出对齐

>>> str = "Python stRING" 
 
>>> print str.center(20)       #生成20个字符长度,str排中间
   Python stRING   
    
>>> print str.ljust(20)            #生成20个字符长度,str左对齐
Python stRING      
 
>>> print str.rjust(20)            #生成20个字符长度,str右对齐
       Python stRING

  2.>大小写转换  

>>> str = "Python stRING"
 
>>> str.upper()                #转大写
'PYTHON STRING'
 
>>> str.lower()                #转小写 
'python string'
 
>>> str.capitalize()           #字符串首为大写,其余小写
'Python string'
 
>>> str.swapcase()         #大小写对换 
'pYTHON STring'
 
>>> str.title()                #以分隔符为标记,首字符为大写,其余为小写
'Python String'

  3.>字符串条件判断

>>> str = '01234'
 
>>> str.isalnum()                #是否全是字母和数字,并至少有一个字符
True
>>> str.isdigit()                #是否全是数字,并至少有一个字符
True      
 
 
>>> str = 'string'
 
>>> str.isalnum()                  #是否全是字母和数字,并至少有一个字符
True
>>> str.isalpha()                  #是否全是字母,并至少有一个字符 
True
>>> str.islower()                  #是否全是小写,当全是小写和数字一起时候,也判断为True
True
 
>>> str = "01234abcd"
 
>>> str.islower()                  #是否全是小写,当全是小写和数字一起时候,也判断为True
True
 
>>> str.isalnum()                  #是否全是字母和数字,并至少有一个字符
True
 
>>> str = ' '
>>> str.isspace()                  #是否全是空白字符,并至少有一个字符
True
 
>>> str = 'ABC'
 
>>> str.isupper()                  #是否全是大写,当全是大写和数字一起时候,也判断为True
True
 
>>> str = 'Aaa Bbb'
 
>>> str.istitle()                  #所有单词字首都是大写,标题 
True
 
 
>>> str = 'string learn'
 
>>> str.startswith('str')                 #判断字符串以'str'开头
True
 
>>> str.endswith('arn')                      #判读字符串以'arn'结尾
True

  4.>字符串搜索定位与替换

>>> str='string lEARn'
 
>>> str.find('z')              #查找字符串,没有则返回-1,有则返回查到到第一个匹配的索引
-1
 
>>> str.find('n')              #返回查到到第一个匹配的索引
4
 
>>> str.rfind('n')         #返回的索引是最后一次匹配的
11
 
>>> str.index('a')         #如果没有匹配则报错 
Traceback (most recent call last):
  File "<input>", line 1, in <module>
ValueError: substring not found
  
>>> str.index("n")      #同find类似,返回第一次匹配的索引值
4
 
>>> str.rindex("n")         #返回最后一次匹配的索引值
11
 
>>> str.count('a')      #字符串中匹配的次数
0
>>> str.count('n')      #同上
2
 
>>> str.replace('EAR','ear')        #匹配替换
'string learn'
 
>>> str.replace('n','N')
'striNg lEARN'
 
>>> str.replace('n','N',1)
'striNg lEARn'
 
>>> str.strip('n')          #删除字符串首尾匹配的字符,通常用于默认删除回车符 
   
'string lEAR' 
   
>>> str.lstrip('n')        #左匹配 
   
'string lEARn' 
   
>>> str.rstrip('n')        #右匹配 
   
'string lEAR' 
 
>>> str = " tab"
 
>>> str.expandtabs()       #把制表符转为空格
' tab'
 
>>> str.expandtabs(2)      #指定空格数
' tab'

  5.>字符串编码与解码

>>> str = "字符串学习"
>>> str
'xe5xadx97xe7xacxa6xe4xb8xb2xe5xadxa6xe4xb9xa0'
 
>>> str.decode('utf-8')                                #解码过程,将utf-8解码为unicode
u'u5b57u7b26u4e32u5b66u4e60'
 
>>> str.decode("utf-8").encode('gbk')                      #编码过程,将unicode编码为gbk
'xd7xd6xb7xfbxb4xaexd1xa7xcfxb0'
 
>>> str.decode('utf-8').encode('utf-8')                        #将unicode编码为utf-8 
'xe5xadx97xe7xacxa6xe4xb8xb2xe5xadxa6xe4xb9xa0'

  6.>字符串分割变换

>> str = "Learn string"
 
>>> '-'.join(str)
'L-e-a-r-n- -s-t-r-i-n-g'
 
>>> li = ['Learn','string']
 
>>> '-'.join(li)
'Learn-string'
 
>>> str.split('n')
['Lear', ' stri', 'g']
 
>>> str.split('n',1)
['Lear', ' string']
 
>>> str.rsplit('n')
['Lear', ' stri', 'g']
 
>>> str.rsplit('n',1)
['Learn stri', 'g']
 
>>> str.splitlines()
['Learn string']
 
>>> str.partition('n')
('Lear', 'n', ' string')
 
>>> str.rpartition('n')
('Learn stri', 'n', 'g')

  


1首字母转大写

输出结果

2.统计数量

输出结果

3.居中输出字符串,总长度50,不够的话用=代替(50和=可随意设置)

输出结果

4.判断以什么结束,返回布尔值

输出结果

5.转tab键( )为空格,tabsize可设置空格长度

输出结果

6.查找下标,可用于切片

输出结果

7.format方法和format_map都是格式化,只是传值不同

输出结果

8.是否只包含数字字母为True,特殊符号为False

输出结果

9.是否只包含英文字母

输出结果

10.是否是十进制

输出结果

11.判断是否是整数

输出结果

12.判断是否是一个合格的标识符(字母数字下划线组成,不能以数字开头)

输出结果

13.判断是否是小写

输出结果

14.同isdigit方法

输出结果

15.是否只包含空格

输出结果

16.判断是否是标题

输出结果

17.是否可打印 一般字符串不用,Linux文件用

输出结果

18.是否大写

输出结果

19.列表转化为字符串

输出结果

20.左右补偿

输出结果

21.大小写转换

输出结果

22.去空格和回车

输出结果

23.随机密码生成方法

输出结果

24.替换

输出结果

25.截取

输出结果

26.通过换行符切割,可以自动识别不同系统的换行符

输出结果

27.大写转小写,小写转大写

输出结果

28.转为标题

输出结果

29.设置打印长度为20的,不够的话用0在前面补充,二进制转16进制可用

输出结果

30.str与bytes类型的转换

输出结果:

 

原文地址:https://www.cnblogs.com/bert227/p/9231736.html