15. NumPy字符串处理函数
1. 前言
NumPy 提供了许多字符串处理函数,它们被定义在用于处理字符串数组的 numpy.char 这个类中,这些函数的操作对象是 string_ 或者 unicode_ 字符串数组。如下表所示:
函数名称 | 描述 |
---|---|
add() | 对两个数组相应位置的字符串做连接操作。 |
multiply() | 返回多个字符串副本,比如将字符串“ hello”乘以3,则返回字符串“ hello hello hello”。 |
center() | 用于居中字符串,并将指定的字符,填充在原字符串的左右两侧。 |
capitalize() | 将字符串第一个字母转换为大写。 |
title() | 标题样式,将每个字符串的第一个字母转换为大写形式。 |
lower() | 将数组中所有的字符串的大写转换为小写。 |
upper() | 将数组中所有的字符串的小写转换为大写。 |
split() | 通过指定分隔符对字符串进行分割,并返回一个数组序列,默认分隔符为空格。 |
splitlines() | 以换行符作为分隔符来分割字符串,并返回数组序列。 |
strip() | 删除字符串开头和结尾处的空字符。 |
join() | 返回一个新的字符串,该字符串是以指定分隔符来连接数组中的所有元素。 |
replace() | 用新的字符串替换原数组中指定的字符串。 |
decode() | 用指定的编码格式对数组中元素依次执行解码操作。 |
encode() | 用指定的编码格式对数组中元素依次执行编码操作。 |
上述函数基于 Python 内置的字符串函数实现, 下面对一些常用函数进行讲解。
2. numpy.char.add()
numpy.char.add() 将两个数组对应位置的字符串元素进行连接。示例如下:
1 2 | import numpy as np print(np. char .add([ 'welcome' , 'url' ], [ ' to C net' , 'is c.biancheng.net' ] )) |
输出结果:
1 | [ 'welcome to C net' 'url is c.biancheng.net' ] |
3. numpy.char.multiply()
该函数将指定的字符串进行多次拷贝,并将拷贝结果返回,示例如下:
1 2 | import numpy as np print (np. char .multiply( 'c.biancheng.net' ,3)) |
输出结果:
1 | c.biancheng.net c.biancheng.net c.biancheng.net |
4. numpy.char.center()
numpy.char.center() 用于居中字符串,其语法格式如下:
1 | np. char .center( string , width, fillchar) |
string: 代表字符串,width: 表示长度,fillchar: 要填充的字符
示例:
1 2 | import numpy as np print(np. char .center( "c.bianchneg.net" , 20, '*' )) |
输出如下所示:
1 | **c.bianchneg.net*** |
5. numpy.char.capitalize()
numpy.char.capitalize() 将字符串的第一个字母转换为大写,示例如下:
1 2 | import numpy as np print (np. char .capitalize( 'python' )) |
输出结果:
1 | Python |
6. numpy.char.title()
numpy.char.title() 将字符串数组中每个元素的第一个字母转换为大写,示例如下:
1 2 | import numpy as np print(np. char .title( "welcome to china" )) |
输出结果:
1 | Welcome To China |
7. numpy.char.lower()
numpy.char.lower() 将字符串数组中每个元素转换为小写,示例如下:
1 2 | import numpy as np print(np. char .lower( "WELCOME TO MYHOME" )) |
输出结果:
1 | welcome to myhome |
8. numpy.char.upper()
numpy.char.upper() 将数组中的每个元素转换为大写,示例如下:
1 2 | import numpy as np print(np. char .upper( "Welcome To Python" )) |
输出结果如下:
1 | WELCOME TO JAVATPOINT |
9. numpy.char.split()
该函数通过指定分隔符对字符串进行分割,并返回数组序列。默认情况下,分隔符为空格。
1 2 | import numpy as np print(np. char .split( "Welcome To Python" ),sep = " " ) |
输出结果
1 | [ 'Welcome' , 'To' , 'Python' ] |
10. numpy.char.splitlines()
numpy.char.splitlines() 以换行符作为分隔符来分割字符串,并返回一个数组序列。
1 2 3 | import numpy as np print( "Splitting the String line by line.." ) print(np. char .splitlines( "Welcome\nTo\nPython" )) |
输出结果:
1 | [ 'Welcome' , 'To' , 'Python' ] |
11. numpy.char.strip()
numpy.char.strip() 用于移除开头或结尾处的空格。
1 2 3 4 | import numpy as np print( "原字符串:" ,str) str = " welcome to Python " print(np. char .strip(str)) |
输出结果:
1 2 | 原字符串: welcome to Python welcome to Python |
12. numpy.char.join()
numpy.char.join() 通过指定的分隔符来连接数组中的元素或字符串。
1 2 3 4 | import numpy as np print (np. char . join ( ':' , 'Love' )) #也可指定多个分隔符 print (np. char . join ([ ':' , '-' ],[ 'Love' , 'Python' ])) |
输出结果:
1 2 | L:o:v:e [ 'L:o:v:e' 'P-y-t-h-o-n' ] |
13. numpy.char.replace()
numpy.char.replace() 使用新字符替换字符串中的指定字符。示例如下:
1 2 3 4 5 | import numpy as np str = "Welcome to China" print( "原字符串:" ,str) #更改后字符串 print(np. char .replace(str, "Welcome to" , "Hello" )) |
输出结果:
1 2 | 原字符串: Welcome to China Hello China |
14. numpy.char.encode()与decode()
默认以utf-8
的形式进行编码与解码,示例如下:
1 2 3 4 5 6 | 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) |
输出结果:
1 2 | b '\xa6\x85\x93\x83\x96\x94\x85@\xa3\x96@\xc3\x88\x89\x95\x81' Welcome to China |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)