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

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

image.png

numpy字符串处理

简介

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

字符串拼接

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

arr1 = np.array(['Hello', 'World'])
arr2 = np.array(['!', 'NumPy'])

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

字符串拷贝

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

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()函数用于字符串首字母转换成大写字母,代码如下:

import numpy as np
print (np.char.capitalize('python'))
-------------------------
输出结果如下:
Python

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

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

import numpy as np  
print(np.char.title("china is a great country!"))
---------------------------------------
输出结果如下:
China Is A Great Country!

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

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

import numpy as np
print(np.char.lower("WELCOME TO GANZHOU"))
------------------------------
输出结果如下:
welcome to ganzhou

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

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

import numpy as np
print(np.char.lower("welcome to ganzhou"))
-----------------------------
输出结果如下:
WELCOME TO GANZHOU

指定分隔符分割

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

import numpy as np
print(np.char.split("Welcome to Ganzhou"),sep = " ")
------------------------
输出结果如下:
['Welcome', 'to', 'Ganzhou']

换行符分割

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

import numpy as np
print("按换行符分割")
print(np.char.splitlines("Welcome\nto\nGanzhou"))
-----------------------------
输出结果如下:
按换行符分割
['Welcome', 'to', 'Ganzhou']

移除字符串前后的空格

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

import numpy as np
print("去掉前后空格")
print(np.char.strip("  Welcome to Ganzhou  "))
-------------------
输出结果如下:
去掉前后空格
Welcome to Ganzhou

字符替换

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

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()函数指定起始和结束位置进行切片,并返回切片后的字符串数组,代码如下:

arr = np.array(['Hello', 'World'])

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

字符串查找

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

arr = np.array(['Hello', 'World'])

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

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

总结

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

相关文章
|
12天前
|
Python
NumPy 教程 之 NumPy 统计函数 9
NumPy提供了多种统计函数,如计算数组中的最小值、最大值、百分位数、标准差及方差等。其中,标准差是一种衡量数据平均值分散程度的指标,它是方差的算术平方根。例如,对于数组[1,2,3,4],其标准差可通过计算各值与均值2.5的差的平方的平均数的平方根得出,结果为1.1180339887498949。示例代码如下: ```python import numpy as np print(np.std([1,2,3,4])) ``` 运行输出即为:1.1180339887498949。
106 50
|
2天前
|
Python
NumPy 教程 之 NumPy 矩阵库(Matrix) 4
矩阵是由行和列构成的矩形数组,其元素可以是数字、符号或数学表达式。
14 4
|
3天前
|
Python
NumPy 教程 之 NumPy 矩阵库(Matrix) 2
不同于ndarray,matlib函数生成的是矩阵形式。教程中详细解释了矩阵的概念,并介绍了转置矩阵的实现方式,使用T属性或函数实现。此外,还展示了如何利用`matlib.empty()`创建指定形状的新矩阵,并可选择数据类型及顺序。最后通过示例演示了矩阵填充随机数据的方法。
14 3
|
12天前
|
Python
NumPy 教程 之 NumPy 统计函数 10
NumPy统计函数,包括查找数组中的最小值、最大值、百分位数、标准差和方差等。方差表示样本值与平均值之差的平方的平均数,而标准差则是方差的平方根。例如,`np.var([1,2,3,4])` 的方差为 1.25。
93 48
|
2天前
|
安全 JavaScript 前端开发
自动化测试的魔法:如何用Python编写你的第一个测试脚本
【8月更文挑战第41天】在软件的世界里,质量是王道。而自动化测试,就像是维护这个王国的骑士,确保我们的软件产品坚不可摧。本文将引导你进入自动化测试的奇妙世界,教你如何使用Python这把强大的魔法杖,编写出能够守护你代码安全的第一道防护咒语。让我们一起开启这场魔法之旅吧!
|
6天前
|
存储 Python
NumPy 教程 之 NumPy 字节交换 1
本教程介绍了NumPy中的字节交换功能。字节顺序规定了多字节对象在内存中的存储规则,分为大端模式和小端模式。大端模式下,高字节存于低地址;而在小端模式下则相反。`numpy.ndarray.byteswap()`函数用于对ndarray中的每个元素进行字节序转换。示例展示了如何使用该函数实现字节交换,并提供了具体输出结果。
32 11
|
6天前
|
Python
NumPy 教程 之 NumPy 副本和视图 1
NumPy 副本和视图教程介绍:副本是对原始数据的完全拷贝,修改副本不会影响原始数据;而视图则是原始数据的引用,修改视图会影响原始数据。视图通常通过切片操作或 `ndarray.view()` 方法获得,副本则通过 `ndarray.copy()` 或 `deepCopy()` 函数生成。简单赋值不创建副本,而是共享原始数据。
26 9
|
5天前
|
Python
NumPy 教程 之 NumPy 副本和视图 3
副本是对原始数据的完全拷贝,修改副本不影响原始数据;而视图则是原始数据的别名,修改视图会影响原始数据。视图通常在切片操作或使用`view()`函数时产生,副本则在使用`copy()`函数或Python序列切片操作及`deepCopy()`函数时生成。示例展示了如何使用`view()`创建数组视图,并说明了其对原始数组形状的影响。
19 6
|
7天前
|
机器学习/深度学习 搜索推荐 算法
NumPy 教程 之 NumPy 排序、条件筛选函数 8
NumPy提供了多种排序方法,包括快速排序、归并排序及堆排序,各有不同的速度、最坏情况性能、工作空间和稳定性特点。此外,NumPy还提供了`numpy.extract()`函数,可以根据特定条件从数组中抽取元素。例如,在一个3x3数组中,通过定义条件选择偶数元素,并使用该函数提取这些元素。示例输出为:[0., 2., 4., 6., 8.]。
18 8
|
4天前
|
Python
NumPy 教程 之 NumPy 副本和视图 5
NumPy副本和视图教程介绍副本与视图的区别:副本是对原始数据的完全拷贝,修改副本不会影响原始数据;而视图则是对原始数据的引用,修改视图会影响原始数据。视图通常在切片操作或使用`view()`函数时产生;副本则在序列切片操作、调用`deepCopy()`或使用`copy()`函数时生成。示例展示了使用`copy()`函数创建副本,并验证了修改副本不会改变原始数据。
19 4