NumPy字符串处理函数
NumPy 提供了许多字符串处理函数,它们被定义在用于处理字符串数组的 numpy.char 这个类中,这些函数的操作对象是 string_ 或者 unicode_ 字符串数组。如下表所示:
上述函数基于 Python 内置的字符串函数实现, 下面对一些常用函数进行讲解。
示例:
函数名称 | 描述 |
---|---|
add() | 对两个数组相应位置的字符串做连接操作。 |
multiply() | 返回多个字符串副本,比如将字符串“ hello”乘以3,则返回字符串“ hello hello hello”。 |
center() | 用于居中字符串,并将指定的字符,填充在原字符串的左右两侧。 |
capitalize() | 将字符串第一个字母转换为大写。 |
title() | 标题样式,将每个字符串的第一个字母转换为大写形式。 |
lower() | 将数组中所有的字符串的大写转换为小写。 |
upper() | 将数组中所有的字符串的小写转换为大写。 |
split() | 通过指定分隔符对字符串进行分割,并返回一个数组序列,默认分隔符为空格。 |
splitlines() | 以换行符作为分隔符来分割字符串,并返回数组序列。 |
strip() | 删除字符串开头和结尾处的空字符。 |
join() | 返回一个新的字符串,该字符串是以指定分隔符来连接数组中的所有元素。 |
replace() | 用新的字符串替换原数组中指定的字符串。 |
decode() | 用指定的编码格式对数组中元素依次执行解码操作。 |
encode() | 用指定的编码格式对数组中元素依次执行编码操作。 |
上述函数基于 Python 内置的字符串函数实现, 下面对一些常用函数进行讲解。
numpy.char.add()
numpy.char.add() 将两个数组对应位置的字符串元素进行连接。示例如下:import numpy as np print(np.char.add(['welcome','url'], [' to C net','is c.biancheng.net'] ))输出结果:
['welcome to C net' 'url is c.biancheng.net']
numpy.char.multiply()
该函数将指定的字符串进行多次拷贝,并将拷贝结果返回,示例如下:import numpy as np print (np.char.multiply('c.biancheng.net',3))输出结果:
c.biancheng.net c.biancheng.net c.biancheng.net
numpy.char.center()
numpy.char.center() 用于居中字符串,其语法格式如下:np.char.center(string, width, fillchar)
string: 代表字符串,width: 表示长度,fillchar: 要填充的字符示例:
import numpy as np print(np.char.center("c.bianchneg.net", 20, '*'))输出如下所示:
**c.bianchneg.net***
numpy.char.capitalize()
numpy.char.capitalize() 将字符串的第一个字母转换为大写,示例如下:import numpy as np print (np.char.capitalize('python'))输出结果:
Python
numpy.char.title()
numpy.char.title() 将字符串数组中每个元素的第一个字母转换为大写,示例如下:import numpy as np print(np.char.title("welcome to china"))输出结果
Welcome To China
numpy.char.lower()
numpy.char.lower() 将字符串数组中每个元素转换为小写,示例如下:import numpy as np print(np.char.lower("WELCOME TO MYHOME"))输出结果:
welcome to myhome
numpy.char.upper()
numpy.char.upper() 将数组中的每个元素转换为大写,示例如下:import numpy as np print(np.char.upper("Welcome To Python"))输出结果如下:
WELCOME TO JAVATPOINT
numpy.char.split()
该函数通过指定分隔符对字符串进行分割,并返回数组序列。默认情况下,分隔符为空格。import numpy as np print(np.char.split("Welcome To Python"),sep = " ")输出结果
['Welcome', 'To', 'Python']
numpy.char.splitlines()
numpy.char.splitlines() 以换行符作为分隔符来分割字符串,并返回一个数组序列。import numpy as np print("Splitting the String line by line..") print(np.char.splitlines("Welcome\nTo\nPython"))输出结果:
['Welcome', 'To', 'Python']
numpy.char.strip()
numpy.char.strip() 用于移除开头或结尾处的空格。import numpy as np print("原字符串:",str) str = " welcome to Python " print(np.char.strip(str))输出结果:
原字符串: welcome to Python welcome to Python
numpy.char.join()
numpy.char.join() 通过指定的分隔符来连接数组中的元素或字符串。import numpy as np print (np.char.join(':','Love')) #也可指定多个分隔符 print (np.char.join([':','-'],['Love','Python']))输出结果:
L:o:v:e ['L:o:v:e' 'P-y-t-h-o-n']
numpy.char.replace()
numpy.char.replace() 使用新字符替换字符串中的指定字符。示例如下:import numpy as np str = "Welcome to China" print("原字符串:",str) #更改后字符串 print(np.char.replace(str, "Welcome to","Hello"))输出结果:
原字符串: Welcome to China Hello China
numpy.char.encode()与decode()
默认以utf-8
的形式进行编码与解码,示例如下:
import numpy as np #cp500国际编码 encode_str = np.char.encode("Welcome to China", 'cp500') decode_str =np.char.decode(encode_str, 'cp500') print(encode_str) print(decode_str)输出结果:
b'\xa6\x85\x93\x83\x96\x94\x85@\xa3\x96@\xc3\x88\x89\x95\x81' Welcome to China