• python str的一些操作及处理


    一、str的定义:Python中凡是用引号引起来的数据可以称为字符串类型,组成字符串的每个元素称之为字符,将这些字符一个一个连接起来,然后在用引号起来就是字符串。

    二、str的简单操作方法:

    conut(数)

    split(以...分割)

    foemat(格式化输出)

    replace(元素替换)

    startswith(判断是以...开头,返回bool)

    endswith(判断是以...结尾,返回bool)

    strip(去除首尾字符)

    lstrip(去除首字符)

    rstrip(去除尾字符)

    a = 'Aab123Dd4Aa'
    # conut(数)startswith(判断是以...开头) endswith(判断是以...结尾)
    print(a.count("b", 1, 4))  # 1
    print(a.startswith("a", 1, 4))  # True
    print(a.endswith("1", 1, 4))  # True
    
    # split(以...分割)
    print('title,Tilte,atre,'.split('i'))  # ['t', 'tle,T', 'lte,atre,']
    print('title,Tilte,atre,'.split('t', 2))  # ['', 'i', 'le,Tilte,atre,']
    
    # format 格式化输出
    print('{} {} {}'.format('egon', 18, 'male'))  # egon 18 male
    print('{1} {0} {1}'.format('egon', 18, 'male'))  # 18 egon 18
    print('{name} {age} {sex}'.format(sex='male', name='egon', age=18))  # egon 18 male
    
    # strip 去除首尾字符
    name = '*bar*ry**'
    print(name.strip('*'))  # bar*ry
    print(name.lstrip('*'))  # bar*ry**
    print(name.rstrip('*'))  # *bar*ry
    
    # replace 元素替换
    name = 'alex say :my name is alex'
    print(name.replace('alex', '替换', 1))  # 替换 say :my name is alex
    View Code

    find(返回元素索引,找不到则返回-1)

    index(返回元素索引,找不到则报错)

    capitalize(首字母大写)

    swapcase(大小写反转)

    title(每个单词首字母大写)

    a = 'Aab123Dd4Aa'
    
    # find 返回索引,找不到返回-1
    print(a.find("2", 1, 7))  # 4
    # index 返回索引,找不到则报错
    print(a.index("D", 1, 7))  # 6
    
    # capitalize swapcase title
    b = 'alex,Taibai jinxiN'
    print(b.capitalize())  # Alex,taibai jinxin
    print(b.swapcase())  # ALEX,tAIBAI JINXIn
    print(b.title())  # Alex,Taibai Jinxin
    
    # center
    c = 'asfht'
    print(c.center(10, '*'))  # **asfht***
    View Code

    is系列

    str.isalnum(是否由字母和数字组成)

    str.isdigit(是否只由数字组成)

    str.isalpha(是否只由字母组成)

    str.isupper(是否只由大写字母组成)

    str.islower(是否只由小写字母组成)

    str.istitle(单词首字母是否为大写)
    str.isspace(是否只由空格组成)
    str.isnumeric(是否只由数字组成,只针对unicode对象)
    str.isdecimal(是否只由十进制组成)

    d = 'tai Tbai123'
    print(d.isalnum())  # 检测字符串是否由字母和数字组成
    print(d.isdigit())  # 是否只由数字组成
    print(d.isalpha())  # 是否只由字母组成
    print(d.isupper())  # 是否只由大写字母组成
    print(d.islower())  # 是否只由小写字母组成
    print(d.istitle())  # 单词首字母是否为大写
    print(d.isspace())  # 是否只由空格组成
    print(d.isnumeric())  # 是否只由数字组成,只针对unicode对象
    print(d.isdecimal())  # 是否只由十进制组成
    View Code

    小练习:如果用户输入一段包含字母数字的str,怎么计算str中数字之和?(将相邻的数字看作一个整体)

    如,输入:se123reg4rtey54 ,则计算123+4+54的结果

    print('---用户输入字母数字串,计算所包含的数字之和---')
    a = input('输入字母或数字:')
    for i in a:
        if i.isalpha():
            a = a.replace(i, ' ')
    get_list = (a.split())
    
    list = []
    for f in get_list:
        list.append(int(f))
    
    sum = sum(list)
    print(sum)
    View Code
  • 相关阅读:
    洛谷P4587 [FJOI2016]神秘数(主席树)
    洛谷P4609 [FJOI2016]建筑师(第一类斯特林数+组合数)
    Bzoj4016/洛谷P2993 [FJOI2014] 最短路径树问题(最短路径问题+长链剖分/点分治)
    Bzoj1486/洛谷P3199 最小圈(0/1分数规划+spfa)/(动态规划+结论)
    Bzoj4753/洛谷P4432 [JSOI2016]最佳团体(0/1分数规划+树形DP)
    Bzoj3197/洛谷3296 [SDOI2013]刺客信条assassin(树的重心+树Hash+树形DP+KM)
    关于二分图的完美匹配问题
    Bzoj3837 [Pa2013]Filary(随机化)
    Bzoj3566/洛谷P4284 [SHOI2014]概率充电器(概率dp)
    杜教筛学习笔记
  • 原文地址:https://www.cnblogs.com/zhuzl/p/11123642.html
Copyright © 2020-2023  润新知