美文网首页
2018-12-27 day3 Python 的字符串内建函数实

2018-12-27 day3 Python 的字符串内建函数实

作者: woming | 来源:发表于2019-01-13 17:24 被阅读0次

    Python 的字符串内建函数(部分)

    !!!只有返回结果是字符串的,都是一个新的字符串,不会对原字符串进行修改。因为字符串有序但不可变!!!

    
    # 6. endswith() 方法语法:
    """
     S.endswith(suffix[,start=0[,end=len(S)]])
     S -- 父字符串。
    suffix -- 指定后缀,该参数可以是一个字符串或者是一个元素。
    start -- 可选参数,字符串中的开始位置索引,默认为0。(可单独指定)
    end -- 可选参数,字符中结束位置索引,默认为字符串的长度。(不能单独指定)
    如果字符串以指定的后缀结尾返回 True ,否则返回 False。
    """
    
    S ='Runoob example....wow!!!'
    suffix = '!!'
    print(S.endswith(suffix))
    print(S.endswith(suffix, 2, -1))
    suffix = 'Run'
    print(S.endswith(suffix))
    print(S.endswith(suffix, 0))
    
    str = 'a123456b'
    suffix = '5'
    print(str.endswith(suffix, 1, 7))
    print(str.endswith(suffix, 0, 7))
    
    # 7.expandtabs(tabsize=8),返回一个新的字符串!!!
    # 当字符串中存在'\t'符号,使用expandtabs(tabsize=8)的时候,
    # 如果'\t'前面有>=8个字符,那么这里'\t'就转变成8个空格键,
    # 如果'\t'前面有<8个字符,那么这里'\t'就转变成(8-N)个空格键,这里N是前面有多少个字符!
    str = 'adfdvfgg\tbc'
    print(str, len(str))
    str2 = str.expandtabs(4)
    print(str2, len(str2))  # 将字符串中的\t 转换成16个空格
    
    # 8. find(str, beg=0 end=len(string)).
    # 判断字符串1中是否包含字符串2,如果包含返回字符串2中的开始下标,如果不包含返回-1
    str1 = 'abc222'
    str2 = 'c2'
    num = str1.find(str2, 2)
    print(num)
    
    # 9. index(str, beg=0, end=len(string))
    # 判断字符串1中是否包含字符串2,如果包含返回字符串2中的开始下标,如果不包含会报错
    str1 = 'abc222'
    str2 = 'c2'
    print(str1.index(str2, 1, 4))
    # print(str1.index(str2, 1, 3))
    
    # 10. isalnum()
    # 判断字符串中是否全是字母或数字。非ASCII码表中的字符检测不出来!
    str1 = 'abc22'
    str2 = 'abc!!22'
    print(str1.isalnum(), str2.isalnum())
    
    # 11. isalpha()
    # 判断字符串中是否全是字母。
    str1 = 'abc'
    str2 = 'abc22'
    print(str1.isalpha(), str2.isalpha())
    
    print('=========================')
    # 12. str.isdigit()
    # 判断字符串中是否全是整数数字,+,- 都不行
    str1 = '22'
    print(str1.isdigit())
    
    # 13. str.islower()
    # 判断字符中有无字母并且字母是否全为小写, 如果是返回True,否则返回False
    str1 = '22bA'
    str2 = '44b'
    print(str1.islower(), str2.islower())
    
    # 14. str.isnumeric()
    # 判断字符中是否只包含数字(中文数字也可以)
    str1 = '22一二三'
    str2 = '22ddd'
    print(str1.isnumeric(), str2.isnumeric())
    
    print('===============')
    # 15. str.isspace()
    str1 = 'a b\tc'
    str2 = '\t '
    print(str1.isspace(), str2.isspace()) # 判断字符中是否只有空格
    
    # 16. str.istitle()
    # 判断字符中是否有字母,并且第一个字母是否为大写
    str1 = '78Abc好123'
    str2 = '3asd'
    print(str1.istitle(), str2.istitle())
    
    # 17. str1.isupper()
    # 判断字符中有无字母并且字母是否全为大写, 如果是返回True,否则返回False
    str1 = '22bA'
    str2 = '44A'
    print(str1.isupper(), str2.isupper())
    
    print('------------')
    # 18. str1.join(seq)
    # 将字符串1插入到序列中的每个元素之间,并且返回一个新的字符串,这里的序列元素必须都是字符串!!!
    str1 = '*='
    str2 = {'我': '23', '3': 3, '34': '3'}
    str3 = str1.join(str2)
    print(str3) # 我*=3*=34
    
    def my_join(str1, seq):
        str3 = ''
        for item in seq:
            str2 = item + str1
            str3 += str2
        return str3[:len(str3)-len(str1)]
    
    str1 = '*='
    str2 = {'我': '23', '3': 3, '34': '3'}
    str3 = my_join(str1, str2)
    print(str3)   # 我*=3*=34
    
    
    # 19. len(string)
    str1 = '*='
    str2 = 'abc'
    print(len(str1), len(str2))    # 返回字符串长度
    
    # 20. str.ljust(width[, fillchar])
    str = 'abb'
    print(str.ljust(10, '='))  # 左对齐--返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格。
    
    # 21. str.lower()
    # 将字符串中所有大写字母转换成小写字母
    # 注意:非ASCII码表中的字符检测不出来!
    str1 = 'ABB'
    str2 = '好AA'
    print(str1.lower(), str2.lower())
    
    # 22. str1.lstrip()
    # 去掉字符串左边的空格
    str1 = '\tABB'
    str2 = 'Ab\tbc好'
    print(str1)
    print(str2)
    print(str1.lstrip(), str2.lstrip())
    
    # 24. max(str)
    # 返回字符串中最大的字符
    str1 = 'abcd\u4e00'
    str2 = 'dfab'
    print(max(str1), max(str2))
    
    # 25. min(str)
    # 返回字符串中最小的字符
    str1 = 'abcd\u4e00'
    str2 = 'dfab'
    print(min(str1), min(str2))
    
    # 26. replace(old, new [, max])
    # 将字符串中的字符1转换成字符2,max表示最多可以转换max次
    str1 = 'a123'
    str2 = 'bvbbbc'
    print(str1.replace('a1', 'b'))
    print(str2.replace('b','f',2))
    
    # 27. str1.rfind(str2, beg=0,end=len(string))
    # 从右边开始查找,判断字符串1中是否包含字符串2,如果包含返回字符串2中的开始下标,如果不包含返回-1
    str1 = 'abhhc22uuu2'
    str2 = 'c2'
    print(str1.rfind(str2, 2, 8))
    
    # 28. str1.rindex( str2, beg=0, end=len(string))
    # 从右边开始查找,判断字符串1中是否包含字符串2,如果包含返回字符串2中的开始下标,如果不包含会报错
    str1 = 'abc22hh2'
    str2 = 'c2'
    print(str1.rindex(str2, 1, 4))
    # print(str1.rindex(str2, 1, 3))
    
    # 29. str1.rjust(width,[, fillchar])
    # 左对齐--返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格。
    str1 = 'abb'
    print(str1.ljust(10, '='))
    
    
    

    相关文章

      网友评论

          本文标题:2018-12-27 day3 Python 的字符串内建函数实

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