除了 NumPy 的数值计算能力,它还提供了一些可以应用于 NumPy 数组中字符串的函数。
例如,我们可以将两个字符串相加,更改字符串的内容,进行大小写转换,填充,修剪等等。
常用的 NumPy 字符串函数
以下是一些 NumPy 提供的字符串函数
函数 | 描述 |
---|---|
add() |
连接两个字符串 |
multiply() |
将字符串重复指定的次数 |
capitalize() |
将字符串的第一个字母大写 |
lower() |
将字符串中的所有大写字符转换为小写 |
upper() |
将字符串中的所有小写字符转换为大写 |
join() |
连接一系列字符串 |
equal() |
检查两个字符串是否相等 |
注意:这些是一些最常用的 NumPy 字符串函数,请访问 NumPy 字符串操作 以了解更多。
NumPy 字符串 add() 函数
在 NumPy 中,我们使用 np.char.add()
函数对两个字符串数组执行逐元素字符串连接。例如,
import numpy as np
array1 = np.array(['iPhone: ', 'price: '])
array2 = np.array(['15', '$900'])
# perform element-wise array string concatenation
result = np.char.add(array1, array2)
print(result)
输出
['iPhone: 15' 'price: $900']
在此示例中,我们定义了两个 NumPy 数组:array1 和 array2,其字符串元素分别为 'iphone: '
和 'price: '
以及 '15'
和 '$900'
。
然后,我们使用 np.char.add(array1, array2)
来逐元素连接 array1 和 array2 的元素。
最后,我们将连接后的字符串存储在 result
中,在本例中为 'iPhone: 15'
和 'price: $900'
。
NumPy 字符串 multiply() 函数
np.char.multiply()
函数用于执行逐元素字符串重复。它返回一个字符串数组,其中每个字符串元素都重复指定的次数。
让我们看一个例子。
import numpy as np
# define array with three string elements
array1 = np.array(['A', 'B', 'C'])
# repeat each element in array1 two times
result = np.char.multiply(array1, 2)
print(result)
# Output: ['AA' 'BB' 'CC']
在这里,np.char.multiply(array1, 2)
将 array1 中的每个元素重复两次。
NumPy 字符串 capitalize() 函数
在 NumPy 中,np.char.capitalize()
函数用于将给定数组中每个字符串元素的首字母大写。例如,
import numpy as np
# define an array with three string elements
array1 = np.array(['eric', 'paul', 'sean'])
# capitalize the first letter of each string in array1
result = np.char.capitalize(array1)
print(result)
# Output: ['Eric' 'Paul' 'Sean']
在此示例中,np.char.capitalize(array1)
将 array1 数组中字符串元素的首字母大写。
NumPy 字符串 upper() 和 lower() 函数
NumPy 提供了两个字符串函数用于转换字符串的大小写:np.char.upper()
和 np.char.lower()
。
让我们看一个例子。
import numpy as np
array1 = np.array(['nEpalI', 'AmeriCAN', 'CaNadIan'])
# convert all string elements to uppercase
result1 = np.char.upper(array1)
# convert all string elements to lowercase
result2 = np.char.lower(array1)
print("To Uppercase: ",result1)
print("To Lowercase: ",result2)
输出
To Uppercase: ['NEPALI' 'AMERICAN' 'CANADIAN'] To Lowercase: ['nepali' 'american' 'canadian']
这里,
np.char.upper(array1)
- 将 array1 中的所有字符串转换为大写np.char.lower(array1)
- 将 array1 中的所有字符串转换为小写
NumPy 字符串 join() 函数
在 NumPy 中,我们使用 np.char.join()
函数将数组中的字符串与指定的分隔符连接起来。例如,
import numpy as np
# create an array of strings
array1 = np.array(['hello', 'world'])
# join the strings in the array using a dash as the delimiter
result = np.char.join('-', array1)
print(result)
# Output: ['h-e-l-l-o' 'w-o-r-l-d']
在此示例中,使用 np.char.join('-', array1)
函数将 array1 中的字符串连接起来,并使用连字符 -
作为分隔符。
结果字符串中的每个字符都用连字符分隔。
NumPy 字符串 equal() 函数
np.char.equal()
函数用于执行两个字符串数组之间的逐元素字符串比较。
让我们看一个例子。
import numpy as np
# create two arrays of strings
array1 = np.array(['C', 'Python', 'Swift'])
array2 = np.array(['C++', 'Python', 'Java'])
# check if each element of the arrays is equal
result = np.char.equal(array1, array2)
print(result)
# Output: [False True False]
在这里,np.char.equal(array1, array2)
检查 array1 和 array2 的相应元素是否相等。
结果布尔数组 [False True False]
表明 array1 和 array2 的第一个和第三个元素不相等,而第二个元素相等。