盘点Python 中字符串的常用操作
摘要:盘点 Python 中字符串的几个常用操作,对新手极度的友好。
本文分享自华为云社区《盘点 Python 中字符串的常用操作,对新手极度友好》,作者:TT-千叶 。
在 Python 中字符串的表达方式有四种
一对单引号
一对双引号
一对三个单引号
一对三个双引号
a = ‘abc’
b= “abc”
c = ‘’‘abc’’’
d = “”“abc”""
print(type(a)) # <class ‘str’>
print(type(b)) # <class ‘str’>
print(type) # <class ‘str’>
print(type(d)) # <class ‘str’>
单双引号混合使用
a = “LiMing say ‘nice to meet you’”
同样也可以通过转义的方式不用在里面写双引号
a = “LiMing say “nice to meet you””
print(a)
总结就是需要外面用了双引号,里面需要引用的语句可以用单引号括起来,反之亦然。
通常情况根据个人喜好,基本都是使用单引号或者双引号。有些特殊情况,比如需要表示多行时,可以选择三个单(双)引号,并且无序用 \ 进行转移,可直接使用单引号和双引号。
a = ‘’’
My Name is 阿亮,
Let’s say ‘Hello’
‘’’
print(a)
字符串的下标和切换
下标:字符串是一个个字符拼接而成,下标可以理解为每个字符的编号,从 0 开始依次类推。
作用:通过下标去操作字符串中的元素
H的下标为0, e的下标为1 …依次类推
a = ‘HelloWorld’
获取字符串a中下标为4的元素
print(a[4]) # o 下标为4的元素为o
修改字符串中的元素是不是可以直接赋值呢? 例如:
a = ‘HelloWorld’
a[4] = ‘k’
print(a)
上面的代码运行之后发现报错。
TypeError: ‘str’ object does not support item assignment
原因是因为: 字符串一旦创建之后,里面的元素是不可以修改的。
所以字符串是无法直接进行修改的。
字符串运算
字符串运算中用到了 + 、*、>、<、!= 、= 等逻辑运算符。
字符串的相加操作,也可以理解为拼接操作。例如:
a = ‘Hello’ + ’ World’
print(a) # Hello World
也可以写成
a = ‘Hello’ ’ World’
print(a) # Hello World
字符串的乘法操作,可以理解为克隆操作,字符串只能与整数(n)想乘,代表克隆 n 个字符串。
a = ‘a’
print(a * 2) # aa
b = ‘-’
print(b * 10) # ----------
切片
字符串的切片也称为字符串截取。 所有操作都是通过字符串的下标进行操作的。
用法:字符串 [开始索引(start):结束索引(end):步长(step)(默认 1)]
步长(step):每隔(step-1)个取一个元素,当 step 为负数时,代表从右向左取元素,
a = ‘abcdefghijklmn’
从下标1开始 到4结束 进行切片 (包括1,不包括4,即左开又闭)
print(a[1:4]) # bcd
print(a[1:8]) # bcdefgh
print(a[1:8:2])# 步长为2, 结果:bdfh
当补偿为负数时,代表逆向截取。 初始从坐标8开始,每隔一个元素取一个值,到下标为1时结束
print(a[8:1:-2]) # igec
字符串的常用操作
这里以代码 + 注释的方式,展示几个常用的字符串操作。
a = ’ Hello World ’
获取字符串的长度
print(len(a)) # 13
删除字符串两边的空格
print(a.strip()) # Hello World
删除左边的空格
print(a.lstrip()) # Hello World (只删除左边的空格)
删除字符串右边的空格
print(a.rstrip()) # Hello World
通过指定连接符 链接字符串
lst = [‘LiMing’, ‘Tom’]
print(’***’.join(lst)) # LiMing***Tom
首字母大写
m = ‘hello world’
print(m.capitalize()) # Hello world
返回标题化字符串,即每个单词首字母大写
print(m.title()) # Hello World
打印输出字符,将字符串放在中间,
center(width, fillchar) width: 字符串的总长度, fillchar:填充字符
print(a.center(20, ‘*’)) # *** Hello World ****
是否以xxx开头
n = ‘Hello’
print(n.startswith(‘H’)) # True
是否以xxx结尾
print(n.endswith(‘o’)) # True
字符串是全纯英文字符
print(a.isalpha()) # False , 因为字符串a中 ’ Hello World ’ 有空格,因此返回False
print(‘HelloWorld’.isalpha()) #True
判断字符串中是否全部为数字或者英文
print(‘Hello2World’.isalnum()) # True
print(‘123’.isalnum()) # True
print(‘abc&11’.isalnum()) # False
判断是否为整数
print(‘123’.isdigit()) # True
print(‘1.23’.isdigit()) # False
判断字符是否全为小写
print(‘abc’.islower()) # True
判断字符是否全为大写
print(‘Abc’.isupper()) # False
print(‘ABC’.isupper()) # True
字符串小写转大写
print(‘abc’.upper()) # ABC
字符串大写转小写
print(‘ABC’.lower()) # abc
字符串的替换
b = ‘aabbcc’.replace(‘a’, ‘m’)
print(b) # mmbbcc
1 代表替换的个数
b = ‘aabbcc’.replace(‘a’, ‘m’, 1)
print(b) # mabbcc
split 字符串切割,默认空格切割
print(‘aa bb cc’.split()) # [‘aa’, ‘bb’, ‘cc’]
print(‘ab,cd,ef’.split(’,’)) # [‘ab’, ‘cd’, ‘ef’]
字符串换行分割
a = “”"
My Name is ‘762459510,
欢迎添加
“”"
print(a.splitlines()) # [’’, " My Name is ‘762459510’,", ’ 欢迎添加’, ’ ']
字符串的查找
字符串查找常用的方法用 index、find
两者功能相似,区别在于 find 查找不到元素时返回 -1, 不会影响程序运行,而 index 则会抛出异常。
a = ‘abcdef’
查找到元素返回对应的下标
print(a.find(‘c’)) # 2
print(a.find(‘h’)) # -1
print(a.index(‘c’)) # 2
print(a.index(‘h’)) # 抛出异常,ValueError: substring not found
rfind: 类似于 find () 函数,不过是从右边开始查找;返回字符串最后一次出现的位置,如果没有匹配项则返回 - 1 。rindex 同理
a = ‘acmncd’
从右边开始计算,返回第一个匹配到的下标
print(a.rfind(‘c’)) # 4
print(a.rindex(‘c’)) # 4
字符串的格式化
name = ‘762459510’
%s 用于输出字符串
print(‘我的月球号是: %s’ % name)
age = 18
%d 用于输出十进制数字
print(‘我的年龄是:%d’ % age)
money = 1.23
%f 浮点数,默认显示小数点后6位
print(‘我身上有:%f 元’ % money )
指定小数点后的位数
print(‘我身上有:%.2f 元’ % money )
format 操作
除了使用 % 进行格式化,也可以使用 format
print(’{} {}’.format(‘Hello’, ‘World’)) # Hello World
print(’{0} {1}’.format(‘Hello’, ‘World’)) # Hello World
print(’{1}, {0}, {1}’.format(‘A’, ‘B’)) #B, A, B
print(‘今年是 {}年.’.format(2022)) # 今年是 2022年.
盘点Python 中字符串的常用操作的更多相关文章
- 超详细!盘点Python中字符串的常用操作
在Python中字符串的表达方式有四种 一对单引号 一对双引号 一对三个单引号 一对三个双引号 a = 'abc' b= "abc" c = '''abc''' d = " ...
- python中字符串(str)常用操作总结
# 字符串的常用操作方法 (都是形成新的字符串,与原字符串没有关系.) 1.字符串的基本操作之切片 s = 'python hello word' # 取首不取尾,取尾要+1 # 切片取出来的字符串与 ...
- python之字符串的常用操作(转)
1. 字符串的操作 字符串的连接操作 符号: + 格式:str1 + str2 例如:str1 = 'I Love' str2 = 'You!' print(str1 + str2) >> ...
- python中字典数据类型常用操作
创建字典 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示: ...
- python中字符串的常见操作
demo:mystr = 'hello python' 1.find:mystr.find(str, start=0, end=len(mystr)),检测字符串中是否有要查询的字符,如果有返回开始的 ...
- 处理PHP中字符串的常用操作及函数
1. 确定一个字符串的长度 这是最为常见和基础的例子,对于确定一个字符串的长度,我们应该使用strlen()函数,比如要获取下面字符串$text 的长度: $text = "sunny da ...
- Python中列表的常用操作
只整理重要常用的操作: append():尾部追加元素,参数只能为一个. extend():用列表扩展列表,参数为列表. insert():在指定位置插入元素,第一个参数为插入位置,第二个为参数为插入 ...
- python中列表的常用操作增删改查
1. 列表的概念,列表是一种存储大量数据的存储模型. 2. 列表的特点,列表具有索引的概念,可以通过索引操作列表中的数据.列表中的数据可以进行添加.删除.修改.查询等操作. 3. 列表的基本语法 创建 ...
- python中字符串的常见操作(一)
如有字符串: str1 = '192.168.1.1' str2 = 'asdfghjk' str3 = 'Asd fg hj ki' str4 = ' ' str5 = '' 以下是常见操作:# i ...
- python中字符串的常用(部分)处理方法
myStr = "hello world itcast and hahaitcastcpp" 方法的查询方法: help(myStr.replace) myStr.find(&qu ...
随机推荐
- nginx配置解决跨域访问
场景:前后的分离项目,前端vue框架,打包后放在Tomcat里访问,端口是8080,后端服务端口8058.访问前端项目时,调用后端接口报跨域. 后端环境 正常访问端口8058 经过nginx配置(文末 ...
- BFF层提升业务性能实际解决方案,以及nodeJs和KOA框架介绍
本文干货满满,介绍了用BFF层(Back-end For Front-end)中间层提升性能的整体解决方案和思路,涉及前期技术调研,聚合业务分析,聚合方法,验收,最后向同学们普及node.koa基础知 ...
- Jail 【Python沙箱逃逸问题合集】
借助NSS平台题目,以2022年HNCTF为例展开分析 背景: 由于目前很多赛事有时候会出现一些pyjail的题目,因此在这里总结一下以便以后遇见可以轻松应对. 注:由于Python3中的unicod ...
- SNN_SRM模型
# SRM模型 ## 早期SRM模型 Spike Response Modul(SRM)模型将传统的LIF微分模型换成了一个关于输入.输出的脉冲函数,可以将脉冲神经网络简化为第二代神经网络. 基本公式 ...
- 架构探索之路-第一站-clickhouse
一.前言 架构, 软件开发中最熟悉不过的名词, 遍布在我们的日常开发工作中, 大到项目整体, 小到功能组件, 想要实现高性能.高扩展.高可用的目标都需要优秀架构理念辅助. 所以本人尝试编写架构系列文章 ...
- Postgresql——jsonb类型
Postgresql Json 最近有个功能,需要用到 NoSQL 数据库.但是又不想因为这个小小的功能给系统增加一个 MongoDB 数据库,于是就想到了 Postgresql 支持 JSON 类型 ...
- Linux驱动开发笔记(五):驱动连接用户层与内核层的文件操作集原理和Demo
前言 驱动写好后,用户层使用系统函数调用操作相关驱动从而实现与系统内核的关联,本篇主要就是理解清楚驱动如何让用户编程来实现与内核的交互. 杂项设备文件操作集 cd /usr/src/linux ...
- ruoyi vue 前后端分离版本 打包分离jar包至lib
环境:若依前后端分离版本,原打包时将所有的依赖jar包放至ruoyi-admin.jar 包中,该包130MB,过大. 需求:为了减少打包更新上传的时间,减少至1.1mb 1.将不常更新的模块jar包 ...
- python在使用过程中安装库的方法
背景: 在学习python的过程中难免会出现python解释器中没有所需要的库,这时我们就要自行的去安装这些库了:当然如果使用的anaconda集成环境的话在安装python一些依赖环境中会简单不少( ...
- 打造一个极度舒适的Chrome扩展项目开发环境
大家好,我是 dom 哥.这是我关于 Chrome 扩展开发的系列文章,感兴趣的可以 点个小星星. Chrome 扩展能够提高浏览器的使用体验,通过自定义 UI 界面,监听浏览器事件,改变 Web 页 ...