美文网首页
10:字符串

10:字符串

作者: 寻水的_鱼 | 来源:发表于2018-07-27 09:59 被阅读22次

    1、声明一个字符串

    定义:包含在一对单引号、双引号、三引号中间的多个字符

    2、Python转义字符

    符号 描述
    \在行尾时 续行符
    \ 放在其他特定字母前 转义字符
    \t 横向制表符
    \v 纵向制表符
    \n 换行符
    \r 回车
    \f 换页

    3、Python的字符串内建函数

    在python中 dir(str)查看字符串的内建函数:去掉了带有下划线的

     'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith',
     'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum',
     'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower','isnumeric',
    'isprintable', 'isspace', 'istitle', 'isupper',
     'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 
    'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit',
     'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase',
     'title', 'translate', 'upper', 'zfill'
    

    整理分类:

    • 大小写转换:
      如:str1 = "abcD"
    函数 描述 结果
    str1.capitalize() 返回 首字母大写的字符串 "AbcD"
    str1.upper() 返回 全部大写的字符串 "ASCD"
    str1.lower() 返回 全部小写的字符串 "ascd"
    str1.swapcase 返回 相反的字符串 "ABCd"
    • 判断大小写
      如:str1 = "abcD"
    函数 描述 结果
    str1.istitle() 判断是否只有首字母大写 False
    str1.isupper() 判断全部字母是否为大写 False
    str1.islower() 判断全部字母是否为小写 False
    • 对齐和填充
      如:str2 = "a"
    函数 描述 结果
    str2.ljust(4,"$") 左对齐,第一个参数为字符串填充后的长度,第二个参数为填充的内容 "a$$$$"
    str2.rjust(4,"$") 右对齐,第一个参数为字符串填充后的长度,第二个参数为填充的内容 "$$$$a"
    str2.center(4,"$") 两侧对齐,第一个参数为字符串填充后的长度,第二个参数为填充的内容 "$$a$$"
    str2.zfill(4) 将字符串的左侧都填0,参数为字符串填充后的长度 "00000a"
    • 判断字符串的组成:
      如:str3是一个字符串
    函数 描述 结果
    str3.isalnum() 字符串是否都是由字母和数字组成 True/False
    str3.isdigit() 字符串是否都是由数字组成 True/False
    str3.isalpha() 字符串是否都是由字母组成 True/False
    str3.isdecimal() 如果字符串是否只包含十进制字符 True/False
    • 字符串的拆分操作:
      如:str3 = "my name is jerry"
    函数 描述 结果
    str3.split(" ",3) 通过指定分隔符" "对字符串进行切片,如果参数 num 有指定值,则仅分隔 num 个子字符串,这里为3,默认全部,从左侧往右侧 ['my', 'name', 'is', 'jerry']
    str3.rsplit(" ",2) 通过指定分隔符" "对字符串进行切片,如果参数 num 有指定值,则仅分隔 num 个子字符串,这里为2,默认全部,从右侧往左侧 ['my name', 'is', 'jerry']
    str3.partition("is") 返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串,从字符串的左侧搜索分隔符 ('my name ', 'is', ' jerry')
    str3.rpartition("is") 返回一个3元的元组,第一个为分隔符左边的子串,第二个为分隔符本身,第三个为分隔符右边的子串,从字符串的右侧搜索分隔符 ('my name ', 'is', ' jerry')
    • 字符串的查找:
      如:str4 = "asdfasdf"
    函数 描述 结果
    str4.find("s") str4.查找(sub[, start[, end]]])第一个参数要查找的目标元素,二三参数可写可不写,代表查找位置;查找成功返回元素第一匹配成功的下标,否则返回-1;从左往右 1
    str4.rfind("s") str4.查找(sub[, start[, end]]])第一个参数要查找的目标元素,二、三参数可写可不写,代表查找位置;查找成功返回元素第一匹配成功的下标,否则返回-1;从右往左 5
    str4.index("s") str4.查找(sub[, start[, end]]])第一个参数要查找的目标元素,二、三参数可写可不写,代表查找位置;查找成功返回元素第一匹配成功的下标,否则返回ValueRrror;从左往右 1
    str4.rindex("s") str4.查找(sub[, start[, end]]])第一个参数要查找的目标元素,二、三参数可写可不写,代表查找位置;查找成功返回元素第一匹配成功的下标,否则返回-1否则返回ValueRrror;从右往左 5
    str4.count("s") str4.查找(sub[, start[, end]]])第一个参数要查找的目标元素,二、三参数可写可不写,代表查找位置;返回元素出现的次数 2
    • 字符串的替换:
      如:str4 = "asdfasdf"
    函数 描述 结果
    str4.replace("a","#") str4.替换(旧的,新的[,计数]) "#sdf#sdf"
    str4.maketrans("asd", "qwe") str4.多元素替换(旧的,新的),两个字符串的长度必须相同,为一一对应的关系。 "qwefqwef"
    str.translate(table)
    bytes.translate(table[, delete]) table -- 翻译表,翻译表是通过maketrans() 方法转换而来。deletechars -- 字符串中要过滤的字符列表。
    bytearray.translate(table[, delete])

    translate函数:

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

    相关文章

      网友评论

          本文标题:10:字符串

          本文链接:https://www.haomeiwen.com/subject/gcrpmftx.html