(01)-Python3之--字符串操作
1.字符串切片取值
字符串的取值通过索引来读取,从0开始。
取区间值如下:字符串变量名[起始索引:结束索引]。包含起始,但不包含结束。
例如:
str_my = "hello,python!我来了!"
print(str_my[0:4]) # 取0,1,2,3位
print(str_my[0:5]) # 取0,1,2,3,4位
# 从第6个开始,一直取到最后。
print(str_my[5:])
# 从头开始,取到索引下标为7
print(str_my[:8])
print(str_my[0:8]) 结果:
hell
hello
,python!我来了!
hello,py
hello,py
2.字符串长度
获取字符串长度一般用len函数
str_my = "hello,python!我来了!"
print(len(str_my)) 结果:
23
3.查找子字符串
语法:字符串变量名.find(子字符串)
如果找到了,返回的是起始索引。如果没有找到了,返回的是-1。
例如:
str_my = "hello,python!我来了!"
# 查找python
print(str_my.find("python"))
# 查找ph
print(str_my.find("ph"))
# 查找!
print(str_my.find("!")) 结果:
6
-1
12
rfind() 返回字符串最后一次出现的位置,如果没有匹配项则返回-1。
语法:str.rfind(str, beg=0 end=len(string))
- str -- 查找的字符串
- beg -- 开始查找的位置,默认为0
- end -- 结束查找位置,默认为字符串的长度。
filename = r'E:\Users\Web_test\test1.py'
pos = filename.rfind('.')
print(pos)
suffix = filename[pos:]
print(suffix)
结果:
.py
4.替换操作
语法:字符串变量.replace(old,new)
例如:
str_my = "hello,python!我来了!"
# 用$来替换!
new_str = str_my.replace("!","$")
print(new_str)
# 用$来替换!且只替换一个。
new_str = str_my.replace("!","$",1)
print(new_str) 结果:
hello,python$我来了$
hello,python$我来了!
5.字符串大小写转换
小写字母转换成大写字母:upper()
大写字母转换成小写字母:lower()
把第一个字母转化为大写字母,其余小写:capitalize()
把每个单词的第一个字母转化为大写,其余小写:title()
例如:
# 小写字母转换成大写字母:upper()
str_my = "www.baidu.com"
print(str_my.upper()) # 大写字母转换成小写字母:lower()
str_my = "WWW.BAIDU.COM"
print(str_my.lower()) # 把第一个字母转化为大写字母,其余小写:capitalize()
str_my = "www.baidu.com"
print(str_my.capitalize()) # 把每个单词的第一个字母转化为大写,其余小写:title()
str_my = "www.baidu.com"
print(str_my.title()) 结果:
WWW.BAIDU.COM
www.baidu.com
Www.baidu.com
Www.Baidu.Com
6.删除字符串
删除字符串左右(头尾)两边的空格或者指定的字符串。
语法:字符串变量名.strip([指定的字符串])
例如:
例一:
str_a = " 11python31,class3 "
# 删除头尾的空格
new_str = str_a.strip()
print(new_str)
# 删除头尾指定的11
new_str2 = new_str.strip("1")
print(new_str2)
# 删除左边空字符
new_str3 = str_a.lstrip()
print(new_str3)
#删除右边空字符
new_str3 = str_a.rstrip()
print(new_str3) 结果:
11python31,class3
python31,class3
11python31,class3
11python31,class3
例二:
str_a = ' -----abc123++++ '
# 删除两边 - + 和空字符
print(str_a.strip().strip('-+')) 结果:
abc123
例三:
str_a = 'abc:123'
# 删除单个固定位置字符使用切片+拼接
# 字符串拼接方式去除冒号
new_str_a = str_a[:3] + str_a[4:]
print(new_str_a) 结果:
abc123
7.字符串截断
字符串截断是按照指定的分隔符进行字符串的截断。
语法:字符串变量名.split(分隔符)
例如:
str_b = "大家好,我是python。今天的天气真好,上课很开心。一会儿就中场休息。"
# 使用.split(分隔符)分割字符串。
result = str_b.split("。")
print(result)
# 指定分隔的次数
result_2 = str_b.split("。",1)
print(result_2) 结果:
['大家好,我是python', '今天的天气真好,上课很开心', '一会儿就中场休息', '']
['大家好,我是python', '今天的天气真好,上课很开心。一会儿就中场休息。']
8.字符串拼接
用连接符,将列表当中字符串拼成一个字符串。
要求:列表当中每一个值都要是字符串。
语法:连接符.join(列表)
例如:
list_a = ['大家好,我是Python', '今天的天气真好,上课很开心', '一会儿就中场休息', '']
list_b = " $我是连接符$ ".join(list_a)
print(list_b) 结果:
大家好,我是Python $我是连接符$ 今天的天气真好,上课很开心 $我是连接符$ 一会儿就中场休息 $我是连接符$
9.检查字符串是否以指定的字符串开头和结尾
list_a = '大家好,我是Python,今天的天气真好,上课很开心,一会儿就中场休息'
list_b = list_a.startswith('大家好')
list_c = list_a.endswith('我是Python')
print(list_b)
print(list_c) 结果:
True
False
10.宽度居中并在两侧填充指定的字符
语法:字符串变量名.center(50,'*') # 将字符串以指定的宽度居中并在两侧填充指定的字符
语法:字符串变量名.rjust(50,' ') # 将字符串以指定的宽度靠右放置左侧填充指定的字符
list_a = '大家好,我是Python,今天的天气真好,上课很开心,一会儿就中场休息'
# 将字符串以指定的宽度居中并在两侧填充指定的字符
list_b = list_a.center(50,'*')
# 将字符串以指定的宽度靠右放置左侧填充指定的字符
list_c = list_a.rjust(50,' ')
print(list_b)
print(list_c) 结果:
*******大家好,我是Python,今天的天气真好,上课很开心,一会儿就中场休息********
大家好,我是Python,今天的天气真好,上课很开心,一会儿就中场休息
11.检查字符串是否由数字、字母构成
str_a = '123456'
# 检查字符串是否由数字构成
print(str_a.isdigit())
# 检查字符串是否以字母构成
print(str_a.isalpha())
# 检查字符串是否以数字和字母构成
print(str_a.isalnum()) 结果:
True
False
True
12.格式化字符串
方式一:%使用
%s 字符串
%d 数字
%f 浮点数
例如:
str_a = "我今年的目标是:薪资上涨%d,达到月薪%d。" % (5000,10000)
print(str_a) 结果:
我今年的目标是:薪资上涨5000,达到月薪10000。
方式二:format
占位符{}
例如:
str_a = "我今年的目标是:薪资上涨 {} ,达到月薪 {} ".format(5000,10000)
print(str_a)
# 占位符{0}{1}
str_b = "我今年的目标是:薪资上涨 {1} ,达到月薪 {0} ".format(10000,5000)
print(str_b)
# 占位符{0}{0}
str_c = "我今年 {0} 岁,我希望我每年都是 {0} 岁。".format(18)
print(str_c)
结果:
我今年的目标是:薪资上涨 5000 ,达到月薪 10000
我今年的目标是:薪资上涨 5000 ,达到月薪 10000
我今年 18 岁,我希望我每年都是 18 岁。
(01)-Python3之--字符串操作的更多相关文章
- [No000078]Python3 字符串操作
#!/usr/bin/env python3 # -*- coding: utf-8 -*- '''Python 字符串操作 string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分 ...
- python3字符串操作
python3字符串操作 x = 'abc' y = 'defgh' print(x + y) #x+y print(x * ) #x*n print(x[]) #x[i] print(y[:-]) ...
- python3.4学习笔记(十五) 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
python3.4学习笔记(十五) 字符串操作(string替换.删除.截取.复制.连接.比较.查找.包含.大小写转换.分割等) python print 不换行(在后面加上,end=''),prin ...
- Python中的字符串操作总结(Python3.6.1版本)
Python中的字符串操作(Python3.6.1版本) (1)切片操作: str1="hello world!" str1[1:3] <=> 'el'(左闭右开:即是 ...
- Python3基础(2)模块、数据类型及运算、进制、列表、元组、字符串操作、字典
---------------个人学习笔记--------------- ----------------本文作者吴疆-------------- ------点击此处链接至博客园原文------ 1 ...
- Python3学习之路~2.3 字符串操作
字符串操作 特性:不可修改 name="my \tname is alex" print(name.capitalize()) #首字母变大写 print('Alex LI'.ca ...
- python3.0 day02 列表、元组 、字典、字符串操作
1.列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作,类似于其他语言中的数组. 定义列表 names = ['Lioa',"Tenglan ...
- python3 格式化输出,字符串操作,模块,列表,元组
初识python,在网上看了老男孩的视频,建立一个博客将自己所学的python知识记录下来. input加密,用于输入密码的阶段. import getpass user = input(" ...
- Python3标准库:string通用字符串操作
1. string:通用字符串操作 string模块在很早的Python版本中就有了.以前这个模块中提供的很多函数已经移植为str对象的方法,不过这个模块仍保留了很多有用的常量和类来处理str对象. ...
随机推荐
- Tensorflow Windows安装
操作系统: Windows 7 安装步骤 Step 1: 安装Tensorflow支持的Python版本,配置环境变量 目前,Tensorflow支持: Python 3.5.x 64-bit fro ...
- MGRE实验--内网为OSPF
实验要求: R2为ISP,只能配置IP地址 R1.R3.R4之间构建MGRE环境,仅R1IP地址固定 内网使用OSPF获取路由,全网可达 拓扑: 1.配置IP地址 2.配置缺省 3.配置MGRE环境 ...
- Jenkins自动化部署服务器及git 提交及git tag标签版本更新流程,超详细!
工作中部署的项目和服务器较多时就用上了Jenkins进行自动部署 优点 不用在连接单独的服务器进行更新项目,再启动项目服务的操作了 更新部署都是自动的,比较方便.适合大批量的部署 一.git流程部分 ...
- JavaEE在职加薪课好客租房项目实战视频教程
JavaEE在职加薪课好客租房项目实战视频教程课程介绍: 本课程采用SOA架构思想进行设计,基于目前主流后端技术框架SpringBoot.SpringMVC.Mybaits.Dubbo等来 ...
- Net Core(Net5) 部署到不同操作系统遇到问题的解决方法
Net Core(Net5) 部署到不同操作系统的解决方法 目录 Net Core(Net5) 部署到不同操作系统的解决方法 1 系统版本升级补丁 1.1应用程序部署时VC无法安装,导致应用程序缺少配 ...
- [leetcode33Search in Rotated Sorted Array]在排序旋转后序列中找目标值
直接上代码 /** * Created by lvhao on 2017/6/30. * Suppose an array sorted in ascending order is rotated a ...
- 仿小米logo案例
效果:做一个具有logo能过渡切换效果,类似于小米网站的logo 思路:将两个用于切换的logo以文字形式嵌入活动块banner的左右半,活动块banner的上级是主展示块box,初态只展示右半log ...
- 5.汇编实现裸机LED
首先:操作LED就要操作GPIO alpha的芯片是NXP的IMX6ULL 其GPIO和STM32的命名有所区别 可以看到IMX6ULL的GPIO以其功能进行命名,对应上图中PAD之后的部分 即G ...
- 五、Zookeeper、Hbase集群搭建
一.前提 1.安装JDK 2.安装Hadoop 3.安装zoookeeper 1.加入zookeeper包,并解压tar -zxvf zookeeper-3.4.9.tar.gz 2.去/etc/pr ...
- 网页短信平台源码和开发功能介绍 思路和功能 G客短信平台
G客短信源码介绍 (只介绍现有功能模块文字介绍配系统截图) 一:后台首页 QQ:290615413 VX:290615413