NumPy 10 - 字符串函数
文章目录
- NumPy 10 - 字符串函数
- 1、numpy.char.add() 连接 两个数组的元素
- 2、numpy.char.multiply() 多重连接
- 3、numpy.char.center() 字符居中
- 4、numpy.char.capitalize() 首字母大写
- 5、numpy.char.title() 每个单词首字母大写
- 6、numpy.char.lower() 小写
- 7、numpy.char.upper() 大写
- 8、numpy.char.split() 分割字符串
- 9、numpy.char.splitlines() 以换行符分割字符串
- 10、numpy.char.strip() 移除首尾字符
- 11、numpy.char.join() 连接
- 12、numpy.char.replace() 替换
- 13、numpy.char.encode() 编码
- 14、numpy.char.decode() 解码
本文转发编辑自:
https://www.runoob.com/numpy/numpy-string-functions.html
以下函数用于对 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 |
1、numpy.char.add() 连接 两个数组的元素
numpy.char.add() 函数依次对 两个数组的元素 进行字符串连接。
import numpy as np
print ('\n连接两个字符串:')
print (np.char.add(['hello'],[' xyz']))
'''
连接两个字符串:
['hello xyz']
'''
print ('\n连接示例:')
print (np.char.add(['hello', 'hi'],[' abc', ' xyz']))
'''
连接示例:
['hello abc' 'hi xyz']
'''
2、numpy.char.multiply() 多重连接
numpy.char.multiply() 函数执行 多重连接。
import numpy as np
print (np.char.multiply('Runoob ',3))
# Runoob Runoob Runoob
3、numpy.char.center() 字符居中
numpy.char.center() 函数用于将字符串居中,并使用指定字符在左侧和右侧进行填充。
import numpy as np
# np.char.center(str , width,fillchar) :
# str: 字符串,width: 长度,fillchar: 填充字符
print (np.char.center('Runoob', 20,fillchar = '*'))
'''
*******Runoob*******
'''
4、numpy.char.capitalize() 首字母大写
numpy.char.capitalize() 函数将字符串的第一个字母转换为大写:
import numpy as np
print (np.char.capitalize('runoob')) # Runoob
5、numpy.char.title() 每个单词首字母大写
numpy.char.title() 函数将字符串的每个单词的第一个字母转换为大写:
import numpy as np
print (np.char.title('i like runoob'))
'''
I Like Runoob
'''
6、numpy.char.lower() 小写
numpy.char.lower() 函数对数组的每个元素转换为小写。
它对每个元素调用 str.lower
。
import numpy as np
#操作数组
print (np.char.lower(['RUNOOB','GOOGLE']))
# 操作字符串
print (np.char.lower('RUNOOB'))
'''
['runoob' 'google']
runoob
'''
7、numpy.char.upper() 大写
numpy.char.upper() 函数对数组的每个元素转换为大写。它对每个元素调用 str.upper。
import numpy as np
#操作数组
print (np.char.upper(['runoob','google']))
# 操作字符串
print (np.char.upper('runoob'))
'''
['RUNOOB' 'GOOGLE']
RUNOOB
'''
8、numpy.char.split() 分割字符串
numpy.char.split() 通过指定分隔符对字符串进行分割,并返回数组。
默认情况下,分隔符为空格。
import numpy as np
# 分隔符默认为空格
print (np.char.split ('i like runoob?'))
# 分隔符为 .
print (np.char.split ('www.runoob.com', sep = '.'))
'''
['i', 'like', 'runoob?']
['www', 'runoob', 'com']
'''
9、numpy.char.splitlines() 以换行符分割字符串
numpy.char.splitlines() 函数以换行符作为分隔符来分割字符串,并返回数组。
\n
,\r
,\r\n
都可用作换行符。
import numpy as np
# 换行符 \n
print (np.char.splitlines('i\nlike runoob?'))
print (np.char.splitlines('i\rlike runoob?'))
'''
['i', 'like runoob?']
['i', 'like runoob?']
'''
10、numpy.char.strip() 移除首尾字符
numpy.char.strip() 函数用于 移除开头 或 结尾处的特定字符。
import numpy as np
# 移除字符串头尾的 a 字符
print (np.char.strip('ashok arunooba','a'))
# 移除数组元素头尾的 a 字符
print (np.char.strip(['arunooba','admin','java'],'a'))
'''
shok arunoob
['runoob' 'dmin' 'jav']
'''
11、numpy.char.join() 连接
numpy.char.join() 函数通过指定分隔符来连接数组中的元素或字符串
import numpy as np
# 操作字符串
print (np.char.join(':','runoob'))
# 指定多个分隔符操作数组元素
print (np.char.join([':','-'],['runoob','google']))
'''
r:u:n:o:o:b
['r:u:n:o:o:b' 'g-o-o-g-l-e']
'''
12、numpy.char.replace() 替换
numpy.char.replace() 函数使用新字符串替换字符串中的所有子字符串。
import numpy as np
print (np.char.replace ('i like runoob', 'oo', 'cc'))
'''
i like runccb
'''
13、numpy.char.encode() 编码
numpy.char.encode() 函数对数组中的每个元素调用 str.encode 函数。
默认编码是 utf-8,可以使用标准 Python 库中的编解码器。
import numpy as np
a = np.char.encode('runoob', 'cp500')
print (a) # b'\x99\xa4\x95\x96\x96\x82'
14、numpy.char.decode() 解码
numpy.char.decode() 函数对编码的元素进行 str.decode() 解码。
import numpy as np
a = np.char.encode('runoob', 'cp500')
print (a) # b'\x99\xa4\x95\x96\x96\x82'
print (np.char.decode(a,'cp500')) # runoob
2020-01-25