字符串的认识
python中字符串的元素
1.阻义字符
在字符串的最前面可以添加r/R来阻止字符串中的转义字符转义
str1 = r'how are you\n fine'
str1 = R'\t你好吗?'
print(str1)
2.python中可以把字符串看成是一个序列(容器),容器中内容是字符。
每一个字符可以称为字符串中的元素
字符串是一个不可变的序列,有序(不可变指的字符串中的每个字符,以及每个字符的位置不可变)
3.获取字符串中的单个字符
语法:字符串(下标) --->根据下标获取字符串中的字符
说明:
a.字符串:可以是字符串的变量,也可以是字符串值
b.[]:固定写法
c.下标:0字符串长度-1;-1-长度
注意:下标是整数;下标不能越界
python中每个字符串中字符都会对应一个下标,下标是根据字符在字符串中的位置,从前往后一次增加的(第一个值是0)
![](https://img.haomeiwen.com/i14187468/7d46f43585c8eba5.png)
练习:
注意:一个空格算一个字符,一个转义字符算一个字符,一个制表符也是一个字符
![](https://img.haomeiwen.com/i14187468/6a568855e5cad04b.png)
4.获取字符串的部分字符(切片)
a
语法:字符串[起始下标:结束下标]-->获取字符串中起始下标开始,到结束下标前所有的字符
默认步长为1
注意:起始下标对应的字符要在结束下标对应的字符的前面,否者取不到
![](https://img.haomeiwen.com/i14187468/ddf3ff9a2523c263.png)
b.
语法:字符串[起始下标:结束下标:步长] -->起始下标开始获取,每步长获取一个,获取到结束下标前为止
步长为正:从前往后取
步长为负:从后往前取
![](https://img.haomeiwen.com/i14187468/251ddc319b5dcf18.png)
c.
切片时下标可以省略,省略不同的下标有不同的意义
省略起始下标:字符串[:结束下标]----> 从开头开始取(注意
![](https://img.haomeiwen.com/i14187468/4d64e139f49a2996.png)
省略结束下标:字符[起始下标:]--->从开始下标取,取完为止
![](https://img.haomeiwen.com/i14187468/818061aa5aeef52d.png)
两个下标都省:字符[:]---->全部取完
![](https://img.haomeiwen.com/i14187468/2fd0147a1002b530.png)
python中字符串的运算符
![](https://img.haomeiwen.com/i14187468/f1aafe33894d8c2f.png)
python中的字符串支持 + * 和比较运算符
1.字符串的+号运算符
字符串1 + 字符串2 ----->将字符串1何字符串2相连
注意:+两边要么都是数字,要么都是字符串,不能一样一个
![](https://img.haomeiwen.com/i14187468/ce189a390171c57d.png)
2.*(乘)
字符串1 * n --->字符串1重复n次,产生一个新的字符串
n必须为整数
![](https://img.haomeiwen.com/i14187468/e3fb60494c837709.png)
先算乘再算加
![](https://img.haomeiwen.com/i14187468/805ad9f8e2f29304.png)
3.比较运算符
判断相等
例如:
![](https://img.haomeiwen.com/i14187468/00c2f1142203c904.png)
字符串比较大小:比较两个字符串中从前往后每个字符的编码值的大小,比较到两个字符不相同为止
例如:
![](https://img.haomeiwen.com/i14187468/798c6444b4ebcbe2.png)
判断一个字符是否为数字字符,判断一个字符是否是字母字符
例如:
![](https://img.haomeiwen.com/i14187468/fdf957c4b6654838.png)
4.in和not in
字符串1 in 字符串2 -> 判断字符串1是否在字符串2中(字符串2中是否包含字符串1),结果是布尔值
例如:
![](https://img.haomeiwen.com/i14187468/33a3c3997f038bb1.png)
5.len()函数
len是python内置函数,,功能是用来获取序列的长度(容器中的个数)
len(序列)
字符串的长度就是字符串中字符的个数
![](https://img.haomeiwen.com/i14187468/ac0ef4564bb14d36.png)
python中格式字符串
格式字符串
![](https://img.haomeiwen.com/i14187468/72353a3ab7435337.png)
字符串的内部,通过格式占位符来表示字符串中变化的部分,然后在后面用值来填充变化的部分
语法:带占位的字符串 % (给占位符赋值的值)
注意:前面有多少个占位符,后边()中就必须有多少值,并且值的个数和值的类型要和前面的占位符一一对应
%s -->字符串
%d -->整数
%f ———>小数
%。nf --->保留小数点后n位小数(五舍六入)
%c--> 字符
![](https://img.haomeiwen.com/i14187468/ca46f36018b1c224.png)
python字符串中内置函数
![](https://img.haomeiwen.com/i14187468/b805766dbcd42eed.png)
![](https://img.haomeiwen.com/i14187468/da88f5d12d16bfed.png)
![](https://img.haomeiwen.com/i14187468/6fb57fc182595c4f.png)
python内部给我们提供很多字符相关的方法,使用方法:字符串.方法名(参数)
1.capitalize():将字符的第一个字符转换为大写,返回一个新的字符串
如果第一个字符不是字母,就不转换
![](https://img.haomeiwen.com/i14187468/3b3490b10d53c528.png)
字符串对齐
a.center(width,fillchar)
b.ljust(width,fillchar)
c.rjust(width,fillchar)
width -->长度,新的字符串的总长度 fillchar-->剩下部分填充的字符,字符就是长度1的字符
例如;
![](https://img.haomeiwen.com/i14187468/7432513ec125981a.png)
3.字符串1.count(字符串2)--->统计字符串1中字符串2的个数
例如:![](https://img.haomeiwen.com/i14187468/8a66df2678844e1f.png)
4.字符串1.endswith(字符串2) ---->判断字符串1是否以字符串2结尾
例如:![](https://img.haomeiwen.com/i14187468/e96ee8e1e441eceb.png)
5.字符串1.find(字符串2) -->在字符串1中查到字符串2,返回第一个开始下标,如果没有就返回-1
例如:![](https://img.haomeiwen.com/i14187468/7118b0252208f245.png)
6.isnummeric()
print('一二五七九'.isnumeric())
print('二百五'.isnumeric())
7.isTitle()
标题化;每个单词字母首个大写,其余小写
print('The One'.istitle())
8.字符串1.join(字符串2)--->将字符串1插入到字符串2中每个字符之间,产生新的字符串
print('aaa'.join('jok')) python内部给我们提供很多字符相关的方法,使用方法:字符串.方法名(参数)
1.capitalize():将字符的第一个字符转换为大写,返回一个新的字符串
如果第一个字符不是字母,就不转换
str1 = 'love'
new_str = str1.capitalize()
print(new_str) #Love
字符串对齐
a.center(width,fillchar)
b.ljust(width,fillchar)
c.rjust(width,fillchar)
width -->长度,新的字符串的总长度 fillchar-->剩下部分填充的字符,字符就是长度1的字符
str2 = 'xxx'
new_str = str2.center(7,'0')
num = 19
new = ('python1807') + (str2('num').rjust(4,0))
print(new)
new = 'py1807' + str(num).rjust(4,'0')
print(new)
3.字符串1.count(字符串2)--->统计字符串1中字符串2的个数
print('aasdasdasdas'.count('sd'))
print('hello world'.count('o'))
4.字符串1.endswith(字符串2) ---->判断字符串1是否以字符串2结尾
str1 = 'when i was'
print(str1.endswith('was'))
5.字符串1.find(字符串2) -->在字符串1中查到字符串2,返回第一个开始下标,如果没有就返回-1
str1 = 'when i was young ,i have a dream'
print(str1.find('was'))
print(str1.find('wasaa'))
print(str1.find('Z'), len(str1)
6.isnummeric()
print('一二五七九'.isnumeric())
print('二百五'.isnumeric())
7.isTitle()
标题化;每个单词字母首个大写,其余小写
print('The One'.istitle())
8.字符串1.join(字符串2)--->将字符串1插入到字符串2中每个字符之间,产生新的字符串
print('aaa'.join('jok')) python中字符串中内置函数# python内部给我们提供很多字符相关的方法,使用方法:字符串.方法名(参数)
1.capitalize():将字符的第一个字符转换为大写,返回一个新的字符串
如果第一个字符不是字母,就不转换
str1 = 'love'
new_str = str1.capitalize()
print(new_str) #Love
字符串对齐
a.center(width,fillchar)
b.ljust(width,fillchar)
c.rjust(width,fillchar)
width -->长度,新的字符串的总长度 fillchar-->剩下部分填充的字符,字符就是长度1的字符
str2 = 'xxx'
new_str = str2.center(7,'0')
num = 19
new = ('python1807') + (str2('num').rjust(4,0))
print(new)
new = 'py1807' + str(num).rjust(4,'0')
print(new)
3.字符串1.count(字符串2)--->统计字符串1中字符串2的个数
print('aasdasdasdas'.count('sd'))
print('hello world'.count('o'))
4.字符串1.endswith(字符串2) ---->判断字符串1是否以字符串2结尾
str1 = 'when i was'
print(str1.endswith('was'))
5.字符串1.find(字符串2) -->在字符串1中查到字符串2,返回第一个开始下标,如果没有就返回-1
str1 = 'when i was young ,i have a dream'
print(str1.find('was'))
print(str1.find('wasaa'))
print(str1.find('Z'), len(str1)
6.isnummeric()
print('一二五七九'.isnumeric())
print('二百五'.isnumeric())
7.isTitle()
标题化;每个单词字母首个大写,其余小写
print('The One'.istitle())
8.字符串1.join(字符串2)--->将字符串1插入到字符串2中每个字符之间,产生新的字符串
print('aaa'.join('jok'))
python内部给我们提供很多字符相关的方法,使用方法:字符串.方法名(参数)
1.capitalize():将字符的第一个字符转换为大写,返回一个新的字符串
如果第一个字符不是字母,就不转换
str1 = 'love'
new_str = str1.capitalize()
print(new_str) #Love
字符串对齐
a.center(width,fillchar)
b.ljust(width,fillchar)
c.rjust(width,fillchar)
width -->长度,新的字符串的总长度 fillchar-->剩下部分填充的字符,字符就是长度1的字符
str2 = 'xxx'
new_str = str2.center(7,'0')
num = 19
new = ('python1807') + (str2('num').rjust(4,0))
print(new)
new = 'py1807' + str(num).rjust(4,'0')
print(new)
3.字符串1.count(字符串2)--->统计字符串1中字符串2的个数
print('aasdasdasdas'.count('sd'))
print('hello world'.count('o'))
4.字符串1.endswith(字符串2) ---->判断字符串1是否以字符串2结尾
str1 = 'when i was'
print(str1.endswith('was'))
5.字符串1.find(字符串2) -->在字符串1中查到字符串2,返回第一个开始下标,如果没有就返回-1
str1 = 'when i was young ,i have a dream'
print(str1.find('was'))
print(str1.find('wasaa'))
print(str1.find('Z'), len(str1)
6.isnummeric()
print('一二五七九'.isnumeric())
print('二百五'.isnumeric())
7.isTitle()
标题化;每个单词字母首个大写,其余小写
print('The One'.istitle())
8.字符串1.join(字符串2)--->将字符串1插入到字符串2中每个字符之间,产生新的字符串
print('aaa'.join('jok'))