字符串
简单定义就会 在双引号 或单引号 中的数据 如定义变量 a
a = "1000 nihao 你好 a+b" 或 a = '1000 nihao 你好 a+b '
a = 100 a = 100.22 这些能属于 int 和 float 类型
字符串的 下标和切片
下标:python中字符串支持下标读取,列表和 元组同样也支持
如果有字符串:name = 'abcdef',在内存中的实际存储如下:
所以,下标即字符串中当个元素的位置(注意:python中的下标从0开始,也就是 下标为0 时 实际上是第一位),演示下 下标取数据
切片
切片,就是 从变量中截取 一段数据。格式:【起始:结束:步长】 步长:通俗解释就是间隔比如
【1:7:2】:在第二位到地方位中,隔两个取一次数据:aa ="123456789" -----> aa[1:7:2] =="246"
(注意:选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身))
比如 aa ="123456789" 这是一个字符串
print(name[0:3]) # 取 下标0~2 的字符
print(aa[0:5]) #获取下标为0~4 的字符
print(aa[3:5]) # 获取下标为3,4 的字符
print(aa[2:]) # 获取 下标为2开始到最后的字符
print(aa[1:-1]) # 获取 下标为 1 开始到倒数第2 个之间的字符
动动手练习下,按照下标取数据,可以自己理一下思路
字符串的常见操作
如有字符串mystr = 'hello world itcast and itcastcpp',以下是常见的操作
find
检测 str 是否包含在 mystr中,如果是返回开始的索引值,否则返回-1
mystr.find(str, start=0, end=len(mystr)) # 这是一个python内置的方法模块 括号内的数据 表示 find 会查询 输入的 这个 str:(输入的字符串数据),在整个mystr 字符串内从第0位开始到这个字符串的最长长度中有没有,有的话就返回找到的数据的起始位置,没有的话就返回-1
len(mystr): 表示 mystr 这个字符串的长度,即有多少个元素
若在字符串中的 第4位到25位中查找则:mystr.find("and",4,25)
index (索引,下标)
跟find()方法一样,只不过如果str不在 mystr中会报一个异常.
mystr.index(str, start=0, end=len(mystr))
count
返回 str在start和end之间 在 mystr里面出现的次数
mystr.count(str, start=0, end=len(mystr))
replace
把 mystr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次.
mystr.replace(str1, str2, mystr.count(str1))
split
以 str 为分隔符切片 mystr,如果 maxsplit有指定值,则仅分隔 maxsplit 个子字符串
mystr.split(str=" ", 2)
capitalize
把字符串的第一个字符大写
mystr.capitalize()
title
把字符串的每个单词首字母大写
>>> a ="hello itcast"
>>> a.title()'Hello Itcast'
startswith
检查字符串是否是以 obj 开头, 是则返回 True,否则返回 False
mystr.startswith(obj)
endswith
检查字符串是否以obj结束,如果是返回True,否则返回 False.
mystr.endswith(obj)
lower
转换 mystr 中所有大写字符为小写
mystr.lower()
upper
转换 mystr 中的小写字母为大写
mystr.upper()
ljust
返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串
mystr.ljust(width)
center
返回一个原字符串居中,并使用空格填充至长度 width 的新字符串
mystr.center(width)
lstrip
删除 mystr 左边的空白字符
mystr.lstrip()
rstrip
删除 mystr 字符串末尾的空白字符
mystr.rstrip()
strip
删除mystr字符串两端的空白字符
>>> a ="\n\t itcast \t\n"
>>> a.strip()
'itcast'
rfind
类似于 find()函数,不过是从右边开始查找.
mystr.rfind(str, start=0,end=len(mystr) )
rindex
类似于 index(),不过是从右边开始.
mystr.rindex( str, start=0,end=len(mystr))
partition
把mystr以str分割成三部分,str前,str和str后
mystr.partition(str)
rpartition
类似于 partition()函数,不过是从右边开始.
mystr.rpartition(str)
splitlines
按照行分隔,返回一个包含各行作为元素的列表
mystr.splitlines()
isalpha
如果 mystr 所有字符都是字母 则返回 True,否则返回 False
mystr.isalpha()
isdigit
如果 mystr 只包含数字则返回 True 否则返回 False.
mystr.isdigit()
isalnum
如果 mystr 所有字符都是字母或数字则返回 True,否则返回 False
mystr.isalnum()
isspace
如果 mystr 中只包含空格,则返回 True,否则返回 False.
mystr.isspace()
join
mystr 中每个字符后面插入str,构造出一个新的字符串
mystr.join(str)