当前位置: 首页 > news >正文

NumPy学习第九课:字符串相关函数

前言

各位有没有注意到,NumPy从第八课开始其实基本上都是讲的是NumPy的函数,而且其实就是各种函数的调用,因为NumPy是一个很强大的函数库,这对我们以后再处理项目中遇到的问题时会有很大的帮助。我们将常用的函数进行一个列举,知道在什么地方使用,怎么使用就行。

字符串函数库

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

使用方式

1、add()函数

看到add()这个函数,我们从字面意思就能理解出来,即使‘相加’的意思。

调用格式: numpy.char.add([‘字符串1’], [‘字符串2’])

示例代码:

import numpy as np# np.char.add()函数
a = '我的'
b = '世界'
print('将a和b通过add函数连接成一个新的值')
print(np.char.add([a], [b]))# 输出结果
# 将a和吧通过add函数连接成一个新的值
# ['我的世界']
2、 multiply()函数

multiply翻译成中文其实就是‘乘以,重复的’,就是执行多次。

** 调用格式:** numpy.char.multiply(‘字符串’,长度)

示例代码:

import numpy as npx = '时光机'print(np.char.multiply(x+' ', 5))# 输出结果
# 时光机 时光机 时光机 时光机 时光机

python中还有一个写法和这个比较相似

示例代码

p = '时光机1 'print(p * 5)# 输出结果
# 时光机1 时光机1 时光机1 时光机1 时光机1

虽然两个返回的结果是一样,但是,它们两个可不是相同的类型呦,我们调用type()看看它们都返回的什么类型的

在这里插入图片描述

np.char.multiply()返回的是numpy数组,而Python写法返回的是字符串,不要混用两个是不一样的。

3、 center()函数

center()函数是一个居中函数。

调用格式:
np.char.center(‘字符串’ , 长度, ‘填充字符’)
这个比较简单,直接展示示例代码

示例代码

import numpy as npx = '我居中了'
print(np.char.center(x, 30, '#'))# 输出结果
# #############我居中了#############
4、capitalize()函数

调用格式:
np.char.capitalize()
这个就是将字符串的首字母变成大写

示例代码:

x = 'woshinitie'
print(np.char.capitalize(x))
# 输出结果
# Woshinitie
5、title()函数

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

示例代码:

x = 'wo de shi jie wo zuo zhu'
print(np.char.title(x))# 输出结果
# Wo De Shi Jie Wo Zuo Zhu
6、lower()函数

调用格式: numpy.char.lower() 将每个元素字母都变成小写的。

示例代码:

x = 'FEI  JI DA ZHAN'
print(np.char.lower(x))# 输出结果
# fei  ji da zhan
7、upper()函数

调用格式: numpy.char.upper() 这个是和;lower()函数相反的函数,是将元素字母全部变成大写。

示例代码:

x = 'wo shi yi ge ai dou'
print(np.char.upper(x))# 输出结果
# WO SHI YI GE AI DOU
8、split()函数

调用格式: numpy.char.split() 分隔符函数,将字符串根据提供的字符进行分割,如果不提供分割字符的话,函数默认空格为字符串的分隔符。

示例代码:

x = 'wo shi yi ge ai dou'
print(np.char.split(x))# 输出结果
# ['wo', 'shi', 'yi', 'ge', 'ai', 'dou']

下面这个比较特殊,既有分隔符,也有空格,那么会怎么进行分割呢?如果提供了分隔符,那么会把后面看成一个整体的字符串进行分割。

x = 'wo.shi.yi.ge ai dou'
print(np.char.split(x, sep='.'))# 输出结果
# ['wo', 'shi', 'yi', 'ge ai dou']
9、splitlines()函数

调用格式: numpy.char.splitlines() 这个函数比split()函数更高一级,可以使用换行符进行字符串的分隔,我们目前接触的比较多的换行符大概就是 \n , \r , \r\n

示例代码:

x = 'wo.shi\nni da ye'
print(np.char.splitlines(x))# 输出结果
# ['wo.shi', 'ni da ye']

如果我们这个字符串中没有分隔符,再次调用splitlines()函数的话,会输出什么呢?看代码

x = 'wo.shi ni da ye'
print(np.char.splitlines(x))# 输出结果
# ['wo.shi ni da ye']
10、strip()函数

调用格式: numpy.char.strip(‘字符串’,‘要移除的字符’)
这个函数就是移除字符串的开头和结尾的需要移除的字符,感觉这个函数比较鸡肋。目前在学习过程中还是用的比较少的,但是存在即是合理的,我们也进行一下测试

示例代码:

x = 'wo.shi ni da ye'
print(np.char.strip(x,'w'))# 输出结果
# o.shi ni da ye
11、join()函数

调用格式: numpy.char.join(‘字符串’,‘分隔符’)就是通过特殊字符,将字符串或者数组,通过特殊字符连接在一起。

我们先看一下普通的字符串连接

在这里插入图片描述

示例代码:

x = 'Kobe Bryant'
print(np.char.join("*", x))# 输出结果
# K*o*b*e* *B*r*y*a*n*t

再来看看数组是如何调用的吧

x = ['james', 'Harden']
print(np.char.join(['~', '$'], x))# 输出结果
# ['j~a~m~e~s' 'H$a$r$d$e$n']

我们也可以给他们共同指定一个元素的。

x = ['james', 'Harden']
print(np.char.join('~', x))# 输出结果
# ['j~a~m~e~s' 'H~a~r~d~e~n']

示例代码:

12、replace()函数

调用格式: numpy.char.replace(‘字符串’,‘需要替换的字符’,‘替换字符’)这个很简单,就是把字符替换成自己想要的字符

示例代码:

x = ['james', 'Harden']
print(np.char.replace(x, 'a', 'T'))# 输出结果
# ['jTmes' 'HTrden']

我们在调用这个函数的时候,是有一个count参数的,这个参数是可选择,就是如果给定了可选参数“count”,则仅第一个计数替换出现次数

在这里插入图片描述

我们试试给count参数赋值看看输出结果

x1 = np.char.replace('This is a python article python ', 'python', 'Numpy-Python', count = 1)
print(x1)
# 输出结果
# This is a Numpy-Python article python

本节课程主要就是函数的一个调用到此结束,很简单,但是还是得进行实操练习才能更加熟练。

本文提供的内容仅用于个人学习、研究,如有相关权利人的合法权利,请及时通知作者,予以删除!

http://www.lryc.cn/news/470678.html

相关文章:

  • 卷积神经网络(CNNs)在处理光谱特征的序列属性时表现不佳
  • 【IC】MCU的Tick和晶振频率
  • 从0到1学习node.js(npm)
  • 【STM32 Blue Pill编程实例】-OLED显示DS18B20传感器数据
  • STM32 从0开始系统学习3 启动流程
  • 交换机:端口安全与访问控制指南
  • 【C++ | 数据结构】八大常用排序算法详解
  • Oracle 第7章:数据完整性约束
  • 【核心】静态/动态全覆盖路径规划相关技术研究
  • Java 实现集成 Google 邮箱第三方登录实践
  • 人人都在学的智能体(AI Agent),带你轻松入门!
  • 如何在Windows环境下开启Kibana的非localhost访问
  • 蓝桥杯 单片机 DS1302和DS18B20
  • 前端css-媒体查询@media以及常见使用例子
  • centos系统防火墙SELinux设置指令
  • 记录如何在RK3588板子上跑通paddle的OCR模型
  • 通过AWS Bedrock探索 Claude 的虚拟桌面魔力:让 AI 代替你动手完成任务!
  • Java面向对象编程高阶(一)
  • JavaScript 中 let 和 var 的区别
  • React第十一章(useReducer)
  • VUE3实现古典音乐网站源码模板
  • 1.nginx安装【Docker】
  • Linux -- 共享内存(1)
  • 冒泡排序和二分查找--go
  • springboot RedisTemplate支持多个序列化方式
  • 开源项目-拍卖管理系统
  • Python小游戏14——雷霆战机
  • 81页PPT | 企业数字化底座与数字化转型方案
  • R语言笔记(五):Apply函数
  • Newsqueak:在 Go 之前的一门语言