Python学习笔记第四十二天(NumPy 字符串函数)
admin
2024-03-03 22:21:47
0

Python学习笔记第四十二天

  • NumPy 字符串函数
    • numpy.char.add()
    • numpy.char.multiply()
    • numpy.char.center()
    • numpy.char.capitalize()
    • numpy.char.title()
    • numpy.char.lower()
    • numpy.char.upper()
    • numpy.char.split()
    • numpy.char.splitlines()
    • numpy.char.strip()
    • numpy.char.join()
    • numpy.char.replace()
    • numpy.char.encode()
    • numpy.char.decode()
  • 结束语

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 npprint (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 npa = 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()

相关内容

热门资讯

刺激!单日涨60%到跌60%,... 出品|达摩财经9月16日,妖股药捷安康(2617.HK)盘中一度上涨63.73%,并创出了679.5...
被群殴了,可恶啊... 被群殴... 图:simonbailly 服了服了。 今天自取其辱了 去年年底,我盘点过8个最常见的宽基指数。 就...
中概股深夜飙涨,百度涨超5%,... 记者丨吴斌 冯紫彤编辑丨李莹亮 曾芳 江佩佩9月16日晚,截至22:48,美股三大指数集体飘绿,美元...
一年关闭3.9万家,大批药店主... 一边是一年关店3.9万家,另一边是大批药店主动退出医保,发生了什么?能刷医保是药店吸引客户的主要卖点...
强一股份:八成营收“来自”隐名... 《金证研》南方资本中心 时安BR&DL/作者 西洲 映蔚/风控2025年以来,科创板加力推出“1+6...
稀土供需缺口支撑价格上行 固态... 8月以来,稀土产业链进入传统消费旺季,叠加稀土总量控制指标新规实施,稀土战略属性进一步凸显。同时,近...
热心投资者“撮合”!何时与国元... 华安证券、国元证券合并传闻由来已久。近日,又有投资者热心“撮合”两家的联姻。9月16日华安证券发布的...
长华集团:计划减持不超过538... 新京报贝壳财经讯 9月16日,长华集团公告称,公司计划通过集中竞价交易方式减持不超过538.06万股...
剑南春重新“拥抱”国资,绵竹国... 本文来源:时代周报 作者:幸雯雯剑南春重新“拥抱”国资了。近日,四川剑南春(集团)有限责任公司(下称...
深铁再掷20.64亿元“输血”... 新京报贝壳财经讯 (记者段文平)万科再获第一大股东深铁集团现金“驰援”。9月16日,万科公告称,深圳...