python学习之【第三篇】:Python中的字符串及其所具有的方法
1.前言
字符串str是Python中最常用的数据类型。我们可以使用单引号‘’或双引号“”包裹一段字符来创建字符串。
2.字符串创建
str1 = 'hello world'
str2 = 'abcdefg'
3.访问字符串中的值
字符串实际上就是字符的数组,所以我们可以使用下标索引的方式来访问字符串中的每个字符。
如果有字符串:name = 'abcdef',在内存中的实际存储如下:

那么可以通过下标的方法来取出字符串中的每个字符:
如果从头部开始取,索引为正
如果从尾部开始取,索引为负
name = 'abcdef'
print(name[0]) # 输出a
print(name[1]) # 输出b
print(name[2]) # 输出c
print(name[-1]) # 输出f
print(name[-2]) # 输出e
print(name[-3]) # 输出d
4.字符串切片
切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。
语法:[起始:结束:步长]
注意:选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)。包左不包右
name = 'abcdef'
print(name[0:5]) # 取下标为0—4的字符,输出abcde
print(name[2:]) # 取下标从2开始一直到结束的字符,输出cdef
print(name[1:-1]) # 取下标从1开始到倒数第2个下标之间的字符,输出bcde
5.字符串的常用方法
1.capitalize()
将字符串的第一个字母变成大写,其他字母变小写。
str = 'hello world'
print(str.capitalize())
#输出
'Hello world'
2.swapcase()
将字符串中大写转换为小写,小写转换为大写
str = 'hello world'
print(str.swapcase())
#输出
'HELLO WORLD'
3.title()
将字符串中每个单词的首字母变成大写
str = 'hello world'
print(str.title())
#输出
'Hello World'
4.upper()
将字符串所有字母都变成大写
str = 'hello world'
print(str.upper())
#输出
'HELLO WORLD'
5.lower()
将字符串所有字母都变成小写
str = 'Hello World'
print(str.lower())
#输出
'hello world'
6.rjust(width,[, fillchar])、ljust(width[, fillchar])和center(width, fillchar)
- rjust(width,[, fillchar]):返回一个原字符串右对齐,并使用fillchar(默认空格)填充至长度 width 的新字符串
- ljust(width[, fillchar]):返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格。
- center(width, fillchar):返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。
str = 'hello'
print(str.rjust(10))
print(str.rjust(10,'*'))
print(str.ljust(10))
print(str.ljust(10,'*'))
print(str.center(10))
print(str.center(10,'*'))
#输出
' hello'
'*****hello'
'hello '
'hello*****'
' hello '
'**hello***'
7.lstrip()、rstrip()和strip()
- lstrip():去除字符串左边的空格或指定字符。
- rstrip():去除字符串右边的空格或指定字符。
- strip():去除字符串左右两边的空格或指定字符。
str1 = ' hello '
str2 = '*****hello*****'
print(str1.lstrip())
print(str2.lstrip('*'))
print(str1.rstrip())
print(str2.rstrip('*'))
print(str1.strip())
print(str2.strip('*'))
#输出
'hello '
'hello*****'
' hello'
'*****hello'
'hello'
'hello'
8.startswith(obj)和endswith(obj)
检查字符串是否是以 obj 开头,是则返回 True,否则返回 False。
str = 'Hello World'
print(str.startswith('Hel'))
print(str.startswith('haha'))
print(str.endswith('rld'))
print(str.endswith('hahaha'))
#输出
True
False
True
False
9.replace(oldstr, newstr)
把字符串中的 old(旧字符串) 替换成 new(新字符串)
str = 'Hello World'
print(str.replace('World', 'China'))
#输出
'Hello China'
10.split()
将字符串按照括号内的字符分割并组成列表
str = 'China-is-good'
print(str.split('-'))
#输出
['China', 'is', 'good']
11.count()
返回子字符串在字符串里面出现的次数
str = 'Hello World'
print(str.count('o'))
#输出
2
12.format()
格式化字符串
#方式一:按位置传参
str1 = '我叫{},今年{}岁'
str2 = '我叫{},今年{}岁'.format('难凉热血',18)
print(str2)
#输出
'我叫难凉热血,今年18岁'
#方式二:按索引传参
str1 = '我叫{0},今年{1}岁,大家都叫我{0}'
str2 = '我叫{0},今年{1}岁,大家都叫我{0}'.format('难凉热血',18)
print(str2)
#输出
'我叫难凉热血,今年18岁,大家都叫我难凉热血'
#方式三:按key传参
str1 = '我叫{name},今年{age}岁'
str2 = '我叫{name},今年{age}岁'.format(age=53,name='难凉热血')
print(str2)
#输出
'我叫难凉热血,今年18岁'
13.find()
在字符串中查找某个子字符串,可以整体找,也可以切片,如果找到,返回匹配到的第一个字母的索引,找不到则返回-1
str = 'Hello World,Hello China'
print(str.find('World'))
print(str.find('Hello'))
print(str.find('xxx'))
print(str.find('World',1,5)) #在第一个索引和第5个索引中寻找
#输出
6
0
-1
-1
14.index()
在字符串中查找某个子字符串,可以整体找,也可以切片,如果找到,返回匹配到的第一个字母的索引,找不到直接报错
str = 'Hello World,Hello China'
print(str.index('World'))
print(str.index('xxx'))
print(str.index('World',1,5)) #在第一个索引和第5个索引中寻找
#输出
6
报错
报错
15.join()
用于将序列中的元素以指定的字符连接生成一个新的字符串
str='hello'
res = '-'.join(str)
print(res)
#输出
h-e-l-l-o
python学习之【第三篇】:Python中的字符串及其所具有的方法的更多相关文章
- python学习【第三篇】基本数据类型
Number(数字) int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取 ...
- Python学习系列(三)Python 入门语法规则1
一.注释 ''' 多行注释 ''' #单行注释 ''' #example1.1 测试程序 时间:4/17/2017 i1=input("请输入用户名:") i2=input ...
- Python学习【第三篇】Python变量
变量 声明变量 #!/usr/bin/env python name = "Bourbon" 上述代码声明了一个变量,变量名为:name,变量的值为:"Bourbon&q ...
- Python学习笔记(三)——文件系统中的常用方法
OS模块中关于文件/目录常用的函数使用方法 函数名 使用方法 getcwd() 返回当前工作目录 chdir() 改变工作目录 listdir(path='.') 列举指定目录中的文件名('.'表示当 ...
- python学习笔记(三)---python关键字及其用法
转载出处:https://www.cnblogs.com/ECJTUACM-873284962/p/7576959.html 前言 最近在学习Java Sockst的时候遇到了一些麻烦事,我觉得我很有 ...
- Python学习笔记(三)Python基本数字类型及其简单操作(1)
一.数字类型 表示数字或数值的数据类型称为数字类型,Python语言提供3种数字类型:整数.浮点数和复数,分别对应数学中的整数.实数和复数,下面就一起来了解一下他们吧! 1.整数类型 整数类型与数学中 ...
- python学习笔记(三)之变量和字符串
在其他语言中,变量就是有名字的存储区,可以将值存储在变量中,也即内存中.在Python中略有不同,python并不是将值存储在变量中,更像是把名字贴在值上边.所以,有些python程序员会说pytho ...
- Python学习日记(三)——Python基本数据类型(运算符、int、str、tuple、dict、range)
运算符 1.算数运算 2.比较运算 3.赋值运算 4.逻辑运算 5.成员运算 基本数据类型 1.数字 int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2 ...
- Python学习笔记之基础篇(-)python介绍与安装
Python学习笔记之基础篇(-)初识python Python的理念:崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. python的历史: 1989年,为了打发圣诞节假期,作者Guido开始写P ...
- python学习心得第三章
python学习心得第三章 1.三元运算 变量=值1 if 条件 else 值2 由图如果条件成立则赋值1给变量,如果条件不成立则赋值2给变量. 2.数据类型 集合:set() class set(o ...
随机推荐
- [ASP.NET Core 3框架揭秘] 跨平台开发体验: Docker
对于一个 .NET Core开发人员,你可能没有使用过Docker,但是你不可能没有听说过Docker.Docker是Github上最受欢迎的开源项目之一,它号称要成为所有云应用的基石,并把互联网升级 ...
- uni-app h5端跳转到底部导航栏的时候使用方法uni.switchTab跳转刷新页面更新数据
h5端的uni-app项目 需求:uni-app h5端跳转到底部导航栏的时候使用方法uni.switchTab跳转刷新页面更新数据 百度的方法如下: uni.switchTab({ url: '/p ...
- 第二篇 python进阶
目录 第二篇 python进阶 一 数字类型内置方法 二 字符串类型内置方法 三 列表类型内置方法(list) 四 元组类型内置方法(tuple) 五 字典内置方法 六 集合类型内置方法(self) ...
- AVL树、红黑树以及B树介绍
简介 首先,说一下在数据结构中为什么要引入树这种结构,在我们上篇文章中介绍的数组与链表中,可以发现,数组适合查询这种静态操作(O(1)),不合适删除与插入这种动态操作(O(n)),而链表则是适合删除与 ...
- vodevs3031 最富有的人
在你的面前有n堆金子,你只能取走其中的两堆,且总价值为这两堆金子的xor值,你想成为最富有的人,你就要有所选择. 输入描述 Input Description 第一行包含两个正整数n,表示有n堆金子. ...
- MySQL基础(三)多表查询(各种join连接详解)
Mysql 多表查询详解 一.前言 二.示例 三.注意事项 一.前言 上篇讲到Mysql中关键字执行的顺序,只涉及了一张表:实际应用大部分情况下,查询语句都会涉及到多张表格 : 1.1 多表连接有哪些 ...
- Web渗透之mssql2005 差异备份getshell
这里记录下mssql2005差异备份拿shell的过程 http://192.168.5.21:81/index.asp?id=1;alter/**/database/**/[asp_test]/** ...
- Python之random模块和time模块
1.random()模块的使用 import random x = random.random() y = random.random() print(x,y*10) #random.random ...
- opencv::直方图均衡化
直方图均衡化 图像直方图: 是指对整个图像像在灰度范围内的像素值是指对整个图像像在灰度范围内的像素值(~)统计出现频率次数,据此生成的直方图,称为图像直方图-直方图. 直方图反映了图像灰度的分布情况. ...
- 小白学 Python(8):基础流程控制(下)
人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...