介绍
在本实验中,我们将介绍 Numpy 库中 char 模块 的 isnumeric() 函数。该函数用于检查字符串是否仅包含数字字符。如果字符串中仅包含数字字符,函数将返回 True,否则返回 False。
虚拟机提示
虚拟机启动完成后,点击左上角切换到 Notebook 标签页,以访问 Jupyter Notebook 进行练习。
有时,你可能需要等待几秒钟,直到 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。
如果你在学习过程中遇到问题,随时可以向 Labby 提问。实验结束后请提供反馈,我们将及时为你解决问题。
导入 Numpy 库
在使用 isnumeric() 函数之前,我们需要先导入 numpy 库。我们使用 import 关键字,后跟库名 numpy 和别名 np:
import numpy as np
对单个字符串使用 isnumeric()
我们可以使用 isnumeric() 函数来检查单个字符串是否仅包含数字字符。让我们以字符串 "12Apple90" 为例,并对其应用 isnumeric() 函数:
import numpy as np
string1 = "12Apple90"
print("The Input string is:")
print(string1)
x = np.char.isnumeric(string1)
print("The Output is:")
print(x)
输出:
The Input string is:
12Apple90
The Output is:
False
如我们所见,isnumeric() 函数返回了 False,因为输入字符串中包含非数字字符。
对数组使用 isnumeric()
我们也可以对字符串数组使用 isnumeric() 函数。让我们以包含数字和非数字字符串的数组 inp_ar 为例:
import numpy as np
inp_ar = np.array(['1', '2000', '90', '3.5', '0'])
print("The Input array is:")
print(inp_ar)
outp_arr = np.char.isnumeric(inp_ar)
print("The Output array is:")
print(outp_arr)
输出:
The Input array is:
['1' '2000' '90' '3.5' '0']
The Output array is:
[ True True True False True]
如我们所见,isnumeric() 函数返回了一个布尔值数组,其中 True 表示字符串仅包含数字字符,而 False 表示字符串包含非数字字符。
isnumeric() 的局限性
需要注意的是,isnumeric() 函数对于包含小数的数值字符串会返回 False,如上文示例 2 所示。
总结
在本实验中,我们学习了 Numpy 库中的 isnumeric() 函数。我们介绍了如何将其用于单个字符串和数组,以及该函数的局限性。