📅  最后修改于: 2023-12-03 15:03:19.744000             🧑  作者: Mango
NumPy是Python语言的一个扩充程序库。支持高维数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。本文将介绍NumPy中的字符串操作及查找函数。
在NumPy库中,字符串的操作主要有以下几种:
该函数将两个数组的对应元素的字符串合并为一个数组。
import numpy as np
a = np.array(['Hello', 'World'])
b = np.array(['nihao', 'python'])
print(np.char.add(a, b))
# 输出结果
['Hellonihao' 'Worldpython']
该函数将数组中的字符串转换为大写形式。
import numpy as np
a = np.array(['apple', 'orange', 'banana'])
print(np.char.upper(a))
# 输出结果
['APPLE' 'ORANGE' 'BANANA']
该函数将数组中的字符串转换为小写形式。
import numpy as np
a = np.array(['APPLE', 'ORANGE', 'BANANA'])
print(np.char.lower(a))
# 输出结果
['apple' 'orange' 'banana']
该函数将数组中的字符串居中,并且两侧用指定字符填充。
import numpy as np
a = np.array(['hello', 'world'])
print(np.char.center(a, 20, fillchar='-'))
# 输出结果
['-------hello---------' '-------world---------']
该函数将字符串按照指定的分隔符进行分割,并返回一个列表。
import numpy as np
a = np.array(['I am a boy', 'You are a girl'])
print(np.char.split(a, sep=' '))
# 输出结果
[['I', 'am', 'a', 'boy'], ['You', 'are', 'a', 'girl']]
NumPy库中也提供了一些字符串查找函数,包括:
该函数返回字符串中指定子串第一次出现的位置,如果没有找到将返回-1。
import numpy as np
a = np.array(['apple', 'orange', 'banana'])
print(np.char.find(a, 'an'))
# 输出结果
[ 1 -1 1]
与char.find()函数类似,但是是从右侧开始查找。
import numpy as np
a = np.array(['apple', 'orange', 'banana'])
print(np.char.rfind(a, 'an'))
# 输出结果
[ 4 -1 3]
该函数返回字符串中指定子串出现的次数。
import numpy as np
a = np.array(['apple', 'orange', 'banana'])
print(np.char.count(a, 'a'))
# 输出结果
[1 1 3]
该函数返回一个布尔数组,数组中的值表示字符串是否以指定的子串开头。
import numpy as np
a = np.array(['apple', 'orange', 'banana'])
print(np.char.startswith(a, 'ap'))
# 输出结果
[ True False False]
与char.startswith()函数类似,但是是判断字符串是否以指定的子串结尾。
import numpy as np
a = np.array(['apple', 'orange', 'banana'])
print(np.char.endswith(a, 'e'))
# 输出结果
[ True False False]
NumPy库提供了丰富的字符串操作和查找函数,可以方便地对数组中的字符串进行处理。以上只是其中的几个常用函数,更多的函数信息可以查看官方文档。