知识回顾
1、默认情况下,input函数接收的数据是字符串类型。
2、字符串类型的关键词是str。
3、\n和\t都是转义字符,\n用来换行,\t用来留出一段固定长度的空白。
4、type函数能够用来查看变量的数据类型
5、数据类型的转换,举个例子
x_str='3.14'
print(x_str)
y_int=float(x_str)
print(y_int)
第一个是字符型、第二个是浮点类型。
6、有字符串 'a good student',如何取出其中的good字符串
s='a good student'
print(s[2:6])
一、字符串的操作函数
通过索引可以取出字符串当中的某些内容,除了取得字符串中的内容之外,是否还能够对字符串做其它操作呢?
如果某个字符串s1在另一个字符串s2中出现过,那么我们称s1是s2的子串。
a good student-子串-good
1.字符串操作函数之len
Xiaotuzi 和 Maotouying 谁的名字的拼写长度比较长?
要测量某个字符串的长度,可以使用len函数
Xiaotuzi长度为8
Maotouying长度为10
Maotouying 名字的拼写长度比Xiaotuzi名字的拼写长度长。
2.len函数的使用方式:len(参数)
如果参数是字符串, 那么该函数会返回字符串的长度
练习:
编程实现求出'Xiaotuzi' 和 'Maotouying' 两个名字的长度
name1='Xiaotuzi'
name2='Maotouying'
print(len(name1))
print(len(name2))
3.字符串操作函数之find
- I am a good student
- 怎么判断这段话中是否含有good这个单词?
- 要查找个字符串是否是另一个字符串的子串,可以使用find函数
- good 是 I am a good student的一个子串。
(1).find函数的使用方式:字符串.find(参数)
find函数可以查找字符串中是否含有某个子串, 如果有,则返回第一个子串的位置, 否则返回-1,此处的参数可以是要查找的子串。
编程实现判断'good'是否为'I am a good student'的子串
I | a | m | a | g | o | o | d | s | t | u | d | e | n | t | ||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |
第一次出现子串的位置:7
s='I am a good student'
t='good'
print(s.find(t))
(2).I am a good student
怎么判断这段话中是否含有bad这个单词呢?
s='I am a good student'
t='bad'
print(s.find(t))
4.字符串操作函数之replace
I do not like Python
怎么把这段话中的do not替换成really这个单词?
要将字符串中的子串替换成另一个字符串,可以使用replace函数
I do not like Python
替换do not 为 really
I really like Python
替换后的字符串为'I really like Python'。
4.1、replace函数的使用方式: 字符串.replace(参数1,参数2)
replace函数可以将字符串中的子串替换成另一个字符串,其中参数1是要被替换的子串,参数2是新的要替换子串的字符串。 它的返回值是子串被替换后的新的字符串。
s='I do not like Python'
print(s.replace('do not','really'))
5.字符串操作函数之strip
' happy day '
怎么把这段话中的前后空白部分给去掉?
- 要去掉一个字符串的前后空白部分,可以使用strip函数
- 空白部分 happy day 空白部分
- 去掉空白部分
- 替换后的字符串为'happy day'。
5.1、strip函数的使用方式:字符串.strip( )
strip函数可以将字符串中的前后空白部分去掉,此处没有参数。 它的返回值是字符串被去掉前后空白部分后的新的字符串
s=' happy day '
print(s.strip())
二、字符串的格式化输出
如何把变量按照一定的格式输出?
比如 a = 3, 输出:'变量的值是:3'
这就需要用到 格式化符号来实现 格式化输出!
1.什么是格式化?
格式化:按照一定的格式把字符串进行输出
在Python中,可以在字符串中添加格式化符号,使用运算符%来实现格式化输出,常用的格式化符号有:%d、%f 、%s
1.1字符串的格式化输出 - %d
%d是整数格式化符号,可以将字符串中对应的部分替换成整型变量a的值
a=3
print('变量的值是:%d' %a)
格式化符号 一定要和变量 配合使用吗?
答:不一定, 可以不用和变量配合使用
print('I am %d years old'%9)
有时我们需要特定的格式。
%03d、%3d、%-3d, 可以让数字占3个空格。
%03d :如果不足3位,左边用0补齐
%3d :如果不足3位,左边用空格补齐
%-3d:如果不足3位,右边用空格补齐
print('%03d'%6)
print('%3d'%6)
print('%-3d'%6)
2.字符串的格式化输出 - %f
%f是浮点数格式化符号,可以将字符串中对应的部分替换成浮点数
print('pi=%f'%3.1415926)
如果需要特定格式, %.2f 可以保留小数点后2位
%6.2f 可以保留小数点后2位,同时让结果占6个格,左边用空格补齐
print('pi=%.2f'%3.1415926)
print('pi=%6.2f'%3.1415926)
刚刚介绍了保留小数点后若干位输出的一种方法,实际上,还有另外一种方法也可以用来控制小数点位数的输出。
3.字符串的格式化输出 - %s
%s是字符串的格式化符号,可以将字符串中对应的部分替换为字符串
print('I am a %s'%'boy')
4.字符串的格式化输出
字符串中可以使用多个格式化符号
print('My name is %s,and I am %s years old'%('Tom',10))
练习:
1.打印一份乘法表:
print('%4d * %d =%d'%(1,1,1))
print('%4d * %d =%d'%(1,2,2),end='')
print('%4d * %d =%d'%(2,2,4))
print('%4d * %d =%d'%(1,3,3),end='')
print('%4d * %d =%d'%(2,3,6),end='')
print('%4d * %d =%d'%(3,3,9))
练习02:
军队拦截了一条敌军发送的密码信息,内容是:
password = 'C++ is the best computer programming language in the world.'
请对这个字符串做以下处理:
- 输出密码的长度
- 判断这个字符串是否包含 ‘programming’ 这部分内容,如果有输出它在字符串中第一次出现的位置,如果没有这部分内容,输出-1
- 把'C++'这部分内容替换为'Python'
password='C++ is the best computer programming language in the world'
print(len(password))
print(password.find('programming'))
print(password.replace('C++','Python'))
总结:
- 字符串常用操作函数
- 格式化占位符
- 保留小数位数输出
所有代码
x_str='3.14'
print(x_str)
y_int=float(x_str)
print(y_int)
s='a good student'
print(s[2:6])
name1='Xiaotuzi'
name2='Maotouying'
print(len(name1))
print(len(name2))
s='I am a good student'
t='bad'
print(s.find(t))
s='I do not like Python'
print(s.replace('do not','really'))
s=' happy day '
print(s)
print(s.strip())
a=3
print('变量的值是:%d' %a)
print('I am %d years old'%9)
print('%03d'%6)
print('%3d'%6)
print('%-3d'%6)
print('pi=%f'%3.1415926)
print('pi=%.2f'%3.1415926)
print('pi=%6.2f'%3.1415926)
pi='3.1415926'
k=4
print('%.*f' %(k,pi))
print('I am a %s'%'boy')
print('My name is %s,and I am %s years old'%('Tom',10))
print('%4d * %d =%d'%(1,1,1))
print('%4d * %d =%d'%(1,2,2),end='')
print('%4d * %d =%d'%(2,2,4))
print('%4d * %d =%d'%(1,3,3),end='')
print('%4d * %d =%d'%(2,3,6),end='')
print('%4d * %d =%d'%(3,3,9))
password='C++ is the best computer programming language in the world'
print(len(password))
print(password.find('programming'))
print(password.replace('C++','Python'))
“学而不思则罔,思而不学则殆。”
这句话强调了学习与思考相结合的重要性,只有将学习和思考相互配合,才能真正理解知识、掌握学问,避免陷入迷茫或陷入空想。
感谢大家支持!