• Python记录——字符串的常用方法


    1. 编码/解码( encode()/decode() )

    encode() 是将 Python 内部默认的编码 unicode编码 转换成其他编码格式,decode()是将其他编码格式转换成 unicode编码,列如:

    strs = '一段话'
    print(strs.encode())  #如果没有指定编码格式,则默认编码为utf-8,表示将unicode编码的字符串strs转换成utf-8编码
    print(strs.encode('gbk'))  #表示将unicode编码的字符串strs转换成gbk编码
    print(strs.encode('gbk').decode('gbk'))  #表示将unicode编码的字符串strs转换成gbk编码,再将gbk编码的字符串strs转换成unicode编码

    结果为:

    b'xe4xb8x80xe6xaexb5xe8xafx9d'
    b'xd2xbbxb6xcexbbxb0'
    一段话

    2. index()、rindex()、count()

    index() 用来查找子字符串在字符串中最先出现的位置,rindex() 用来查找子字符串在字符串中最后出现的位置,count()用来统计子字符串在字符串中出现的次数,列如:

    strs = '吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮。'
    print(strs.index(''))
    print(strs.rindex(''))
    print(strs.count(''))

    结果为:

    2
    16
    4

    3. replace()

    replace()  用来替换字符串中的某些字符,如果指定第三个参数max,则替换不超过 max 次,列如:

    strs = '吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮。'
    print(strs.replace('葡萄','苹果'))
    print(strs.replace('葡萄','苹果',2)) 

    结果为:

    吃苹果不吐苹果皮,不吃苹果倒吐苹果皮。
    吃苹果不吐苹果皮,不吃葡萄倒吐葡萄皮。

    4. maketrans() 、translate()

    maketrans() 的作用是创建一个映射表,里面的元素一一对应,再用 translate() 来将其作用到要替换的字符串上,根据映射表里的一一替换,例如:

    table = ''.maketrans('0123456789','零一二三四五六七八九')
    print('Tel:836412'.translate(table))

    结果为:

    Tel:八三六四一二

    5. ljust()、rjust()、center()

    ljust()、rjust()、center() 这三个函数都是对字符串进行排版,ljust() 是指定字符串具体的长度,向左对其,不足长度的默认用空格填充,也可指定用其他字符填充,rjust()、center() 则对应的是向右对齐和居中对齐,例如:

    strs = '葡萄'
    print(strs.ljust(20)+'/')  #用/结尾来观察20的长度
    print(strs.rjust(20,'*')+'/')
    print(strs.center(20,'=')+'/')

    结果为:

    葡萄                  /
    ******************葡萄/
    =========葡萄=========/

    6. split()、rsplit()、join()

    split() 表示从左往右用指定字符对字符串进行分割,默认为空格,还可指定最大分割次数,rsplit()表示从右往左进行分割,返回字符串列表。join() 用于将列表等序列中的元素以指定的字符连接生成一个新的字符串,不指定连接符时,直接把序列全部连接到一起。例如:

    strs = '吃 葡萄 不吐 葡萄皮 不吃 葡萄 倒吐 葡萄皮。'
    print(strs.split())
    print(strs.split(maxsplit=1))
    print(strs.rsplit(maxsplit=1))
    print('1,2,3,4'.split(','))
    print(','.join(['1','2','3','4']))
    print(''.join(['1','2','3','4']))

    结果为:

    ['', '葡萄', '不吐', '葡萄皮', '不吃', '葡萄', '倒吐', '葡萄皮。']
    ['', '葡萄 不吐 葡萄皮 不吃 葡萄 倒吐 葡萄皮。']
    ['吃 葡萄 不吐 葡萄皮 不吃 葡萄 倒吐', '葡萄皮。']
    ['1', '2', '3', '4']
    1,2,3,4
    1234

    7. lower()、upper()、capitalize()、title()、swapcase()

    lower() 的作用是将字符串中所有的大写字符转换为小写;upper() 的作用是将字符串中所有的小写字符转换为大写;capitalize() 的作用是将字符串的第一个字母变成大写,其他字母变小写;title() 的作用为返回"标题化"的字符串,将所有单词变成都是以大写开始,其余字母均为小写;swapcase() 的作用为对字符串的大小写字母进行转换,例如:

    strs = 'My English is very poor.'
    print(strs.lower())
    print(strs.upper())
    print(strs.capitalize())
    print(strs.title())
    print(strs.swapcase())

    结果为:

    my english is very poor.
    MY ENGLISH IS VERY POOR.
    My english is very poor.
    My English Is Very Poor.
    mY eNGLISH IS VERY POOR.

    8. startswith()、endswith()

    startswith() 的作用是检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False,如果要指定多个,则要放到一个元组中;endswith() 的作用则是检查字符串是否是以指定子字符串结尾,例如:

    strs = 'My English is very poor.'
    print(strs.startswith('My'))
    print(strs.startswith('my'))
    print(strs.endswith(('.','?',',')))

    结果为:

    True
    False
    True

    9. strip()、rstrip()、lstrip()

    strip() 用来删除字符串两端的指定字符,如果未指定则默认删除空格,rstrip()、lstrip() 的作用为分别删除字符串右边和左边的指定字符,例如:

    strs = '        =====test====******    '
    print(strs.strip()+'/')  #用/结尾来观察右边的删除情况
    print(strs.strip('=* ')+'/')
    print(strs.rstrip('* ')+'/')
    print(strs.lstrip()+'/')

    结果为:

    =====test====******/
    test/
            =====test====/
    =====test====******    /
  • 相关阅读:
    jquery 点击图片弹出遮罩层查看大图
    js 禁止复制粘贴
    如何设置ASP.NET页面的运行超时时间
    Asp.net中DataBinder.Eval用法的总结
    C#中DateTime的缺陷与代替品DateTimeOffset的对吧
    itextsharp html转成pdf 特殊符号异常处理
    C#中DateTime和DateTimeOffset的对比
    最新版本sublime text3注册码
    System.Web.Optimization找不到引用
    nodejs npm常用命令
  • 原文地址:https://www.cnblogs.com/mulin1999/p/12432332.html
Copyright © 2020-2023  润新知