软件测试|Python科学计算神器numpy教程(十)

numpy字符串处理

简介

NumPy是一个功能强大的Python库,主要用于科学计算和数据处理。除了处理数值数据外,NumPy还提供了一些强大的字符串处理功能。本文将介绍NumPy中常用的字符串处理函数,包括字符串拼接、切片、查找、替换等操作,展示NumPy在字符串处理方面的优势。

字符串拼接

NumPy提供了np.char.add()函数用于字符串的拼接。它接受两个字符串数组作为输入,并返回一个新的字符串数组,其中每个元素是对应位置上两个输入字符串的拼接结果。代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
arr1 = np.array(['Hello', 'World'])
arr2 = np.array(['!', 'NumPy'])

result = np.char.add(arr1, arr2)
print(result) # ['Hello!' 'WorldNumPy']

字符串拷贝

NumPy提供了np.char.multiply()函数用于字符串的拼接。该函数将指定的字符串进行多次拷贝,并将拷贝结果返回。代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
import numpy as np
print (np.char.multiply('Forever no.1!',3))

输出结果如下:
Forever no.1! Forever no.1! Forever no.1!

首字母转换为大写

Numpy提供了numpy.char.capitalize()函数用于字符串首字母转换成大写字母,代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
import numpy as np
print (np.char.capitalize('python'))

输出结果如下:
Python

每个元素的首字母转换为大写

NumPy的np.char.title()函数用于将字符串数组中每一个元素的首字母大写,代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
import numpy as np
print(np.char.title("china is a great country!"))

输出结果如下:
China Is A Great Country!

每个元素的字母转换为小写

NumPy的np.char.lower()函数用于将字符串数组中的大写字母全部转换为小写,代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
import numpy as np
print(np.char.lower("WELCOME TO GANZHOU"))

输出结果如下:
welcome to ganzhou

每个元素的字母转换为大写

NumPy的np.char.upper()函数用于将字符串数组中的大小写字母全部转换为大写,代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
import numpy as np
print(np.char.lower("welcome to ganzhou"))

输出结果如下:
WELCOME TO GANZHOU

指定分隔符分割

Numpy的numpy.char.split()方法可以使用指定分隔符对字符串进行分割,代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
import numpy as np
print(np.char.split("Welcome to Ganzhou"),sep = " ")

输出结果如下:
['Welcome', 'to', 'Ganzhou']

换行符分割

Numpy的numpy.char.splitlines()方法可以使用换行符对字符串进行分割,代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
import numpy as np
print("按换行符分割")
print(np.char.splitlines("Welcome\nto\nGanzhou"))

输出结果如下:
按换行符分割
['Welcome', 'to', 'Ganzhou']

移除字符串前后的空格

Numpy的numpy.char.strip()方法可以去掉字符串前后的空格,代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
import numpy as np
print("去掉前后空格")
print(np.char.strip(" Welcome to Ganzhou "))

输出结果如下:
去掉前后空格
Welcome to Ganzhou

字符替换

Numpy的numpy.char.replace()可以使用新字符替换原字符串中的指定字符,代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
import numpy as np
str = "Welcome to Ganzhou"
print("原字符串:",str)
#更改后字符串
print(np.char.replace(str, "Welcome to","Hello"))

输出结果如下:
原字符串: Welcome to Ganzhou
Hello Ganzhou

字符串切片

使用NumPy,我们可以轻松地对字符串数组进行切片操作。可以使用np.char.slice()函数指定起始和结束位置进行切片,并返回切片后的字符串数组,代码如下:

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
arr = np.array(['Hello', 'World'])

result = np.char.slice(arr, start=0, stop=3)
print(result) # ['Hel' 'Wor']

字符串查找

NumPy提供了多个函数用于字符串的查找操作。其中,np.char.find()函数用于查找子字符串在字符串数组中的位置,并返回一个新的整数数组。

代码语言:python
代码运行次数:0
复制
Cloud Studio 代码运行
arr = np.array(['Hello', 'World'])

result = np.char.find(arr, sub='l')
print(result) # [2 -1]

在上面的示例中,子字符串'l'在第一个元素中的位置是2,在第二个元素中未找到,返回-1。

总结

NumPy不仅是一个出色的数值计算库,还提供了强大的字符串处理功能。通过使用NumPy提供的字符串处理函数,我们可以轻松地进行字符串拼接、切片、查找、替换等操作,极大地简化了字符串处理的过程。希望本文对大家了解和使用NumPy的字符串处理功能有所帮助!