字符型

本节导读:

  1. 字符串的基本用法
  2. 原始字符串
  3. 长字符串

一 字符串的基本用法

  • 切片
    s[1:2]
    s[3:]
    s[::-1]           #倒序显示
  • 增加
    s = "hello good boy doiido"
    print (':'.join(s))
     >>h:e:l:l:o: :g:o:o:d: :b:o:y: :d:o:i:i:d:o
  • 查找
    s.find()        #查找字符不存在,返回-1
    s.index()       #查找字符不存在,直接报错
    s.rfind()       #从右边查找
    s.rindex()      #从右边查找
  • 替换
    s.replace("待替换字符“,”替换字符”)
  • 长度
    s.len()
  • 移除空白
    strip()    #移除所有空白  
    lstrip()   #移除左空白  
    rstrip()   #移除右空白
  • 分割
    s.split("sep"))             #以sep分割,返回列表,不包括sep  
    s.rsplit("sep")             #从右边查找  
    s.partition(self,sep)       #以sep为分割,将s分成,head,sep,tail,三个部分
    s.rpartition(self,sep)      #从右边查找 
    splitlines(self,keepends =None)   #返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如 果为 True,则保留换行符。 
  • 是否判断
    isinstance(a,typ)                              #判断变量a是否为typ所表示的类型,是则返回True
    s.isalnum(self)    or    s.isalpha(self)       #至少一个字符,且都是字母或数字才返回True
    s.isdecimal(self)                              #如果s中只有十进制字符,返回True,否则错误。
    s.isdigit(self)                                #是否全是数字  
    s.isidentifier(self)                           #字符串为关键字返回True
    s.islower()                                    #至少一个字符,且都是小写字母才返回True
    s.isnumeric(self)                              #如果S中只有数字字符,则返回True,  
    s.issprintable()                               #字符是可打印的和空的,则返回false ,如“\n”之类的返回false
    s.isspace()                                    # 至少一个字符,且都是空格才返回True(至少一个空格)
    s.istitle()                                   #是否首字母大写(标题格式)
    s.isupper()                                     #是否是大写

     

  • 对齐
    s.ljust(长度,填充物)                         #左对齐,可填充固定长度字符
    s.rjust(长度,填充物)                           #右对齐,可填充固定长度字符
    s.center(self,width,fiilchar =None)           #剧中对齐,可填充固定长度字符
    s.zfiil(width)                                #原来字符右对齐,不够用0补齐

     

  • 格式化输出
    s.format()
    "{0}{1}{0} ".fromat('a','b')
    "{}{}{}".format('a','b','c')
    "{name}{age}".fromat(age=12,name='lucy')
    
    a =1 
    b =2
    f"{a}{b}"
  • 次数统计
    s.count(self,sub,start =None,end =None)  #从一个范围内统计str次数
  • 开始,结尾
    s.startswith(self,suffix,start =None,end =None)     #是否(在指定范围)以suffix开始,是返回True  
    s.endwith(self,suffix,start =None,end =None)      #是否(在指定范围)以suffix结尾,是返回True
  • 编码,解码
     s.encode(encoding = "utf-8")     #编码
     s.decode(")                      #解码

     

  • 大小写转换
    s.capitalize()  #首字母大写,其余字母全变小写
    s.lower()       #得到所有字母转换成小写字母的副本 
    s.upper()       #得到所有字母转换成大写字母的副本   
    s.swapcase()    #大小写反转  
    s.title()       #将每个单词首字母大写(标题格式) 其余字母全变小写  
  • 密文转换
    maketrans(self, *args, **kwargs)    #设置对应关系表  
    s.translate(self,table)             #根据对应关系表转换密文
    
    eg:
    str_in = "abcdef"  
    str_out = "123456"  
    table = str.maketrans(str_in,str_out)      
    >>> table = {97: 49, 98: 50, 99: 51, 100: 52, 101: 53, 102: 54}   #对应关系表
    s = "hello world"
    s.translate(table)    
    >>>s = "h5llo worl4"

     

 二 原始字符串

    在字符串的使用中通常会遇到带 "\" 的情况,而 "\" 在代码中往往带有特殊的含义,例如  s = "I\need\money" 打印出来结果却是  "I 换行 eed\money", 

在这里\n 是告诉解释器我要换行了, 那如何我硬是要打印  "I\need\money" 怎么办 ,这个时候我们就可以用原始字符串来解决这个问题,

在字符串前加上一个字母'r' 就能解决,如  r'I\need\money'

 

三 长字符串

    如何要打印的字符串很长,而且还是有很多行那种,这个时候为了打印出来就等加入换行符,这样输入起来就特别的麻烦,这个时候我们就可以用三引号将我们要输入的字符串引用起来,就能轻松的解决刚才的问题。

posted @ 2018-04-22 10:52  感动#心  阅读(213)  评论(0编辑  收藏  举报