欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

day4 字符串

程序员文章站 2022-03-01 13:12:50
...

一.获取字符

1.获取单个字符

字符串中每一个字符都会对应一个唯一的索引(下标)用来表示字符在字符串中的位置
索引从0开始,0对应的第一个字符;可以是从-1开始依次减小,-1代表最后一个字符(-1到-字符串长度)
a.语法:
方法一:str[i] -获取字符串中指定下标对应的字符
b:
str-只要结果是字符串的表达式都可以,例如:字符串字面量,字符串变量
注意:字符串的下标不能越界

2.获取1部分字符(字符串切片)

a.语法:
str[开始下标:结束下标:步长]
规则:从开始下标开始,获取到借宿下标前为止。每次下标值加上步长!
b.说明:
开始下标、结束下标——下标值 (这儿的下标可以越界)
步长 要求必须是整数(正数和负数都行,如果步长是正数,是从开始下标开始从前往后获取
如果步长为负数,是从开始下标开始从后往前获取)
c.注意:
当步长为正时,要求开始下标对应的字符的位置必须在结束下标对应的位置前面,否则结果是空串!
当步长为负时,要求开始下标对应的字符的位置必须在结束下标对应的位置后面,否则结果是空串!
str1='好好学习,天天向上!
print('结果:',str1[0:-1:2])
注意:1.不管怎么取,结束下标一定取不到
2.下标可以越界

练习:获取一个字符串中所有下标是奇数的字符(顺序)
str2='qwertyuiop'
print('所有的奇数下标为:',str2[1:len(str2)+1:2])

2.1 省略步长:

字符串[开始下标:结束下标] -步长是1,从开始下标开始到结束下标前为止,一个一个的取

2.2 方法三 省略开始下标和结束下标:

省略开始下标:str[:结束下标:步长]-当步长是正数,从字符串的第一个字符开始取到结束下标前为止;
当步长是负数,从字符串的最后一个字符开始取到结束下标前为止;
省略结束下标:str[开始下标::步长] -当步长为正数,从开始下标开始取到字符串最后一个字符为止;
-当步长为正数,从开始下标开始取到字符串第一个字符为止;
字符串倒序:

print(str2[::-1])

二、字符串的运算

1.字符串支持的运算符:+、*、>、<......(所有的比较运算符)

+:字符串1+字符串2 -将字符串1和2拼接在一起产生一个新的字符串
注意:字符串和数字不能混合相加!
乘法:字符串乘N -N是正整数 表示把N个字符串相加,产生一个新的字符串
比较是否相等 ==、!=
字符比较大小:从第一个字符开始依次往后找,找到第一个不相等的字符串,判断谁的编码值大,对应字符串就大;不再往后比较
应用:a.判断第三个字符是否是字母

str1='1214hjas12'
print('a'<=str1[3]<='z' or 'A'<=str1[3]<='Z')
print('是否中文:','\u4e00'<=str1[3]<='\u9fa5')

字符串1 in 字符串2 ——>判断字符串1是否在字符串2中
字符串1 not in 字符串2 ——>判断字符串1是否不在字符串2中

2.len函数

len(序列) -获取序列长度,获取序列中元素的个数
len(字符串) -获取字符串的长度(字符的个数) --结果是一个整数
注意:一个可以转义字符的长度是1,一个编码字符的长度是1,一个空格的长度是1,一个tab键默认是4
一个tab键和\t实现的效果一样,但是所占的长度不一样

三、格式字符串

1.定义:在字符串中通过占位符来代替字符串中变化的部分,然后在后面通过数据或者变量确定变化

语法:包含占位符的字符串%(值1,值2,值3)

2.说明:

占位符 -%s(字符串)
%d(整数)
%f(小数) (%.Nf 保留小数后N位小数)
%c (字符)
%——固定写法
()--固定写法,字符串中只有一个占位符的时候,这个时候()可以省略
括号中的值-值和占位符要一一对应(个数、类型、位置都要对应)

name=input()
age=input()
sex=input()
mesage='我叫%s,今年%d,性别:%s,月薪%.2f万'%(name,age,sex,1.2)
print(mesage)
str1=input('请输入一个字符串:')
num=len(str1)
last_str1=str1[len(str1)-1]
mss='%s的长度是%d,最后一个字符是%s'%(str1,num,last_str1)
print(mss)
print('%s的长度是%d,最后一个字符是%s'%(str1,num,last_str1))

四、类型转换

1.基本语法

语法:类型名(数据) -将指定数据转换成指定类型
说明:类型名-Python支持的,或者自定的类型都可以
数据 -需要转换的类型(类型不同要求可能不一样)

2.转换实例

a.int(数据)——>将其他数据转换成整型
a=int(12.3) 所有的浮点数可以转换成整数,直接保留整数部分
b=int(False) bool转换为整数
c=int('123') 只有去掉字符串的引号后本身就是一个整数的字符串才能转换
b.转换成浮点型
a=float(100) 将整数转换成浮点数,在后面加.0
b=float(True) 转换为1
c=float('12.3') 只有去掉字符串的引号后本身就是一个浮点数的字符串才能转换
c.转换成bool类型 Python中所有的数据都可以转换成布尔
所有为空为0的值会转换为False,其他全部为True
d.转换成字符串类型
Python中所有的数据都可以转换成字符串,而且转换的时候就是单纯的在最外面加''

num1=float(input('请输入第一个数字:'))
num2=float(input('请输入第二个数字:'))
num3=float(input('请输入第三个数字:'))
print('三个数之和为:',num1+num2+num3)