zoukankan      html  css  js  c++  java
  • python之字符串方法

    1、Find

    find方法可以在一个较长的字符串中查找子串,它返回子串所在位置的最左端索引。如果没有找到则返回-1。

    例:

    >>> 'welcome to shanghai'.find('to')
    8
    >>> title = "hello shanghai!"
    >>> title.find('hello')
    0
    >>> title.find('python')
    -1

    2、Join

    join方法是非常重要的字符串方法,它是split方法的逆向法,用来连接序列中的元素:

    >>> seq = [1,2,3,4,5]
    >>> sep = '+'
    >>> sep.join(seq)
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: sequence item 0: expected str instance, int found
    >>> seq = ['1','2','3','4','5']
    >>> sep.join(seq)
    '1+2+3+4+5'
    >>> dirs = '','usr','bin','env'
    >>> '/'.join(dirs)
    '/usr/bin/env'
    >>> print('C:'+'\'.join(dirs))
    C:usrinenv

    可以看到,需要被连接的序列元素都必须是字符串。注意最后两个例子中使用了目录的列表,而在格式化时,根据Unix和Dos/Windows的约定,使用了不同的分隔符号。

    3、Lower

    lower方法返回字符串的小写字母版。

    >>> "Welcome To Shanghai!".lower()
    'welcome to shanghai!'

    如果要想编写“不区分大小写”的代码的话,那么这个方法就派上用场了,代码会忽略大小写状态。例如,如果想在列表中查找一个用户名是否存在:列表包含字符串‘to’,而用户输入的是'TO',就找不到了:

    >>> if 'TO' in ['welcome','to','shanghai']:
    ...     print('exitst')
    ...
    >>>

    解决方法:

    在存储和搜索时把所有名字都转换为小写。

    >>> name = 'TO'
    >>> names = ['welcome','to','shanghai']
    >>> if name.lower() in names:
    ...     print('exitst')
    ...
    exitst

    4、Replace

    replace方法返回某字符串的所有匹配项均被替换之后得到字符串。

    >>> 'welcome TO shanghai!'.replace('TO','to')
    'welcome to shanghai!'

    5、Split

    这是一个非常重要的字符串方法,它是join的逆向方法,用来将字符串分割成序列。

    >>> '1+2+3+4+5'.split('+')
    ['1', '2', '3', '4', '5']
    >>> '/usr/bin/env'.split('/')
    ['', 'usr', 'bin', 'env']
    >>> 'welcome to shanghai'.split()
    ['welcome', 'to', 'shanghai']

    注:如果不提供任何分割符,程序会把所有空格作为分隔符(空格、制表,换行等)。

    6、Strip

    strip方法返回默认去除两侧空格的字符串:

    >>> ' welcome to shanghai! '
    ' welcome to shanghai! '
    >>> ' welcome to shanghai! '.strip()
    'welcome to shanghai!'
    >>> names = ['welcome','to','shanghai']
    >>> name = 'to '
    >>> if name in names:
    ...     print('exitst')
    ...
    >>> if name.strip() in names:
    ...     print('exitst')
    ...
    exitst

    也可以指定需要去除的字符。

    >>> '* welcome to shanghai! *'.strip('*')
    ' welcome to shanghai! '

    文献《Python基础教程》

  • 相关阅读:
    组合模式扩展,有选择的递归
    SQL分页查询【转】
    facade外观模式
    C#:几种数据库的大数据批量插入 faib
    装饰模式的扩展
    yeild之我理解
    数据库操作 sqlserver查询存储过程+分页
    SQL Server 索引结构及其使用(二)[转]
    SQL索引使用初步,(转)
    解决多集成,多子类,扩展等 装饰模式
  • 原文地址:https://www.cnblogs.com/TaleG/p/8675171.html
Copyright © 2011-2022 走看看