• Lesson14——NumPy 字符串函数之 Par3:字符串信息函数


    NumPy 教程目录

    1 字符串信息函数

    1.1 numpy.char.count

      char.count(a, sub, start=0, end=None) 返回一个数组,其中包含 [start, end] 范围内子字符串 sub 的非重叠出现次数。

    Example:

    c = np.array(['aAaAaA', '  aA  ', 'abBABba'])
    print(c)
    print(np.char.count(c, 'A'))
    print(np.char.count(c, 'aA'))
    print(np.char.count(c, 'A', start=1, end=4))
    print(np.char.count(c, 'A', start=1, end=3))
    """
    ['aAaAaA' '  aA  ' 'abBABba']
    [3 1 1]
    [3 1 0]
    [2 1 1]
    [1 0 0]
    """

    1.2 numpy.char.endswith

       char.endswith(a, suffix, start=0, end=None) 返回一个布尔数组,该数组为 True,其中 a 中的字符串元素以后缀结尾,否则为 False

    Example:

    print(np.char.endswith(['Blair','Jane'],'r'))
    print(np.char.endswith(['Blair','Jane'],'r',start=1,end=2))
    print(np.char.endswith(['Blair','Jane'],'r',start=3,end=5))
    s = np.array(['foo', 'bar'])
    print(np.char.endswith(s, 'ar'))
    print(np.char.endswith(s, 'a', start=1, end=2))
    """
    [ True False]
    [False False]
    [ True False]
    [False  True]
    [False  True]
    """

    1.3 numpy.char.find

      char.find(*a*, *sub*, *start=0*, end=None) 对于每个元素,返回字符串中找到子字符串 sub 的最低索引。

    Example:

    s = ['Blair','Jane',"Lee"]
    print(np.char.find(s,'J'))
    print(np.char.find(s,'a'))
    print(np.char.find(s,'e',start=0,end=2))
    """
    [-1  0 -1]
    [ 2  1 -1]
    [-1 -1  1]
    """

    相关方法:

    • numpy.char.rfind

      char.rfind(a, sub, start=0, end=None) 对于 a 中的每个元素,返回找到子字符串 sub 的字符串中的最高索引,使得 sub 包含在 [start, end] 中。

    Example:

    s = ['JBlaJir','JaJne',"Lee"]
    print(np.char.rfind(s,'J'))
    print(np.char.rfind(s,'a'))
    print(np.char.rfind(s,'e',start=0,end=2))
    """
    [ 4  2 -1]
    [ 3  1 -1]
    [-1 -1  1]
    """

    1.4 numpy.char.index

      char.index(a, sub, start=0, end=None) 与 find 类似,但在未找到子字符串时引发 ValueError

    Example:

    s = ['Blair','Jane',"Lee"]
    print(np.char.index(s,'J'))
    print(np.char.index(s,'a'))
    print(np.char.index(s,'e',start=0,end=2))
    """
    ValueError
    ValueError
    ValueError
    """
    
    s = ['Blaie','Jane',"Lee"]
    print(np.char.index(s,'e',start=0,end=2))
    """
    ValueError
    """
    
    s = ['Blaie','Jane',"Lee"]
    print(np.char.index(s,'e',start=0,end=5))
    """
    [4 3 1]
    """

    相关方法:

    • numpy.char.rindex

      char.rindex(a, sub, start=0, end=None) 与 rfind 类似,但在未找到子字符串 sub 时引发 ValueError

    Example:

    s = ['JBlaJire','JaJne',"JaLee"]
    print(np.char.rindex(s,'J'))
    print(np.char.rindex(s,'a'))
    print(np.char.rindex(s,'e',start=0,end=2))
    """
    [ 4  2 -1]
    [ 3  1 -1]
    ValueError 
    """

    1.5 numpy.char.isalpha

      char.isalpha(a) 如果字符串中的所有字符都是字母并且至少有一个字符,则为每个元素返回 true,否则返回 false

    Example:

    s = ['Blaie','1111',"Lee"]
    print(np.char.isalpha(s))
    s = ['Blaie1','反差萌',"Lee"]
    print(np.char.isalpha(s))
    s = ['Blaie1','#####',"Lee"]
    print(np.char.isalpha(s))
    """
    [ True False  True]
    [False  True  True]
    [False False  True]
    """

    1.6 numpy.char.isalnum

      char.isalnum(a) 如果字符串中的所有字符都是字母数字并且至少有一个字符,则为每个元素返回 true,否则返回 false

    Example:

    s = ['Blaie','1111',"Lee"]
    print(np.char.isalnum(s))
    s = ['Blaie1','反差萌',"Lee"]
    print(np.char.isalnum(s))
    s = ['Blaie1','#####',"Lee"]
    print(np.char.isalnum(s))
    """
    [ True  True  True]
    [ True  True  True]
    [ True False  True]
    """

    1.7 numpy.char.isdecimal

      char.isdecimal(a) 对于每个元素,如果元素中只有十进制字符,则返回 True

    Example:

    s = ['Blaie','1111',"Lee"]
    print(np.char.isdecimal(s))
    s = ['Blaie1','反差萌',"Lee"]
    print(np.char.isdecimal(s))
    s = ['Blaie1','#####',"Lee"]
    print(np.char.isdecimal(s))
    s = ['1.1111','1+2j',"Lee"]
    print(np.char.isdecimal(s))
    """
    [False  True False]
    [False False False]
    [False False False]
    [ True False False]
    """

    1.8 numpy.char.isdigit

      char.isdigit(a) 如果字符串中的所有字符都是数字并且至少有一个字符,则为每个元素返回 true,否则返回 false

    Example:

    s = ['Blaie','1111',"Lee007",'1.11','1+1j','反差萌','###']
    print(np.char.isdigit(s))
    """
    [False  True False False False False False]
    """

    1.9 numpy.char.islower

      char.islower(a) 如果字符串中的所有大小写字符都是小写并且至少有一个大小写字符,则为每个元素返回 true,否则返回 false

    Example:

    s = ['Blaie','1111',"Lee007",'1.11','1+1j','反差萌','###','abc','ABC','1+2j#']
    print(np.char.islower(s))
    """
    [False False False False  True False False  True False  True]
    """

    1.10 numpy.char.isnumeric

      char.isnumeric(a) 对于每个元素,如果元素中只有数字字符,则返回 True

    Example:

    s = ['Blaie','1111',"Lee007",'1.11','1+1j','反差萌','###','abc','ABC','1+2j#']
    print(np.char.isnumeric(s))  #只有全是数字时返回True
    """
    [False  True False False False False False False False False]
    """

    1.11 numpy.char.isspace

      char.isspace(a) 如果字符串中只有空白字符并且至少有一个字符,则为每个元素返回 true,否则返回 false

    Example:

    s = ['Blaie','1111',"Lee007",'1.11','1+1j','反差萌','###','abc','ABC','1+2j#','',' ','\t']
    print(np.char.isspace(s))  #只有全是空白字符且至少有一个时返回True
    """
    [False False False False False False False False False False False  True  True]
    """

    1.12 numpy.char.istitle

      char.istitle(a) 如果元素是一个标题字符串并且至少有一个字符,则为每个元素返回 true,否则返回 false

    Example:

    s = ['T','Blaie','1111',"Lee007",'1.11','1+1j','反差萌','###','abc','ABC','1+2j#','',' ','\t']
    print(np.char.istitle(s))  #只有全是空白字符且至少有一个时返回True
    """
    [ True  True False  True False False False False False False False False
     False False]
    """

    1.13 numpy.char.isupper 

      char.isupper(a) 如果字符串中的所有大小写字符都是大写并且至少有一个字符,则为每个元素返回 true,否则返回 false

    Example:

    s = ['T','Blaie','1111',"Lee007",'1.11','1+1j','反差萌','###','abc','ABC','1+2j#','',' ']
    print(np.char.isupper(s))  #只有全是空白字符且至少有一个时返回True
    i = 0
    for tmp in np.char.isupper(s):
        print('%-6s -> %-5s'%(s[i],tmp))
        i = i+1
    """
    [ True False False False False False False False False  True False False
     False]
    T      -> True 
    Blaie  -> False
    1111   -> False
    Lee007 -> False
    1.11   -> False
    1+1j   -> False
    反差萌    -> False
    ###    -> False
    abc    -> False
    ABC    -> True 
    1+2j#  -> False
           -> False
           -> False
    """

    1.14 numpy.char.startswith

      char.startswith(a, prefix, start=0, end=None) 返回一个布尔数组,该数组为 True,其中 a 中的字符串元素以前缀开头,否则为 False

    Example:

    print(np.char.startswith(['Blair','Jane'],'r'))
    print(np.char.startswith(['Blair','Jane'],'r',start=1,end=2))
    print(np.char.startswith(['Blair','Jane'],'r',start=3,end=5))
    s = np.array(['foo', 'bar'])
    print(np.char.startswith(s, 'ar'))
    print(np.char.startswith(s, 'a', start=1, end=2))
    """
    [False False]
    [False False]
    [False False]
    [False False]
    [False  True]
    """

    1.15 numpy.char.str_len

      char.str_len(a) 返回 len(a) 元素。

    Example:

    s = ['T','Blaie','1111',"Lee007",'1.11','1+1j','反差萌','###','abc','ABC','1+2j#','',' ']
    print(np.char.str_len(s))
    """
    [1 5 4 6 4 4 3 3 3 3 5 0 1]
    """

     


    __EOF__

  • 本文作者: Blair
  • 本文链接: https://www.cnblogs.com/BlairGrowing/p/15894803.html
  • 关于博主: 评论和私信会在第一时间回复。或者直接私信我。
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • 相关阅读:
    【Leetcode】964. Least Operators to Express Number
    项目经理如何做好任务分解,制定项目计划
    d3dx9_43.dll文件缺失的修复方法有哪些?4个方法快速修复d3dx9_43.dll
    (C++进阶)使用Eigen库进行多项式曲线拟合
    项目管理证书 PMP 的含金量高吗?
    基于EPICS stream模块的直流电源的IOC控制程序实例
    企业办公文件数据防泄密系统 | 文件、文档、设计图纸、源代码、音视频等核心数据资料防止外泄!
    python 装饰器
    C++ 【模板和string模拟实现】
    Redis怎么测?这篇文章写的太全了
  • 原文地址:https://www.cnblogs.com/BlairGrowing/p/15894803.html