NumPy 教程(第 13 章):字符串函数

以下函数用于对 dtype 为 numpy.string_ 或 numpy.unicode_ 的数组执行向量化字符串操作

它们基于 Python 内置库中的标准字符串函数,这些函数在字符数组类(numpy.char)中定义

  • add() 对两个数组的逐个字符串元素进行连接

  • multiply() 返回按元素多重连接后的字符串

  • center() 居中字符串

  • capitalize() 将字符串第一个字母转换为大写

  • title() 将字符串的每个单词的第一个字母转换为大写

  • lower() 数组元素转换为小写

  • upper() 数组元素转换为大写

  • split() 指定分隔符对字符串进行分割,并返回数组列表

  • splitlines() 返回元素中的行列表,以换行符分割

  • strip() 移除元素开头或者结尾处的特定字符

  • join() 通过指定分隔符来连接数组中的元素

  • replace() 使用新字符串替换字符串中的所有子字符串

  • decode() 数组元素依次调用str.decode

  • encode() 数组元素依次调用str.encode

numpy.char.add() 函数

依次对两个数组的元素进行字符串连接

In [1]: import numpy as np

In [2]: print(np.char.add(['hello'],[' xyz']))
['hello xyz']

In [3]: print(np.char.add(['hello', 'hi'],[' abc', ' xyz']))
['hello abc' 'hi xyz']

numpy.char.multiply() 函数

执行多重连接

In [4]: print(np.char.multiply('Runoob ', 3))
Runoob Runoob Runoob

numpy.char.center() 函数

用于将字符串居中,并使用指定字符在左侧和右侧进行填充

In [5]: print(np.char.center('Runoob', 20, fillchar='*'))
*******Runoob*******

numpy.char.capitalize() 函数

将字符串的第一个字母转换为大写

In [6]: print(np.char.capitalize('runoob'))
Runoob

numpy.char.title() 函数

将字符串的每个单词的第一个字母转换为大写

In [7]: print(np.char.title('i like runoob'))
I Like Runoob

numpy.char.lower() 函数

对数组的每个元素转换为小写。它对每个元素调用 str.lower

In [8]: print(np.char.lower(['RUNOOB','GOOGLE']))
['runoob' 'google']

In [9]: print(np.char.lower('RUNOOB'))
runoob

numpy.char.upper() 函数

对数组的每个元素转换为大写。它对每个元素调用 str.upper

In [10]: print(np.char.upper(['runoob','google']))
['RUNOOB' 'GOOGLE']

In [11]: print(np.char.upper('runoob'))
RUNOOB

numpy.char.split() 函数

通过指定分隔符对字符串进行分割,并返回数组。默认情况下,分隔符为空格

In [12]: print(np.char.split ('i like runoob?'))
['i', 'like', 'runoob?']

In [13]: print(np.char.split ('www.runoob.com', sep = '.'))
['www', 'runoob', 'com']

numpy.char.splitlines() 函数

以换行符作为分隔符来分割字符串,并返回数组

In [14]: print(np.char.splitlines('i\nlike runoob?'))
['i', 'like runoob?']

In [15]: print(np.char.splitlines('i\rlike runoob?'))
['i', 'like runoob?']

\n\r\r\n 都可用作换行符

numpy.char.strip() 函数

用于移除开头或结尾处的特定字符

In [16]: print(np.char.strip('ashok arunooba','a'))
shok arunoob

In [17]: print(np.char.strip(['arunooba','admin','java'],'a'))
['runoob' 'dmin' 'jav']

numpy.char.join() 函数

通过指定分隔符来连接数组中的元素或字符串

In [18]: print(np.char.join(':','runoob'))
r:u:n:o:o:b

In [19]: print(np.char.join([':','-'],['runoob','google']))
['r:u:n:o:o:b' 'g-o-o-g-l-e']

numpy.char.replace() 函数

使用新字符串替换字符串中的所有子字符串

In [20]: print (np.char.replace ('i like runoob', 'oo', 'cc'))
i like runccb

numpy.char.decode() 函数

对编码的元素进行 str.decode() 解码

In [21]: b = np.char.encode('runoob', 'cp500')

In [22]: b
Out[22]: array(b'\x99\xa4\x95\x96\x96\x82', dtype='|S6')

In [23]: print(np.char.decode(b, 'cp500'))
runoob

numpy.char.encode() 函数

对数组中的每个元素调用 str.encode 函数。 默认编码是 utf-8,可以使用标准 Python 库中的编解码器

In [24]: print(np.char.encode('runoob', 'cp500'))
b'\x99\xa4\x95\x96\x96\x82'
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值