使用引号(单引号,双引号,三引号)引起来的内容就是字符串。
元素以引号包围且不可修改的有序序列。
字符串正序索引
a='123abc'
for i in a:
print(i,end="")
结果:123abc
字符串倒叙索引
a='123abc'
i=-1
while i>-len(a)-1:
print(a[i],end="")
i-=1
结果:cba321
字符串切片:从字符串中复制出一份指定的内容,存储在另一变量中,不会对原字符串进行修改。
切片格式:[ start : end : step ]
注意:步长可以省略,默认为1
包括开头,不包含结尾
字符串格式化format()
a='我叫{},年龄{}'.format("张三",18)
print(a)
结果:我叫张三,年龄18
a='我叫{0},年龄{1},姓名{0}'.format("李四",28)
print(a)
结果:我叫李四,年龄28,姓名李四
^属性居中、<属性居左、>属性居右、:后面的是填充的字符、最后面的数字:占总的长度
整型%d,浮点型%f,字符串型%s
name="张三"
age=18
height=1.78
print("我叫%s,年龄%d,身高%f"%(name,age,height))
结果:我叫张三,年龄18,身高1.780000
find查找,返回从左第一个指定字符的索引,找不到返回-1
rfind查找,返回从右第一个指定字符的索引,找不到返回-1
index查找,返回从左第一个指定字符的索引,找不到报错
rindex查找,返回从右第一个指定字符的索引,找不到报错
count计数功能,返回自定字符在字符串当中的个数
在任意长度的母串中找任意长度子串的个数
a=str(input("请输入母串:"))
b=str(input("请输入子串:"))
for i in range(0,len(a)-len(b)+1):
for j in range(0,len(b)):
if a[i+j]!=b[j]:
break
if j==len(b)-1:
print(i)
break
partition分割,把mystr以第一个str分割成三部分,str前,str自身,str后
split按照指定的内容进行分割
maxsplit最大切割次数
a='123ab456ab789ab000'
print(a.split("ab",maxsplit=2))
结果:[‘123’, ‘456’, ‘789ab000’]
splitlines按照行分割,返回一个包含各行作为元素的列表,按照换行符分割
replace从左向右替换指定内容,可以指定个数,默认全部替换
translate按照对应关系替换
center让字符串在指定长度居中,如果不能居中左短右长,可以指定填充内容,默认为空格
ljust让字符串在指定长度左齐,可以指定填充内容,默认为空格
zfill将字符串填充到指定的长度,不足的地方用0开始补充
rstrip默认去除右边空格,去除内容可以指定
lstrip默认去除左边空格,去除内容可以指定
strip去除两边空格,去除内容可以指定
upper将字符串中所有字母转换为大写字母
lower将字符串中所有字母转换为小写字母
swapcase将字符串中所有字母大小写转换
title标题每个首字母大写
capitalize只将第一个字母大写
expandtabs将字符串中的\t转换为空格,默认空格数是8
转义字符
print("\c")
print("\n")
print("\t")
print("\\")
print("\'")
print("\"")
结果:\c \ ’ "