day_03字符串
程序员文章站
2022-03-08 11:53:14
...
1.认识字符串
1.1.什么是字符串
a.使用单引号或者双引号括起来的字符集就是字符串。
b.引号中单独的符号、数字、字母等叫字符
c.转义字符:可以用来表示一些有特殊功能或者是特殊意义的字符(通过在固定的字符前加\)
\' -> '
\\ ->
\n -> 换行
\t -> 制表符
\" -> "
在计算字符串长度的时候,转义字符代表一个字符
1.2.阻止转义
可以通过在字符串前面加r或R,来阻止转义字符转义
1.3.python中字符串中的字符是Unicode编码
Unicode编码:使用16位对一个字符进行编码。编码的目的是让字符可以存储到计算机中。(2^16 = 65536 111)
Unicode码中包含了ASSCII码,并且可以表示世界上所有的语言和符号
# a.获取一个字符的Unicode码
ord1 = ord('余')
ord2 = ord('婷')
ord3 = ord('A')
print(hex(ord1), hex(ord2), ord3)
# b.将Unicode码转换成字符
# chr(编码值)
print(chr(0x4eff))
2.获取字符串中的字符
2.1.获取字符串的长度
# len是获取序列长度的内置函数
count = len('abc\n123')
print(count)
2.2.通过下标获取字符串中的某一个字符
# 字符串中每个字符都对应一个下标(索引),我们可以通过索引值去获取固定的字符: 字符串[索引值]
# 'abc' --> a:0, b:1, c:2
str1 = 'abc'
print(str1[0]) # a
print(str1[2]) # c
str2 = "dy\nup"
print(str2[4])
# 下标的范围:0 ~ 字符串长度-1; -1 ~ -字符串长度
# 获取字符的时候,索引值不能操作索引的范围,否则会报IndexError
2.3.获取字符串中大部分字符(切片)
字符串[开始下标:结束下标] --> 获取字符串中从开始下标到结束下标的字符(包含开始下标对应的字符,不包含结束下标对应的字符)
字符串[开始下标:结束下标:步进]
字符串[开始下标:结束下标] === 字符串[开始下标:结束下标:1]
3.字符串运算符
3.1.字符串拼接:+
# 字符串1+字符串2
str1 = 'hello' +' '+'Python'
print(str1)
# 注意: + 号两边要么都是数字,要么都是字符串。不能是一个数字一个字符串
# print(12+'34')
3.2.让字符串重复:*
# 字符串*整数
str1 = 'abc' * 3
print(str1)
3.3.判断字符串1在不在字符串2中:in和not in
# 字符串1 in 字符串2 : 判断字符串1是否在字符串2中 --> 在就是True,不在是Fasle
result = 'aa' in 'abaaac'
print(result)
# 字符串1 not in 字符串2 : 判断字符串1是否不在字符串2中 --> 不在就是True,在是False
result = '123' not in 'abc'
print(result)
3.4.格式字符串
# 格式: '占位符1占位符2'%(值1,值2)
str1 = 'abc%s12%s3' % ('>>>','!!!')
print(str1)
# %s --> 字符串占位符(格式符)
# %d --> 整数占位符(格式符)
# %f --> 浮点数占位符
# %c --> 长度是1的字符串占位符(字符占位符)---可以给一个字符,也可以给字符的编码值
3.5.格式化输出
name = '路飞'
age = 17
# xx今年xx岁
print('%s今年%d岁' % (name, age))
print('%x' % (id(name)))
4.字符串相关方法
1.capitalize:将字符串的首字母转换成大写字母,并且创建一个新的字符串返回
str1 = 'abc'
new_str = str1.capitalize()
print(str1, new_str)
2.center(width, fillchar): 将原字符串变成指定的长度并且内容居中,剩下的部分使用指定的字符填充
3.rjust(width, fillchar): 右对齐
4.ljust(width, fillchar): 左对齐
5.字符串1.join(字符串2): 在字符串2中的每个字符之间插入一个字符串1