Python程序中字符串的使用
- 一.字符串的概念
- (1).概念:
- (2).字符串的本质:字符序列
- 二.字符串的编码
- (1).python3中直接支持Unicode编码(可表示世界上任何书面语言的字符)
- (2).python3中字符默认就是16位Unicode编码。
- (3).ASCII编码是Unicode编码的子集。
- 三.创建字符串
- (1).单引号,双引号
- (2).连续三个单引号或双引号
- (3).空字符串
- 四.字符串的拼接
- (1).可以使用+将多个字符串拼接起来
- 四.字符串的复制
- (1).使用*可实现字符串复制
- 五.提取字符串
- 1.使用[ ]提取字符串
- (1).正向搜索:最左侧第一个字符,偏移量0,直到len( )-1
- (2).反向搜索:最右侧第一个字符,偏移量-1,直到-len( )
- 2.字符串切片slice操作
- (1).快速提取字符串
- 其他操作(三个量为负数时)
- 必要口诀:包头不包尾(包含头部不包含尾部)
- 六.字符串的替换
- (1).使用replace( )函数可实现字符串的替换
- 图片解释:
- 七.分割,合并字符串
- (1).split( )函数将字符串分割成多个子字符串。
- (2).join( )将一系列子字符串合并起来
- 八.字符串驻留机制
- 九.成员操作符
- (1). in/not in 关键字,判断某个字符(子字符串)是否存在字符串中
一.字符串的概念
(1).概念:
在Python中,字符串是由零个或多个字符组成的有限序列,可以使用单引号(‘)、双引号(")、三引号(’''或”””)来定义。
(2).字符串的本质:字符序列
【注】:在python中字符串不可变,无法对原字符串进行任何修改。
【注】:python不支持单字符类型(单字符类型也是字符串)
二.字符串的编码
(1).python3中直接支持Unicode编码(可表示世界上任何书面语言的字符)
(2).python3中字符默认就是16位Unicode编码。
(3).ASCII编码是Unicode编码的子集。
【注】:ord( )表示把字符转换为对应的Unicode编码。(不是字符串)
例:
a="b"
print(ord(a))
执行结果:
【注】:chr( )表示把十进制转换成对应的字符。
例:
a=120
print(chr(a))
执行结果:
三.创建字符串
(1).单引号,双引号
优点:可创建本身就包含引号的字符串,不用使用转义字符。
例:
print("I‘m cosfirst")
print('"to be or not to be"')
执行结果:
(2).连续三个单引号或双引号
优点:可创建多行字符串
例:
a='''人可以走向天堂,不可以走到天堂。走向,意味着彼岸的成立。
走到,岂非彼岸的消失?彼岸的消失即信仰的终结、拯救的放弃。因而天堂不是一处空间,
不是一种物质性存在,而是道路,是精神的恒途。'''
print(a)
执行结果:
(3).空字符串
在Python中,空字符串是一个特殊的字符串,它没有任何字符。字符串长度为0。
【注】:len( )函数可以计算字符串含有多少个字符。
例:
a="123"
print(len(a))
执行结果:
四.字符串的拼接
(1).可以使用+将多个字符串拼接起来
【注】:如果+两边都是字符串,则拼接。
【注】: 如果+两边都是数字,则加法运算。
【注】: 如果+两边类型不同,则报错。
例:
print("无限"+"超越")
print(123+456)
print("123"+4456)
【注】:代码执行第三个print时会报错,
执行结果:
四.字符串的复制
(1).使用*可实现字符串复制
例:
print(3*"无限超越自我cosfirst ")
执行结果:
五.提取字符串
1.使用[ ]提取字符串
(1).正向搜索:最左侧第一个字符,偏移量0,直到len( )-1
(2).反向搜索:最右侧第一个字符,偏移量-1,直到-len( )
2.字符串切片slice操作
(1).快速提取字符串
格式:[起始偏移量start:终止偏移量end:步长step]
操作:
- [:] 提取整个字符串
- [start:] 从start索引开始直到结尾
- [:end] 从头开始直到end-1
- [start:end] 从start开始直到end-1
- [start: end:step] 从start开始提取到end-1,步长为step
【注】:索引时从0开始
例:
a="abcdefghi"
print(a[:])
print(a[2:])
print(a[:2])
print(a[2:4])
print(a[1:5:2])
执行结果:
其他操作(三个量为负数时)
例:
a="abcdefghijklmnopqrstuvwxyz"
print(a[-3:])
print(a[-5:-1])
print(a[-1:-7:-2])
print(a[::-1])
执行结果:
必要口诀:包头不包尾(包含头部不包含尾部)
六.字符串的替换
(1).使用replace( )函数可实现字符串的替换
解释原理:前面我们说过在python中字符串是不可改变的,replace函数实现字符串的替换实际上是创建了新的字符串,而原来的字符串是不变的。
例:
a="abcdefghijklmnopqrstuvwxyz"
print(a)
a=a.replace('d','越')
print(a)
执行结果:
图片解释:
七.分割,合并字符串
(1).split( )函数将字符串分割成多个子字符串。
例:
a="to be or not to be"
a.split("be")
print(a.split("be"))
执行结果:
(2).join( )将一系列子字符串合并起来
例:
a=['cos','cos100','cos200']
print('@'.join(a))
执行结果:
八.字符串驻留机制
定义:仅保存一份相同且不可变的方法,不同的值被存放在字符串驻留池里。Python支持字符串驻留机制,对符合标识符规则的字符串(仅包含下划线(_),字母和数字)会启用字符串驻留机制。
例:
a = "abc_123"
b = "abc_123"
print(a is b)
c = "cc###"
d = "cc###"
print(c is d)
执行结果:
九.成员操作符
(1). in/not in 关键字,判断某个字符(子字符串)是否存在字符串中
例:
a="无限超越自我"
print("无限" in a)
print("未来" not in a)
print("无限" not in a)
执行结果: