python学习之路06——字符串

时间:2022-09-30 01:30:29

字符串

1.概念

字符串就是由若干个字符组成的有限序列

字符:字母,数字,特殊符号,中文

表示形式:采用的单引号或者双引号

注意:字符串属于不可变实体

2.创建字符串

str1 = "hello"

str2 = 'hello'

str3 = 'h' #Python不支持单字符类型,单字符在Python中也是一个字符串

关于字符串下列说法错误的是 ()

A、字符应该视为长度为 1的字符串 B、字符串以\0标志字符串的结束 C、既可以用单引号,也可以用双引号创建字符串 D、在三引号字符串中可以包含换行回车等特殊字符

3.字符串的运算

#1.字符串的拼接“+”:s1 = "123"   s2 = "abc"   print(s1+s2)

#2.字符串的重复输入"*":print("#"*30)

#3.字符串中的某个字符:str1 = "i love James and LEOLW"  print(str1[4]) 获取字符串的长度:len(str1)

#4.截取字符串:str1 = "asdfdggklskfl" print(str1[:]) print(str1[2:]) print(str1[3:6])(不包括结束)

#5.判断字符串中是否包含指定的字符:str = "this is a great day" print("great" in str)

4.格式化字符串

通过%来改变后面字母的含义,%被称为占位符

​ %s:字符串【对象】,%d:整型 ,%f:浮点型,可以指定小数点后的位数【精度】

print("hello")

num = 10

str1 = "hello"

print(num,str1)

print("num = ",num,"str1 = ",str1)

#格式化
print("%d + %s" %(num,str1))

f = 12.34545

print("num = %d,str1 = %s,f = %f"%(num,str1,f))

print("num = %d,str1 = %s,f = %.2f"%(num,str1,f))

#注意:%.nf,如果n省略,则表示取整,如果n>=1,则表示保留小数点后n位,会进行四舍五入的操作

5.字符串的操作

#1.字符串和整形之间的转化:#eval(str):将str转换为有效的表达式,参与运算,并返回运算结果

int()只能将数字类型的字符串转化为int类型

#2.统计子字符串在原字符串中出现的次数:count,str = "python oo omg " c =str.count("o") print(c)(其实count有三个参数,可以在字符串中截取一段判断)

#3.大小写字母转换:upper() lower() swapcase()大小写互换 capitalize()将首个单词的首字母大写 title()将每个单词首字母大写

#4.填充【了解】

#center(width[,fillchar]):返回一个指定宽度的居中字符串,width是填充之后整个字符串的长度,

# fillchar是需要被填充的字符串,默认为空格

#char---->character字符

str1 = "hello"

print(str1.center(20))

print(str1.center(20,"*"))

#print(str1.center(20,"abc")) #TypeError: The fill character must be exactly one character long

#注意:使用了center功能之后,生成了一个新的字符串,原字符串出现在中间,两边使用指定的字符进行填充

#注意:fillchar必须只有一个字符

#ljust(width[,fillchar]) 返回一个指定宽度的字符串,将原字符串居左对齐,width是填充之后整个字符串的长度,

#l:left

print(str1.ljust(20,"%"))

#rjust(width[,fillchar]) 返回一个指定宽度的字符串,将原字符串居右对齐,width是填充之后整个字符串的长度,

#r:right

print(str1.rjust(20,"%"))

#zfill(width)返回一个指定宽度的字符串,将原字符串居右对齐,width使用0填充

print(str1.zfill(20))

#5.查找:find() index() 两者的区别:都是返回索引 ,find如果找不到就会返回-1,index会报错,

#6.提取:#strip(str) :使用str作为条件提取字符串,需要注意:只能去除两端的指定字符【trim】

#7.分割与合并:split(str[,num]);使用指定字符串分割原字符串,返回一个列表【字符串转换为列表】

join(list);将原字符串作为连接符号,将列表中的元素连接起来,结果为一个字符串【列表转换为字符串】

#8.替换:replace(old,new[,max]):将原字符串中的old字符串替换为new的字符串,如果指定了max,则替换的次数不超过max次
#注意:max:从左到右检测,只替换指定个数的字符串print(str2.replace("good","bad",2))
#9.判断:
#isalpha():如果字符串至少有一个字符并且所有的字符都是字母的话,则返回True

#isalnum():如果字符串至少有一个字符并且所有的字符是字母或者数字的话,则返回true

#isdigit()【掌握】:判断字符串中是否只包含数字,则返回True
#isnumeric():判断字符串中中是否只包含数字字符,则返回True

#isspace();判断字符串中是否只包含空格,则返回True

#10.starstwith() endswith()分别判断字符串的开始和结尾