Python3.x String内置函数大全
文章目录
- 总结一下Python3.x字符串的常用系统函数,总共分为8类
- 1. 大小写字母转换类的函数
- str.capitalize()
- str.title()
- str.lower()
- str.upper()
- str.swapcase()
- 2. 统计类的函数
- str.count(str1, beg= 0,end=len(string))
- 3. 匹配类的函数
- str.endswith(suffix, beg=0, end=len(string))
- str.startswith(substr, beg=0,end=len(string))
- str.isnumeric()
- str.isdigit()
- str.isalpha()
- str.isa1num()
- str.find(str1, beg=0, end=len(string))
- str.rfind(str1, beg=0,end=len(string))
- str.index(str1, beg=0, end=len(string))
- str.replace(old, new [, max])
- 4. 格式化类的函数
- str.ljust(width[, fillchar])
- str.rjust(width[, fillchar])
- str.center(width[, fillchar])
- 5. 移除类的函数
- str.lstrip([chars])
- str.rstrip([chars])
- str.strip([chars])
- 6. 分割类函数
- str.partition(sep)
- str.rpartition(sub)
- str.split(sep=None, maxsplit=-1)
- str.splitlines([keepends=False])
- 7. 合并类的函数
- str.join(iterable)
- 8. 映射类函数
- str.maketrans(intab, outtab)
- str.translate(table, deletechars="")
总结一下Python3.x字符串的常用系统函数,总共分为8类
1. 大小写字母转换类的函数
str.capitalize()
:将字符串的第一个字符转换为大写。
【例子】
print(s.capitalize()) # Xiao xie
str.title()
:方法返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写。
【例子】
print(s.title()) # Xiao Xie
str.lower()
:转换字符串中所有大写字符为小写。
【例子】
print(s.lower()) # daxiexiaoxie
str.upper()
:转换字符串中的小写字母为大写。
【例子】
print(s.upper()) # DAXIEXIAOXIE
str.swapcase()
:将字符串中大写转换为小写,小写转换为大写。
【例子】
print(s.swapcase()) # daxieXIAOXIE
2. 统计类的函数
str.count(str1, beg= 0,end=len(string))
:返回 str1 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str1 出现的次数。
【例子】
print(s.count('xi')) # 2
print(s.count('XI')) # 1
3. 匹配类的函数
str.endswith(suffix, beg=0, end=len(string))
:检查字符串是否以指定子字符串suffix 结束,如果是,返回 True ,否则返回 False 。如果 beg 和 end 指定值,则在指定范围内检查。
【例子】
print(s.endswith('ie')) # True
print(s.endswith('xi')) # False
str.startswith(substr, beg=0,end=len(string))
:检查字符串是否以指定子字符串 substr 开头,如果是,返回 True ,否则返回 False 。如果 beg 和 end 指定值,则在指定范围内检查。
【例子】
print(s.startswith('Da')) # False
print(s.startswith('DA')) # True
str.isnumeric()
:检测字符串是否只由数字组成,这种方法是只针对unicode对象。如果字符串中只包含数字字符,则返回 True ,否则返回 False 。注意: 在Python2中,普通字符串是以8位ASCII码进行存储的,而Unicode字符串则存储为16位unicode字符串, 这样能够表示更多的字符集。使用的语法是在字符串前面加上前缀 u。 在Python3中,所有的字符串都是Unicode字符串。
【例子】
print(s.isnumeric()) # True
s += 'a'
print(s.isnumeric()) # False
str.isdigit()
:检测字符串是否只由数字组成,如果字符串只包含数字,则返回 True 否则返回 False 。
【例子】
print(s.isdigit()) # True
s += 'a'
print(s.isdigit()) # False
str.isalpha()
:检测字符串是否只由字母组成。如果字符串至少有一个字符并且所有字符都是字母则返回 True ,否则返回 False 。
【例子】
print(s.isalpha()) # True
s = ' I Love LsgoGroup '
print(s.isalpha()) # False
str.isa1num()
:检测字符串是否由字母和数字组成。如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True ,否则返回 False 。
【例子】
print(s.isalnum()) # True
s = ' I Love LsgoGroup '
print(s.isalnum()) # False
str.find(str1, beg=0, end=len(string))
:检测 str1 是否包含在字符串中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含,返回开始的索引值,否则返回 -1。
【例子】
print(s.find('xi')) # 5
print(s.find('ix')) # -1
str.rfind(str1, beg=0,end=len(string))
:类似于 find() 函数,不过是从右边开始查找。
【例子】
print(s.rfind('xi')) # 9
str.index(str1, beg=0, end=len(string))
:检测字符串中是否包含子字符串 str1 ,如果指定 beg (开始) 和 end (结束) 范围,则检查是否包含在指定范围内,该方法与 find() 方法一样,只不过如果 str1 不在 string中会报一个异常。
【例子】
print(s.index('xi')) # 5
print(s.index('ix')) # ValueError: substring not found
str.replace(old, new [, max])
:将字符串中的 old 替换成 new ,如果 max 指定,则替换不超过 max 次。
【例子】
print(s.replace('I', 'We')) # ' We Love LsgoGroup '
4. 格式化类的函数
str.ljust(width[, fillchar])
:返回一个原字符串左对齐,并使用
fillchar
(默认空格)填充至长度 width 的新字符串。
【例子】
print(s.ljust(8, '0')) # 11010000
str.rjust(width[, fillchar])
:返回一个原字符串右对齐,并使用 fillchar (默认空格)填充至长度 width 的新字符串。
【例子】
print(s.rjust(8, '0')) # 00001101
str.center(width[, fillchar])
:返回一个指定的宽度 width 居中的字符串, fillchar 为填充的字符,默认为空格。
【例子】
print(s.center(8, '0')) # 00110100
5. 移除类的函数
str.lstrip([chars])
:截掉字符串左边的空格或指定字符。
【例子】
print(s.lstrip()) # 'I Love LsgoGroup '
print(s.lstrip().lstrip('I')) # ' Love LsgoGroup '
str.rstrip([chars])
:删除字符串末尾的空格或指定字符。
【例子】
print(s.rstrip()) # ' I Love LsgoGroup'
print(s.rstrip().rstrip('up')) # ' I Love LsgoGro'
str.strip([chars])
:在字符串上执行 lstrip() 和 rstrip() 。
【例子】
print(s.strip()) # 'I Love LsgoGroup'
print(s.strip().strip('p')) # 'I Love LsgoGrou'
6. 分割类函数
str.partition(sep)
:找到子字符串 sep ,把字符串分为一个三元组 (pre_sep,sep,fol_sep) ,如果字符串中不包含 sep 则返回 ('原字符串','','') 。
【例子】
print(s.strip().partition('o')) # ('I L', 'o', 've LsgoGroup')
print(s.strip().partition('m')) # ('I Love LsgoGroup', '', '')
str.rpartition(sub)
:类似于 partition() 方法,不过是从右边开始查找。
【例子】
print(s.strip().rpartition('o')) # ('I Love LsgoGr', 'o', 'up')
print(s.strip().rpartition('m')) # ('', '', 'I Love LsgoGroup')
str.split(sep=None, maxsplit=-1)
:不带参数默认是以空格为分隔符切片字符串,如果 maxsplit 参数有设置,则仅分隔 maxsplit 个子字符串,返回切片后的子字符串拼接的列表。
【例子】
print(s.strip().split()) # ['I', 'Love', 'LsgoGroup']
print(s.strip().split('o')) # ['I L', 've Lsg', 'Gr', 'up']
【例子】
使用默认分隔符
print(u.split()) # ['www.baidu.com.cn']以"."为分隔符
print(u.split('.')) # ['www', 'baidu', 'com', 'cn']分割0次
print(u.split(".", 0)) # ['www.baidu.com.cn']分割一次
print(u.split(".", 1)) # ['www', 'baidu.com.cn']分割两次
print(u.split(".", 2)) # ['www', 'baidu', 'com.cn']分割两次,并取序列为1的项
print((u.split(".", 2)[1])) # baidu分割两次,并把分割后的三个部分保存到三个变量
u1, u2, u3 = u.split(".", 2)
print(u1) # www
print(u2) # baidu
print(u3) # com.cn
**【例子】**去掉换行符c = '''
say
hello
baby
'''print(c)sayhellobabyprint(c.split('\n')) # ['', 'say', 'hello', 'baby', '']
**【例子】**s = "hello boy<[www.baidu.com]>byebye"
print(s.split('[')[1].split(']')[0]) # www.baidu.com
print(s.split('[')[1].split(']')[0].split('.')) # ['www', 'baidu', 'com']
str.splitlines([keepends=False])
:按照行('\r', '\r\n', \n')分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False ,不包含换行符,如果为 True ,则保留换行符。
【例子】
print(s.splitlines()) # ['I ', ' Love ', ' LsgoGroup']
print(s.splitlines(True)) # ['I \n', ' Love \n', ' LsgoGroup']
7. 合并类的函数
str.join(iterable)
:是 split()方法的逆方法,用来将列表(或元组)中包含的多个字符串连接成一个字符串。使用 join() 方法合并字符串时,它会将列表(或元组)中多个字符串采用固定的分隔符连接在一起。
【例子】 将列表中的字符串合并成一个字符串。
print('.'.join(lst))www.lsgogroup.net
字符串“www.lsgogroup.net”可以看做是通过分隔符“.”将
['www','lsgogroup','net']
列表合并为一个字符串的结果。
【例子】将元组中的字符串合并成一个字符串。
print('\\'.join(dir))C:\Users\Public\Pictures
8. 映射类函数
str.maketrans(intab, outtab)
:创建字符映射的转换表,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。
【例子】
intab = 'aeiou'
outtab = '12345'
trantab = s.maketrans(intab, outtab)
print(trantab) # {97: 49, 101: 50, 105: 51, 111: 52, 117: 53}
str.translate(table, deletechars=“”)
:根据参数 table 给出的表,转换字符串的字符,要过滤掉的字符放到 deletechars 参数中。
【例子】
intab = 'aeiou'
outtab = '12345'
trantab = s.maketrans(intab, outtab)
print(s.translate(trantab)) # th3s 3s str3ng 2x1mpl2....w4w!!!```
相关文章:
Python3.x String内置函数大全
文章目录 总结一下Python3.x字符串的常用系统函数,总共分为8类1. 大小写字母转换类的函数str.capitalize()str.title()str.lower()str.upper()str.swapcase() 2. 统计类的函数str.count(str1, beg 0,endlen(string)) 3. 匹配类的函数str.endswith(suffix, beg0, end…...

Go异常处理机制panic和recover
recover 使用panic抛出异常后, 将立即停止当前函数的执行并运行所有被defer的函数,然后将panic抛向上一层,直至程序crash。但是也可以使用被defer的recover函数来捕获异常阻止程序的崩溃,recover只有被defer后才是有意义的。 func main() { p…...

QMainwindow窗口
QMainwindow窗口 菜单栏在二级菜单中输入中文的方法给菜单栏添加相应的动作使用QMenu类的API方法添加菜单项分隔符也是QAction类 工具栏状态栏停靠窗口 菜单栏 只能有一个, 位于窗口的最上方 关于顶级菜单可以直接在UI窗口中双击, 直接输入文本信息即可, 对应子菜单项也可以通…...
P5735 【深基7.例1】距离函数
题目描述 给出平面坐标上不在一条直线上三个点坐标 ( x 1 , y 1 ) , ( x 2 , y 2 ) , ( x 3 , y 3 ) (x_1,y_1),(x_2,y_2),(x_3,y_3) (x1,y1),(x2,y2),(x3,y3),坐标值是实数,且绝对值不超过 100.00,求围成的三角形周长。保留两…...

prometheus告警发送组件部署
一、前言 要实现Prometheus的告警发送需要通过alertmanager组件,当prometheus触发告警策略时,会将告警信息发送给alertmanager,然后alertmanager根据配置的策略发送到邮件或者钉钉中,发送到钉钉需要安装额外的prometheus-webhook…...

CAPL - XML和TestModule结合实现测试项可选
目录 目的:是否想实现如下面的功能呢? 一、.can和.cin文件中函数开发...
Latex安装与环境配置(TeXlive、TeXstudio与VS code的安装)编译器+编辑器与学习应用
TeXlive 配置Tex排版系统需要安装编译器+编辑器。TeX 的源代码是后缀为 .tex 的纯文本文件。使用任意纯文本编辑器,都可以修改 .tex 文件:包括 Windows 自带的记事本程序,也包括专为 TeX 设计的编辑器(TeXworks, TeXmaker, TeXstudio, WinEdt 等),还包括一些通用的文本编…...

STM32 F103C8T6学习笔记3:串口配置—串口收发—自定义Printf函数
今日学习使用STM32 C8T6的串口,我们在经过学习笔记2的总结归纳可知,STM32 C8T6最小系统板上有三路串口,如下图: 今日我们就着手学习如何配置开通这些串口进行收发,这里不讲串口通信概念与基础,可以自行网上…...
python中字符串内建函数篇4
一、ljust() 语法:str.ljust(width,[fillchar]) 参数说明: width – 指定字符串长度。 fillchar – 填充字符,默认为空格。 返回值:返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串。如果指定的长度小于原字符串…...
并发下如何使用redis存储列表数据
1、问题 今天在工作中遇到一个问题,需要查询表A,需要根据每天所处小时所在时段,返回不同的记录给前端展示,如0-2时是在昨日0到2时生成的记录,而2-4时则是在昨日2-4时生成的记录,每条记录有一个唯一的id。表…...
Leecode螺旋矩阵 II59
59.螺旋矩阵II 题目建议: 本题关键还是在转圈的逻辑,在二分搜索中提到的区间定义,在这里又用上了。 题目链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 文章讲解:代码随想录 视频…...

echarts 横向柱状图
<template><div ref"chart" style"height: 100%"></div> </template><script> import * as echarts from "echarts"; var cate ["质量通病1", "质量通病2", "质量通病3", "质…...

Vue3 —— to 全家桶及源码学习
该文章是在学习 小满vue3 课程的随堂记录示例均采用 <script setup>,且包含 typescript 的基础用法 前言 本篇主要学习几个 api 及相关源码: toReftoRefstoRaw 一、toRef toRef(reactiveObj, key) 接收两个参数,第一个是 响应式对象…...
(第三篇) ansible-kubeadm在线安装高可以用集群()
ansible可以安装的KS8版本如下: 请按照此博客中的内容操作后,才可以通过下面的命令查询到版本。 [rootk8s-master01 ~]# yum list kubectl --showduplicates | sort -r kubectl.x86_64 1.20.0-0 kubern…...
flutter开发实战-颜色Color与16进制转换
flutter开发实战-颜色Color与16进制转换 一、颜色Color与16进制转换 代码如下 import dart:ui; class ColorUtil {/// 十六进制颜色,/// hex, 十六进制值,例如:0xffffff,/// alpha, 透明度 [0.0,1.0]static Color hexColor(int hex, {doub…...

Linux(进程地址空间)
进程地址空间 程序地址空间进程地址空间 程序地址空间 在Linux环境下,我们可以对上述程序空间地址进行验证: 运行程序,可以看到,我们就可以很好看出程序的地址空间的排布了: 进程地址空间 严格来说,我们…...

VLAN监控及常见问题排查
局域网,我们通常称为LAN,是一种由基于同一地理位置的设备组成的网络,可实现它们之间的通信,局域网的虚拟对应物是虚拟局域网或 VLAN。VLAN 增强了 LAN,提供了进行更改的灵活性、更高的可扩展性和更好的安全性。 使用 …...

PromQL实现Actuator获取的JVM指标的Full GC次数监控
Spring Boot 版本需要2.0.0或更高版本。 添加Micrometer Prometheus registry依赖: <dependency><groupId>io.micrometer</groupId><artifactId>micrometer-registry-prometheus</artifactId> </dependency>在application.properties中开…...

3.正则表达式
3.1什么是正则表达式 ●正则表达式( Regular Expression) 是用于匹配字符串中字符组合的模式。在JavaScript中, 正则表达式也是对象 ●通常用来查找、替换那些符合正则表达式的文本,许多语言都支持正则表达式 ●正则表达式在JavaScript中的使用场景: ➢…...

【学习FreeRTOS】第3章——FreeRTOS移植及配置文件
1.FreeRTOS源码简介 【一级目录:/】以下FreeRTOS的源码,其中,FreeRTOS文件夹最为重要,代笔FreeRTOS内核 【二级目录:/FreeRTOS】以下为FreeRTOS文件夹的内容,比较重要的有Demo文件夹和Source文件夹 【三级…...

IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...
golang循环变量捕获问题
在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - 循环变量捕获问题。让我详细解释一下: 问题背景 看这个代码片段: fo…...

CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...
C++.OpenGL (10/64)基础光照(Basic Lighting)
基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

基于TurtleBot3在Gazebo地图实现机器人远程控制
1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...