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文件夹 【三级…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...
线程与协程
1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指:像函数调用/返回一样轻量地完成任务切换。 举例说明: 当你在程序中写一个函数调用: funcA() 然后 funcA 执行完后返回&…...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...
在Ubuntu24上采用Wine打开SourceInsight
1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...
《C++ 模板》
目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板,就像一个模具,里面可以将不同类型的材料做成一个形状,其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式:templa…...
MFC 抛体运动模拟:常见问题解决与界面美化
在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...
探索Selenium:自动化测试的神奇钥匙
目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...
从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障
关键领域软件测试的"安全密码":Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力,从金融交易到交通管控,这些关乎国计民生的关键领域…...
Ubuntu Cursor升级成v1.0
0. 当前版本低 使用当前 Cursor v0.50时 GitHub Copilot Chat 打不开,快捷键也不好用,当看到 Cursor 升级后,还是蛮高兴的 1. 下载 Cursor 下载地址:https://www.cursor.com/cn/downloads 点击下载 Linux (x64) ,…...
一些实用的chrome扩展0x01
简介 浏览器扩展程序有助于自动化任务、查找隐藏的漏洞、隐藏自身痕迹。以下列出了一些必备扩展程序,无论是测试应用程序、搜寻漏洞还是收集情报,它们都能提升工作流程。 FoxyProxy 代理管理工具,此扩展简化了使用代理(如 Burp…...
