字符串的使用:
先定义一个字符串s=“hello!”
1、字符串里面的元素:单个字母、数字、汉字、单个字符都称之为一个元素,即s中有h、e、l、l、o、!六个元素
len(数据) 用于统计数据的长度
例:print(len(s)) 输出6
2、字符串取值:
取单个值:字符串名[索引值] 注:索引:正序从0开始标记,倒序从-1开始标记
例:print(s[0]) 输出h
例:
字符串 | h | e | l | l | o | ! |
---|---|---|---|---|---|---|
正序 | 0 | 1 | 2 | 3 | 4 | 5 |
倒序 | -6 | -5 | -4 | -3 | -2 | -1 |
取多个值(切片):字符串名[索引头:索引尾:步长] 注:步长默认为1;取值时,取头不取尾
例: print(s[1:5:2]) #取第一个字符开始每次加两个一直加到第五个字符为止 即输出:el
print(s[:]) #从负无穷到正无穷 输出:hello!
print(s[:4]) #第四位前面的全部取(不包含第四位) 输出:hell
print(s[3:]) #第3位后面的全都取(包含第三位) 输出:lo!
print(s[-1:-7:-1]) #反序输出 输出:!olleh
print(s[::-1]) #反序输出 输出:!olleh
3、字符串的分割
字符串.split()
字符串.split(可以指定切割符)
字符串.split(可以指定切割符,切割次数)
注:返回了列表类型的数据 列表里的子元素都是字符串类型
注:指定的切割符 会被切走
例:s.split() 输出:[‘hello!’]
print(s.split(“l”))输出:[‘he’, ‘’, ‘o!’]
print(s.split(“l”,1)) 输出:[‘he’, ‘lo!’]
4、字符串的替换
字符串.replace(指定替换值,新值)
字符串.replace(指定替换值,新值,替换次数)
例:
s='hello'
new1=s.replace('o','@')
print(new1)
结果:hell@
new2=s.replace('l','@',2)
print(new2)
结果:he@@o
5、字符串的去除指定字符 注:这里的指定字符只去掉头跟尾中的指定字符
字符串.strip(指定字符)
例:
s=" !!!he!!!l lo!!! "
print(s.strip()) #默认去掉头尾的空格
结果:!!!he!!!l lo!!!
print(s.strip("!"))#头尾中有空格,未去掉!
结果: !!!he!!!l lo!!!
k="!!!he!!!l lo!!!"
print(k.strip("!"))#去掉!
结果:he!!!l lo
6、字符串的拼接 用+
例:
s_1='python,'
s_2='学习快乐!'
print(s_1+s_2)
结果:python,学习快乐!
注:保证加号左右的变量值类型要一致
例:str(数字)—可以强制转为str类型
s_1='python,'
s_2='学习快乐!'
s_3=666 #整数
print(s_1+s_2+s_3)
结果:直接将字符串与整数拼接,会报错
print(s_1+s_2+str(s_3))
结果:python,学习快乐!666
7、字符串格式化输出 用%或者format()
例:
age=18
name='小程序'
score=11.119
print("我是"+name+"今年"+age)
结果:报错,拼接了不同类型的数据
#格式化输出1:format 特点{},用这个{}来占个坑;
print("我是{0}今年{1}岁!".format(name,age))
结果:我是小程序今年18岁!
#注:{}中可以不填数字,默认按照format后面的顺序赋值
#格式化输出2:%s字符串 %d数字 %f 浮点数
print("我是%s今年%d岁!"%(name,age))
结果:我是小程序今年18岁! #注:只能按照顺序赋值
#%s可以填任何数据
%d只能填数字(整型、浮点数)浮点数时,输出时会自动把小数点后面的数去掉
%f 可以填数字,输出浮点数,后面自动补充满六位小数;只保留小数点后两位的%.2f,会自动四舍五入
例:
print("我是%s今年%d岁!得了%d分"%(name,age,score))#我是小程序今年18岁!得了11分
print("我是%s今年%d岁!得了%f分"%(name,age,score))#我是小程序今年18岁!得了11.119000分
print("我是%s今年%d岁!得了%.2f分"%(name,age,score))#四舍五入操作 我是小程序今年18岁!得了11.12分