字符串相关操作

2018-12-27  本文已影响0人  有趣的恶魔QAQ

字符串

一、字符的获取

获取单个字符

  字符串中的每个字符都会对应一个唯一的下标(索引),用来表示字符在字符串中的位置
  下标从0开始依次增加,0对应的是第一个字符;也可以是从-1开始依次减少,-1对应最后一个字符。

例如:
'chener' --> c -->(0,-6) , h -->(1,-5) , e -->(2,-4) , n -->(3,-3) , e -->(4,-2) , r -->(5,-1)

a.获取单个字符的语法:

字符串[下标] - 获取字符串中与指定下标对应的字符

b.说明:

  字符串 - 只要结果是字符串的表达式都可以,例如: 字符串字面量、字符串变量
  [] - 固定写法
下标 - 需要获取的字符对应的下标;注意:下标不能越界

语法如下:
result = 'chen er'[-4]
print(result)

print('chen er'[5])

str1 = 'xiao chen er'
print(str1[-5])
2.获取部分字符(字符串切片)

注意:当步长为正,要求开始下标对应的字符的位置必须在结束下标对应的字符的位置的前面,否则结果为空串
   当步长为负,要求开始下标对应的字符的位置必须在结束下标对应的字符的位置的后面,否则结果为空串

str2 = 'ai ni bao bei'
print('结果1:', str2[0:6:2])  # 从前往后取
print('结果2:', str2[7:4:-1])  # 从后往前取
print('结果3:', str2[-1:-23:-1])  # 越界
方法二(省略步长):

字符串[开始下标:结束下标] -- 步长默认为1;从开始下标开始到结束下标结束,一个一个取。

print('wo ai ni xiao chen er'[3:2])

方法三(省略开始下标和结束下标):
a.省略开始下标

字符串[:结束下表:步长] -- 当步长是正数,从字符串的第一个字符往后面取到结束下标前为止;当步长是负数,从字符串的最后一个字符往前面取到结束下标前为止

b.结束下标省略

字符串[开始下标::步长] -- 当步长是正数,从开始下标取到字符串的最后一个字符;当步长是负数,从开始下标取到字符串的第一个字符

str3 = 'xiao chen er wo ai ni'
print(str3[:2]), print(str3[:2:-1])
print(str3[2:]), print(str3[2::-1])
print(str3[:])
print(str3[::-1])  # 让字符串倒序
print(str3)

二、类型转换

=======类型转换========

2,转换实例

转换成整型

转换成浮点型

转换成布尔类型

python中所有的数据都可以转换成布尔类型
结论:所有为空为零的值都会转换成False,其他的全是True

转换成字符串类型

结论:python中所有的数据都可以转换成字符串,转换的时候直接在外面加“ ' ”即可

练习:输入三个数字,求这三个数字的和

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

三、字符串的相关运算

字符串支持的运算符: + , * ,> , < , == , !=, >= , <=

python中的字符串支持数学运算符中的“+”和“*”,以及所有的比较运算符

1.数学运算符的应用“+”、“*”
2.比较运算符的应用

练习:判断一个字符串中第三个字符是不是字母

str1 = 'dal232.fka42'
char = str1[2]    取出第三个字符
print('是否是字母:', 'a' <= char <= 'z' or 'A' <= char <= 'Z')
print('是否是中文:', '\u4e00' <= char <= '\u9fa5')    判断取出的字符是不是中文
3.in 和 not in操作
print('cc' in 'cc520')    True
print('cc' in 'c c520')    False

print('cc' not in 'cc520')    False
print('cc' not in 'c c520')    True
4.len函数

注意:一个转义字符的长度为1,一个编码字符的长度为1.

  一个空格字符的长度为1,一般情况下手动在键盘上按一个tab键的长度是4(打印出来的内容和\t一样,但是打印的长度不同)

print(len('chener'))
str2 = input('请输入:')
last_char = str2[len(str2) - 1]
print(last_char)

四、格式字符串

========格式字符串=========

% -- 固定写法
() -- 固定写法,字符串中只有一个占位符的时候,这个()可以省略
括号里面的值 -- 值和占位符要一一对应(个数、类型、位置都要对应)

name = input('姓名:')
age = 18
sex = '女'
message = '我叫%s, 今年%d, 性别%s, 月薪%d' % (name, age, sex, 1314)

练习:输入一个字符串,用一个变量保存输入的字符串的相关信息:xxx的长度是x,最后一个字符是x
例如:输入abc --> abc的长度是3,最后一个字符是c

str3 = input('输入一个字符串:')
last_char = str3[len(str3) - 1]
message = '%s的长度是%d,最后一个字符是%c' % (str3, len(str3), last_char )
print(message)

五、字符串的内置函数

表中所有字符串相关方法的使用方式都是: 字符串.方法名()

1.capitalize()

字符串.capitalize() --> 将字符串的第一个字母变成大写(只有第一个字符为字母的时候才有效)
str = 'chener'
print(str.capitalize())

2.字符串对齐方式

str1 = 'ai'
print(str1.center(10, '*'))

3.count

字符串1.count(字符串2) -- 在字符串1中统计字符串2出现的次数

print('wo ai ni'.count('ai'))

4.isalpha

字符串.isalpha() -- 判断字符串中是否全是字母或者数字
注意:非ASCII码表里面的字符检测不出来

print('fhaoho'.isalpha())

5.join

字符串1.join(字符串2) -- 将字符串1插入到字符串二中的每个字符之间

print('*'.join('aini'))

练习:

str = input('请输入您的入班序号:')
tishi = 'py1809' + str.rjust(4, '0')
print('您的学号为:', tishi)
上一篇下一篇

猜你喜欢

热点阅读