Python学习笔记第四十二天(NumPy 字符串函数)

NumPy 字符串函数

以下函数用于对 dtype 为 numpy.string_ 或 numpy.unicode_ 的数组执行向量化字符串操作。 它们基于 Python 内置库中的标准字符串函数。

这些函数在字符数组类(numpy.char)中定义。

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

numpy.char.add()

numpy.char.add() 函数依次对两个数组的元素进行字符串连接。

# 实例 1
import numpy as np 
 
print ('连接两个字符串:')
print (np.char.add(['hello'],[' xyz']))
print ('\n')
 
print ('连接示例:')
print (np.char.add(['hello', 'hi'],[' abc', ' xyz']))

输出结果为:

连接两个字符串:
['hello xyz']

连接示例:
['hello abc' 'hi xyz']

numpy.char.multiply()

numpy.char.multiply() 函数执行多重连接。

# 实例 2
import numpy as np 
 
print (np.char.multiply('abc ',3))

输出结果为:

abc abc abc

numpy.char.center()

numpy.char.center() 函数用于将字符串居中,并使用指定字符在左侧和右侧进行填充。

# 实例 3
import numpy as np 
 
# np.char.center(str , width,fillchar) :
# str: 字符串,width: 长度,fillchar: 填充字符
print (np.char.center('Rabc', 20,fillchar = '*'))

输出结果为:

*******abc*******

numpy.char.capitalize()

numpy.char.capitalize() 函数将字符串的第一个字母转换为大写:

# 实例 4
import numpy as np 
 
print (np.char.capitalize('abc'))

输出结果为:

abc

numpy.char.title()

numpy.char.title() 函数将字符串的每个单词的第一个字母转换为大写:

# 实例 5
import numpy as np
 
print (np.char.title('i like abc'))

输出结果为:

I Like abc

numpy.char.lower()

numpy.char.lower() 函数对数组的每个元素转换为小写。它对每个元素调用 str.lower。

# 实例 6
import numpy as np 
 
#操作数组
print (np.char.lower(['Baidu','GOOGLE']))
 
# 操作字符串
print (np.char.lower('Baidu'))

输出结果为:

['baidu' 'google']
baidu

numpy.char.upper()

numpy.char.upper() 函数对数组的每个元素转换为大写。它对每个元素调用 str.upper。

# 实例 7
import numpy as np 
 
#操作数组
print (np.char.upper(['baidu','google']))
 
# 操作字符串
print (np.char.upper('baidu'))

输出结果为:

['BAIDU' 'GOOGLE']
BAIDU

numpy.char.split()

numpy.char.split() 通过指定分隔符对字符串进行分割,并返回数组。默认情况下,分隔符为空格。

# 实例 8
import numpy as np 
 
# 分隔符默认为空格
print (np.char.split ('i like abc?'))
# 分隔符为 .
print (np.char.split ('www.abc.com', sep = '.'))

输出结果为:

['i', 'like', 'abc?']
['www', 'abc', 'com']

numpy.char.splitlines()

numpy.char.splitlines() 函数以换行符作为分隔符来分割字符串,并返回数组。

# 实例 9
import numpy as np 
 
# 换行符 \n
print (np.char.splitlines('i\nlike abc?')) 
print (np.char.splitlines('i\rlike abc?'))

输出结果为:

['i', 'like abc?']
['i', 'like abc?']

\n,\r,\r\n 都可用作换行符。

numpy.char.strip()

numpy.char.strip() 函数用于移除开头或结尾处的特定字符。

# 实例 10
import numpy as np 
 
# 移除字符串头尾的 a 字符
print (np.char.strip('ashok aabc','a'))
 
# 移除数组元素头尾的 a 字符
print (np.char.strip(['aabc','admin','java'],'a'))

输出结果为:

shok abc
['abc' 'dmin' 'jav']

numpy.char.join()

numpy.char.join() 函数通过指定分隔符来连接数组中的元素或字符串

# 实例 11
import numpy as np 
 
# 操作字符串
print (np.char.join(':','abc'))
 
# 指定多个分隔符操作数组元素
print (np.char.join([':','-'],['abc','google']))

输出结果为:

a:b:c
['a:b:c' 'g-o-o-g-l-e']

numpy.char.replace()

numpy.char.replace() 函数使用新字符串替换字符串中的所有子字符串。

# 实例 12
import numpy as np 
 
print (np.char.replace ('i like room', 'oo', 'cc'))

输出结果为:

i like rccm

numpy.char.encode()

numpy.char.encode() 函数对数组中的每个元素调用 str.encode 函数。 默认编码是 utf-8,可以使用标准 Python 库中的编解码器。

# 实例 13
import numpy as np 
 
a = np.char.encode('abc', '500') 
print (a)

输出结果为:

b'\x81\x82\x83'

numpy.char.decode()

numpy.char.decode() 函数对编码的元素进行 str.decode() 解码。

# 实例14
import numpy as np

a = np.char.encode('abc', '500')
print(a)
print(np.char.decode(a, '500'))

输出结果

b'\x81\x82\x83'
abc

结束语

今天学习的是PythonNumPy 字符串函数学会了吗。 今天学习内容总结一下:

  1. numpy.char.add()
  2. numpy.char.multiply()
  3. numpy.char.center()
  4. numpy.char.capitalize()
  5. numpy.char.title()
  6. numpy.char.lower()
  7. numpy.char.upper()
  8. numpy.char.split()
  9. numpy.char.splitlines()
  10. numpy.char.strip()
  11. numpy.char.join()
  12. numpy.char.replace()
  13. numpy.char.encode()
  14. numpy.char.decode()
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北岛末巷

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值