字符串函数

标准字符串函数在字符数组类(numpy.char)中定义

函数 说明
add() 对两个数组的逐个字符串元素进行连接
multiply() 返回按元素多重连接后的字符串
center() 字符串居中
capitalize() 将字符串的第一个字母转换为大写
title() 将字符串中每个单词的第一个字母转换为大写
lower() 将数组元素转换为小写
upper() 将数组元素转换为大写
split() 指定分隔符对字符串进行分割,并返回数组列表
splitlines() 返回元素中的行列表,以换行符分割
strip() 移除元素开头或结尾处的特定字符
join() 通过指定分隔符连接数组中的元素
replace() 使用新字符串替换字符串中的所有子字符串
encode() 数组元素依次调用 str.encode
decode() 数组元素依次调用 str.decode

1> numpy.char.add()

依次对两个数组的元素进行字符串连接

print(f'两个字符串连接: {np.char.add(["hello "],["world!"])}')  # 输出结果: 两个字符串连接: ['hello world!']
print(f'连接示例: {np.char.add(["中国","欢迎"],["你好!","你"])}')  # 输出结果: 连接示例: ['中国你好!' '欢迎你']

2> numpy.char.multiply()

多重连接

print(f'多重连接: {np.char.multiply("numpy ",3)}')  # 输出结果:  多重连接: numpy numpy numpy

3> numpy.char.center()

用于将字符串居中,并使用指定字符在左侧和右侧进行填充

print(np.char.center('numpy', 20, fillchar = '*'))  # 输出结果:

4> numpy.char.capitalize()

将字符串的第一个字母转换为大写

print(np.char.capitalize('i like numpy'))  # 输出结果:  I like numpy

5> numpy.char.title()

将字符串中每个单词的第一个字母转换为大写

print(np.char.title('i like numpy'))  # 输出结果: I Like Numpy

6> numpy.char.lower()

将数组的每个元素转换为小写,对每个元素调用 str.lower

print(np.char.lower(['NUMPY','PANDAS']))  # 输出结果: ['numpy' 'pandas']

7> numpy.char.upper()

将数组的每个元素转换为大写,对每个元素调用 str.upper

print(np.char.upper(['numpy ', 'pandas']))  # 输出结果: ['NUMPY ' 'PANDAS']

8> numpy.char.split()

通过指定分隔符对字符串进行分割,并返回数组,默认分隔符为空格

# 分割符默认为空格
print(np.char.split('i like numpy'))  # 输出结果: ['i', 'like', 'numpy']
# 指定分隔符
print(np.char.split('www.python.org', sep = '.'))  # 输出结果: ['www', 'python', 'org']

9> numpy.char.splitlines()

以换行符为分隔符分割字符串,并返回数组

print(np.char.splitlines('i\nlike python'))  # 输出结果: ['i', 'like python']
print(np.char.splitlines('i\rlike python?'))  # 输出结果: ['i', 'like python?']

10> numpy.char.strip()

移除开头或结尾处的特定字符

print(np.char.strip('hhHello woldh','h'))  # 输出结果: Hello wold
print(np.char.strip(['detail','good','world','deed'],'d'))  # 输出结果: ['etail' 'goo' 'worl' 'ee']

11> numpy.char.join()

通过指定分隔符连接数组中的元素或字符串

print(np.char.join(':','numpy'))  # 输出结果: n:u:m:p:y
print(np.char.join([':','-'],['numpy','pandas']))  # 输出结果: ['n:u:m:p:y' 'p-a-n-d-a-s']

12> numpy.char.replace()

用新字符串替换字符串中的所有子字符串

print(np.char.replace('how do you do','o','j'))  # 输出结果: hjw dj yju dj

13> numpy.char.encode()

对数组中的每个元素调用 str.encode()函数,默认编码是 utf-8

print(f'字符串编码后:{np.char.encode("numpy","cp500")}')  # 输出结果: 字符串编码后:b'\x95\xa4\x94\x97\xa8'

14> numpy.char.decode()

对数组中的每个元素调用 str.decode()函数,默认解码是 utf-8

str_v = np.char.encode('numpy','cp500')
print(f'编码:{str_v}')   # 输出结果: 编码: b'\x95\xa4\x94\x97\xa8'
print(f'解码:{np.char.decode(str_v,"cp500")}')  # 输出结果: 解码:numpy