CSDN 课程推荐:《Python 数据分析与挖掘》,讲师刘顺祥,浙江工商大学统计学硕士,数据分析师,曾担任唯品会大数据部担任数据分析师一职,负责支付环节的数据分析业务。曾与联想、亨氏、网鱼网咖等企业合作多个企业级项目。
NumPy 系列文章:
- Python 数据分析三剑客之 NumPy(一):理解 NumPy / 数组基础
- Python 数据分析三剑客之 NumPy(二):数组索引 / 切片 / 广播 / 拼接 / 分割
- Python 数据分析三剑客之 NumPy(三):数组的迭代与位运算
- Python 数据分析三剑客之 NumPy(四):字符串函数总结与对比
- Python 数据分析三剑客之 NumPy(五):数学 / 算术 / 统计 / 排序 / 条件 / 判断函数合集
- Python 数据分析三剑客之 NumPy(六):矩阵 / 线性代数库与 IO 操作
另有 Pandas、Matplotlib 系列文章已更新完毕,欢迎关注:
- Pandas 系列文章:https://itrhx.blog.csdn.net/category_9780397.html
- Matplotlib 系列文章:https://itrhx.blog.csdn.net/category_9780418.html
推荐学习资料与网站(博主参与部分文档翻译):
- NumPy 官方中文网:https://www.numpy.org.cn/
- Pandas 官方中文网:https://www.pypandas.cn/
- Matplotlib 官方中文网:https://www.matplotlib.org.cn/
- NumPy、Matplotlib、Pandas 速查表:https://github.com/TRHX/Python-quick-reference-table
文章目录
- 【01】NumPy 字符串函数速查表
- 【02】numpy.char.add()
- 【03】numpy.char.join()
- 【04】numpy.char.mod()
- 【05】numpy.char.multiply()
- 【06】numpy.char.capitalize()
- 【07】numpy.char.title()
- 【08】numpy.char.lower()
- 【09】numpy.char.upper()
- 【10】numpy.char.swapcase()
- 【11】numpy.char.center()
- 【12】numpy.char.ljust()
- 【13】numpy.char.rjust()
- 【14】numpy.char.zfill()
- 【15】numpy.char.strip()
- 【16】numpy.char.lstrip()
- 【17】numpy.char.rstrip()
- 【18】numpy.char.partition()
- 【19】numpy.char.rpartition()
- 【20】numpy.char.split()
- 【21】numpy.char.rsplit()
- 【22】numpy.char.replace()
- 【23】numpy.char.splitlines()
- 【24】numpy.char.translate()
- 【25】numpy.char.encode()
- 【26】numpy.char.decode()
这里是一段防爬虫文本,请读者忽略。
本文原创首发于 CSDN,作者 TRHX。
博客首页:https://itrhx.blog.csdn.net/
本文链接:https://itrhx.blog.csdn.net/article/details/105350414
未经授权,禁止转载!恶意转载,后果自负!尊重原创,远离剽窃!
【01】NumPy 字符串函数速查表
和 Python 一样,NumPy 也可以进行字符串相关操作。字符串函数在字符数组类(numpy.char
)中定义。
NumPy 字符串函数速查表 |
函数 | 描述 |
---|---|
add() | 对两个数组的字符串元素进行连接 |
join() | 通过指定分隔符来连接数组中的元素 |
mod() | 格式化字符串,相当于 Python 字符串中的 % 和 format |
multiply() | 按照给定值返回元素多重连接后的字符串 |
capitalize() | 将字符串(字符串可同时包含字母和数字,只要是连续的都会被视为一个同字符串)第一个字母转换为大写 |
title() | 将单词(仅包含字母,若同时包含数字和字母,则数字之后元素被视为另一个单词)第一个字母转换为大写 |
lower() | 将数组中所有的元素转换为小写 |
upper() | 将数组中所有的元素转换为大写 |
swapcase() | 将数组中每个元素字母大写转为小写,小写转为大写 |
center() | 居中字符串,并使用指定字符在左右侧进行填充 |
ljust() | 左对齐字符串,并使用指定字符在右侧进行填充 |
rjust() | 右对齐字符串,并使用指定字符在左侧进行填充 |
zfill() | 在数组元素的左边填充指定个数的数字 0 |
strip() | 移除数组每个元素开头和者结尾处的特定字符 |
lstrip() | 移除数组每个元素开头(最左边)的特定字符 |
rstrip() | 移除数组每个元素结尾(最右边)的特定字符 |
partition() | 指定分割符对字符串进行分割(从最左边的分割符开始分割,仅分割一次,返回三个元素) |
rpartition() | 指定分割符对字符串进行分割(从最右边的分割符开始分割,仅分割一次,返回三个元素) |
split() | 指定分割符对字符串进行分割(从最左边的分割符开始分割,可指定分割次数,返回多个元素) |
rsplit() | 指定分割符对字符串进行分割(从最右边的分割符开始分割,可指定分割次数,返回多个元素) |
replace() | 使用新字符串替换原字符串中的子字符串 |
splitlines() | 以换行符作为分隔符来分割字符串 |
translate() | 将数组元素字符串按照给定的转换表进行映射 |
encode() | 编码操作,数组元素依次调用 str.encode |
decode() | 解码操作,数组元素依次调用 str.decode |
【02】numpy.char.add()
numpy.char.add() 函数用于对两个数组的字符串元素进行连接。
基本语法:numpy.char.add(x1, x2)
,数组 x1 和 x2 必须具有相同的形状。
参数 | 描述 |
---|---|
x1 | 要处理的 str 或 unicode 数组 |
x2 | 要处理的 str 或 unicode 数组 |
应用举例:
>>> import numpy as np
>>> print(np.char.add(['hello'],[' world']))
['hello world']
>>> print(np.char.add(['123', 'abc'], [' 456', ' def']))
['123 456' 'abc def']
【03】numpy.char.join()
numpy.char.join() 函数通过指定分隔符来连接数组中的元素。
基本语法:numpy.char.join(sep1, seq2)
参数 | 描述 |
---|---|
seq1 | 分割符,str 或 unicode 数组 |
seq2 | 被分割的 str 或 unicode 数组 |
应用举例:
>>> import numpy as np
>>> print(np.char.join('-', 'python'))
p-y-t-h-o-n
>>>
>>> print(np.char.join(['+','-'],['python','java']))
['p+y+t+h+o+n' 'j-a-v-a']
【04】numpy.char.mod()
numpy.char.mod() 函数用于格式化字符串,相当于 Python 字符串中的 % 和 format。
基本语法:numpy.char.mod(value , a)
>>> import numpy as np
>>> print(np.char.mod('value=%.2f', np.arange(6)))
['value=0.00' 'value=1.00' 'value=2.00' 'value=3.00' 'value=4.00' 'value=5.00']
>>>
>>> print(np.char.mod('value=%.4f', [[1.1, 2, 3.021], [4.12, 5, 6.1]]))
[['value=1.1000' 'value=2.0000' 'value=3.0210']['value=4.1200' 'value=5.0000' 'value=6.1000']]
【05】numpy.char.multiply()
numpy.char.multiply() 函数用于元素的多重连接,即返回 a*i
。
基本语法:numpy.char.multiply(a, i)
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
i | 整数数组 |
应用举例:
>>> import numpy as np
>>> print(np.char.multiply('Python ', 4))
Python Python Python Python
【06】numpy.char.capitalize()
numpy.char.capitalize() 函数将字符串第一个字母转换为大写。
基本语法:numpy.char.capitalize(a)
参数解释:a
:要处理的 str 或 unicode 数组。
应用举例:
>>> import numpy as np
>>> print(np.char.capitalize('python'))
Python
>>> print(np.char.capitalize(['a1b2','1b2a','b2a1','2a1b']))
['A1b2' '1b2a' 'B2a1' '2a1b']
【07】numpy.char.title()
numpy.char.title() 函数将数组元素字符串的每个单词的第一个字母转换为大写。注意:如果一个字符串中间有非字母,则非字母之后的字符串会被视为另一个单词。
基本语法:numpy.char.title(a)
应用举例:
>>> import numpy as np
>>> print(np.char.title('i love python!'))
I Love Python!
>>> print(np.char.title('a1bc2def3h'))
A1Bc2Def3H
>>> print(np.char.title(['a1bc', 'a 1bc', 'a1 bc', 'a1b c']))
['A1Bc' 'A 1Bc' 'A1 Bc' 'A1B C']
【08】numpy.char.lower()
numpy.char.lower() 函数将数组中所有的元素转换为小写。
基本语法:numpy.char.lower(a)
应用举例:
>>> import numpy as np
>>> print(np.char.lower('PYTHON'))
python
>>> print(np.char.lower(['PYTHON', 'A123C', 'Ba1A']))
['python' 'a123c' 'ba1a']
【09】numpy.char.upper()
numpy.char.upper() 函数将数组中所有的元素转换为大写。
基本语法:numpy.char.upper(a)
应用举例:
>>> import numpy as np
>>> print(np.char.upper('python'))
PYTHON
>>> print(np.char.upper(['python', 'a123c', 'ba1A']))
['PYTHON' 'A123C' 'BA1A']
【10】numpy.char.swapcase()
numpy.char.swapcase() 函数将数组中每个元素字母大写转为小写,小写转为大写。
基本语法:numpy.char.swapcase(a)
应用举例:
>>> import numpy as np
>>> print(np.char.swapcase('Abc123DEf456gHI'))
aBC123deF456Ghi
>>> print(np.char.swapcase(['Abc', '1De', '23F', 'Ghi']))
['aBC' '1dE' '23f' 'gHI']
【11】numpy.char.center()
numpy.char.center() 函数用于居中字符串,并使用指定字符在左右侧进行填充。
基本语法:numpy.char.center(a, width[, fillchar=' '])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
width | int 类型,结果字符串的总长度 |
fillchar | 可选项,str 或 unicode 数组,要使用的填充字符,默认为空格 |
应用举例:
>>> import numpy as np
>>> print(np.char.center('python', 10))python
>>> print(np.char.center('python', 12, fillchar='-'))
---python---
>>> print(np.char.center('python', 11, fillchar='-'))
---python--
【12】numpy.char.ljust()
numpy.char.ljust() 函数用于左对齐字符串,并使用指定字符在右侧进行填充。
基本语法:numpy.char.ljust(a, width[, fillchar=' '])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
width | int 类型,结果字符串的总长度 |
fillchar | 可选项,str 或 unicode 数组,要使用的填充字符,默认为空格 |
应用举例:
>>> import numpy as np
>>> print(np.char.ljust('python', 10, fillchar='-'))
python----
【13】numpy.char.rjust()
numpy.char.ljust() 函数用于右对齐字符串,并使用指定字符在左侧进行填充。
基本语法:numpy.char.rjust(a, width[, fillchar=' '])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
width | int 类型,结果字符串的总长度 |
fillchar | 可选项,str 或 unicode 数组,要使用的填充字符,默认为空格 |
应用举例:
>>> import numpy as np
>>> print(np.char.rjust('python', 10, fillchar='-'))
----python
这里是一段防爬虫文本,请读者忽略。
本文原创首发于 CSDN,作者 TRHX。
博客首页:https://itrhx.blog.csdn.net/
本文链接:https://itrhx.blog.csdn.net/article/details/105350414
未经授权,禁止转载!恶意转载,后果自负!尊重原创,远离剽窃!
【14】numpy.char.zfill()
numpy.char.zfill() 函数在数组元素的左边填充指定个数的数字 0。
基本语法:numpy.char.zfill(a, width)
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
width | int 类型,数组字符串在左边填充 0 后整个字符串的宽度 如果宽度小于原字符串的宽度,则结果会去掉原字符串中多余的元素 |
应用举例:
>>> import numpy as np
>>> print(np.char.zfill('python', 3))
pyt
>>> print(np.char.zfill('python', 10))
0000python
【15】numpy.char.strip()
numpy.char.strip() 函数用于移除开头和结尾处的特定字符。
基本语法:numpy.char.strip(a[, chars=None])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
chars | 可选项,str 类型,指定要删除的字符集,如果省略或者为 None,则默认为删除空白 |
应用举例:
>>> import numpy as np
>>> print(np.char.strip('alibaba','a'))
libab
>>>
>>> print(np.char.strip(['Alibaba','admin','java', 'ABBA'],'a'))
['Alibab' 'dmin' 'jav' 'ABBA']
【16】numpy.char.lstrip()
numpy.char.lstrip() 函数用于移除数组每个元素最右边的特定字符。
基本语法:numpy.char.lstrip(a[, chars=None])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
chars | 可选项,str 类型,指定要删除的字符集,如果省略或者为 None,则默认为删除空白 |
应用举例:
>>> import numpy as np
>>> print(np.char.lstrip('alibaba','a'))
libaba
>>>
>>> print(np.char.lstrip(['Alibaba','admin','java', 'aBBa'],'a'))
['Alibaba' 'dmin' 'java' 'BBa']
【17】numpy.char.rstrip()
numpy.char.rstrip() 函数用于移除数组每个元素最右边的特定字符。
基本语法:numpy.char.rstrip(a[, chars=None])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
chars | 可选项,str 类型,指定要删除的字符集,如果省略或者为 None,则默认为删除空白 |
应用举例:
>>> import numpy as np
>>> print(np.char.rstrip('alibaba','a'))
alibab
>>> print(np.char.rstrip(['Alibaba','admin','java', 'aBBa'],'a'))
['Alibab' 'admin' 'jav' 'aBB']
【18】numpy.char.partition()
numpy.char.partition() 函数通过指定分割符对字符串进行分割,从最左边第一次出现的分割符开始分割,仅分割一次,返回三个元素。
基本语法:numpy.char.partition(a, sep)
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
sep | 分割字符,str 或 unicode 类型,返回三个元素:分割字符前的字符,分割字符,分割字符后的字符 如果元素包含多个分割字符,以最左边的为准,如果找不到分隔符,则返回三个元素:字符串本身以及两个空字符串 |
应用举例:
>>> print(np.char.partition('111a222','a'))
['111' 'a' '222']
>>> print(np.char.partition('111a222a333','a'))
['111' 'a' '222a333']
>>> print(np.char.partition('111a222a333','b'))
['111a222a333' '' '']
>>> print(np.char.partition(['111a222', '23a45'],'a'))
[['111' 'a' '222']['23' 'a' '45']]
【19】numpy.char.rpartition()
numpy.char.partition() 函数通过指定分割符对字符串进行分割,从最右边第一次出现的分割符开始分割,仅分割一次,返回三个元素。
基本语法:numpy.char.rpartition(a, sep)
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
sep | 分割字符,str 或 unicode 类型,返回三个元素:分割字符前的字符,分割字符,分割字符后的字符 如果元素包含多个分割字符,以最右边的为准,如果找不到分隔符,则返回三个元素:两个空字符串以及字符串本身 |
应用举例:
>>> import numpy as np
>>> print(np.char.rpartition('111a222a333','a'))
['111a222' 'a' '333']
>>> print(np.char.rpartition('111a222a333','b'))
['' '' '111a222a333']
>>> print(np.char.rpartition(['111a222a333', '23a45'],'a'))
[['111a222' 'a' '333']['23' 'a' '45']]
【20】numpy.char.split()
numpy.char.split() 函数通过指定分割符对字符串进行分割,从最左边的分割符开始分割,可指定分割次数,返回多个元素。
基本语法:numpy.char.split(a[, sep=None, maxsplit=None])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
sep | 分隔符,可选项,str 或者 unicode 类型,如果 sep 未指定或者为 None,则默认为空格 |
maxsplit | 可选项,int 类型,如果指定 maxsplit,则最多完成 maxsplit 次分割 |
应用举例:
>>> import numpy as np
>>> print(np.char.split('I love python!'))
['I', 'love', 'python!']
>>> print(np.char.split('www.itrhx.com', sep='.'))
['www', 'itrhx', 'com']
>>> print(np.char.split('one.two.itrhx.com', sep='.', maxsplit=2))
['one', 'two', 'itrhx.com']
>>> print(np.char.split('one.two.itrhx.com', '.', 2))
['one', 'two', 'itrhx.com']
【21】numpy.char.rsplit()
numpy.char.split() 函数通过指定分割符对字符串进行分割,从最右边的分割符开始分割,可指定分割次数,返回多个元素。
基本语法:numpy.char.rsplit(a[, sep=None, maxsplit=None])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
sep | 分隔符,可选项,str 或者 unicode 类型,如果 sep 未指定或者为 None,则默认为空格 |
maxsplit | 可选项,int 类型,如果指定 maxsplit,则最多完成 maxsplit 次分割 |
应用举例:
>>> import numpy as np
>>> print(np.char.rsplit('one.two.itrhx.com', '.', 2))
['one.two', 'itrhx', 'com']
【22】numpy.char.replace()
numpy.char.replace() 函数可以使用新字符串来替换原字符串中的子字符串。
基本语法:numpy.char.replace(a, old, new[, count=None])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
old | 旧的字符串,即要替换的字符串,str 或 unicode 类型 |
new | 新的字符串,即替换的字符串,str 或 unicode 类型 |
count | int 类型,如果指定该值 N,则会替换 old 中出现的前 N 个字符串 |
应用举例:
>>> import numpy as np
>>> print(np.char.replace('i like python', 'python', 'java'))
i like java
>>>
>>> print(np.char.replace('aaaaaaa', 'a', 'b', count=3))
bbbaaaa
>>>
>>> print(np.char.replace('a111a11a1a111aa', 'a', 'A', count=3))
A111A11A1a111aa
【23】numpy.char.splitlines()
numpy.char.splitlines() 函数以换行符作为分隔符来分割字符串,并返回数组。
基本语法:numpy.char.splitlines(a[, keepends=None])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
keepends | 如果指定 keepends 为 True,则换行符会包含在结果列表中,否则不包含 |
>>> import numpy as np
>>> print(np.char.splitlines('hi python!\nhi java!'))
['hi python!', 'hi java!']
>>> print(np.char.splitlines('hi python!\nhi java!', keepends=True))
['hi python!\n', 'hi java!']
【24】numpy.char.translate()
numpy.char.translate() 函数将数组元素字符串按照给定的转换表进行映射。
基本语法:numpy.char.translate(a, table[, deletechars=None])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
table | 包含 256 个字符的映射表,映射表通过 str.maketrans() 方法转换而来 |
deletechars | 可选项,str 类型,字符串中要过滤的字符列表 |
应用举例:
>>> import numpy as np
>>> intab = 'abcdef'
>>> outtab = '123456'
>>> table = str.maketrans(intab, outtab) # 制作映射表
>>> print(np.char.translate('this is a translate example!', table))
this is 1 tr1nsl1t5 5x1mpl5!
【25】numpy.char.encode()
numpy.char.encode() 函数用于编码操作,数组元素依次调用 str.encode,可以使用 Python 标准库中的编解码器。
基本语法:numpy.char.encode(a[, encoding=None, errors=None])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
encoding | 编码名称,可选项,str 类型,默认编码为 utf-8 |
errors | 指定如何处理编码错误,可选项,str 类型 |
应用举例:
>>> import numpy as np
>>> print(np.char.encode('python', 'cp500'))
b'\x97\xa8\xa3\x88\x96\x95'
>>>
>>> print(np.char.encode(['aAaAaA', ' aA ', 'abBABba'], 'cp037'))
[b'\x81\xc1\x81\xc1\x81\xc1' b'@@\x81\xc1@@' b'\x81\x82\xc2\xc1\xc2\x82\x81']
【26】numpy.char.decode()
numpy.char.decode() 函数用于解码操作,数组元素依次调用 str.decode,可以使用 Python 标准库中的编解码器。
基本语法:numpy.char.decode(a[, encoding=None, errors=None])
参数 | 描述 |
---|---|
a | 要处理的 str 或 unicode 数组 |
encoding | 编码名称,可选项,str 类型,默认编码为 utf-8 |
errors | 指定如何处理编码错误,可选项,str 类型 |
应用举例:
>>> import numpy as np
>>> print(np.char.decode(b'\x97\xa8\xa3\x88\x96\x95', 'cp500'))
python
>>>
>>> print(np.char.decode([b'\x81\xc1\x81\xc1\x81\xc1' b'@@\x81\xc1@@' b'\x81\x82\xc2\xc1\xc2\x82\x81'], 'cp500'))
['aAaAaA aA abBABba']
这里是一段防爬虫文本,请读者忽略。
本文原创首发于 CSDN,作者 TRHX。
博客首页:https://itrhx.blog.csdn.net/
本文链接:https://itrhx.blog.csdn.net/article/details/105350414
未经授权,禁止转载!恶意转载,后果自负!尊重原创,远离剽窃!