版权声明:转载请声明 https://blog.csdn.net/dirckes8813/article/details/83818292
字符串Str
字符串的 索引,切片
- 索引
- 取出一个字符
- 切片:
- 取出一些字符重新组成字符串
- 索引的语法:
- 字符串[整数表达式]
- 切片的语法:
- 字符串[开始索引:结束索引:步长]
函数:
-
chr(整数) # 转为字符串(只包含一个字符)
-
ord(一个字符) # 转为整数编码值
-
bin(i) # 二进制
-
oct(i) # 八进制
-
hex(i) # 十六进制
-
str(obj) 将对象转为字符串
字符串常用的方法:
S.isdigit()
S.isalpha()
S.islower()
S.isupper()
S.isspace()
S.center(width, fill=' ')
S.count(sub, start, end)
S.find(...)
S.strip([char]) / S.lstrip() S.rstrip()
S.upper() / S.lower()
S.replace(old, new)
S.startswith(字符串) / S.endswith(字符串)
字符串的格式化表达式
"姓名: %s, 姓别:%s, 年龄:%d" % ("小张", "男",20)
常用的占位符和类型码:
%s
%d
%f %7.2f %-7.2f %+7.2f %07.2f
while 语句 (循环语句)
- 语法:
- while 真值表达式:
- 可能重复执行的语句块
- else:
- 语句块2
- while 真值表达式:
练习:
1. 输入一个整数n代表结束的数值,求下列表达式的和
1 + 2 + 3 + 4 + .... + (n-1) + n的和
如:
请输入: 100
打印:
5050
while语句的注意事项:
1. 要控制循环的真值表达式的值来防止死循环
2. 通常用真值表达式内的循环变量来控制循环条件
3. 通常在语句内部改变循环变量
while 语句嵌套:
- while 语句本身就是语句,和其它语句一样,可以嵌套到
任何的复合语句中
示意:
while 真值表达式:
....
while 真值表达式2:
....
else:
...
...
else:
...
练习:
输入一个整数n,打印指定宽度的正方形
如:
请输入: 5
打印:
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
如:
请输入: 3
打印:
1 2 3
1 2 3
1 2 3
break 语句
- 问题:
- 如果在循环过程中不想再继续循环语句的执行了,怎么办?
作用:
- 用于循环语句(while,for语句)中,用来终止当前循环语句的执行.
说明:
- 当break语句执行后,此循环语句break之后的语句将不再执行
- break 语句通常和if语句组合使用
- break 语句终止循环时,循环语句的else子句的语句不会执行
- break 语句只能终止当前循环语句的执行,如果有循环嵌套时,不会跳出嵌套的外重循环
- break语句只能在循环语句(while,for语句)的内部使用
死循环
- 死循环是指循环条件一直成立的循环
- 死循环能通常用break语句来终止循环
- 死循环的else子句永远不会执行
循环语句:
- while语句
- for语句
for语句
- 作用:
- 用来遍历可迭代对象的数据元素
- 可迭代对象是指能依次获取数据元素的对象
- 用来遍历可迭代对象的数据元素
如:
- 字符串,列表,元组,range函数返回的对象等
语法:
for 变量列表 in 可迭代对象:
语句块1(此处是可能重复执行的语句块)
else:
语句块2
说明:
- 当在循环体内用break终止循环时,else子句部分的语
句不会执行 - else子句部分可以省略
练习:
任意输入一段字符串
1) 计算出字符串中空格的个数
2) 计算出字符串中中文字符的个数
(注: 中文 字符的编码值一定大于128,可用ord判断)
range() 函数:
- range(stop) 用来生成0~stop区间内的整数,直到stop为
止(不包含stop) - range(start, stop[,step]) 用来生成start~stop区
间内的整数,直到stop为止(不包含stop),
每个整数间隔step
作用:
- 用来创建一个生成一系列整数的可迭代对象(也叫整数序列
生成器)
示意:
range(4) 生成 0, 1, 2, 3
range(3, 6) 生成 3, 4, 5
range(1, 10, 2) 生成 1, 3, 5, 7, 9
range(5, 0, -1) 生成 5, 4, 3, 2, 1
range(5, 0, -2) 生成 5, 3, 1
range(4, 0) 生成 空
练习:
-
打印 1 ~ 20的整数,打印在一行(用for语句实现)
-
计算 1 + 2 + 3 + 4 + … + 99 + 100的和
(用for和range实现) -
计算 1 + 3 + 5 + 7 + … + 97 + 99的和
(用for语句实现)
for语句嵌套:
- 示例:
- for x in “ABC”:
- for y in “123”:
- print(x + y)
- for y in “123”:
- for x in “ABC”:
continue 语句
问题:
- 如何让程序不再向下执行,重新开始一次新的循环?
作用:
- 用于循环语句(while,for)中,不再执行本次循环内
- continue之后的语句,重新开始一次新的循环
说明:
1. 在while语句中执行continue语句,将会直接跳转到
while语句的真值表达式处,重新判断循环条件
2. 在for语句中执行continue语句,将会从可迭代对象
中取下一个数据绑定变量后再次进行循环
练习:
求:1 ~ 100之间所有不能被 2, 3, 5, 7整除的数的和
循环总结:
while 语句
for 语句
字符串str
range() 函数返回的对象
break 语句
continue 语句
问题:
- 容器
- 如何将计算机运算的数据临时存入一个地方,同时又
方便添加,删除,修改,查看等操作
- 如何将计算机运算的数据临时存入一个地方,同时又
列表 list
- 列表是一种容器
- 列表是可以被改变的序列容器
创建空列表的字面值
- L = [] # L 绑定一个新创建的空列表
创建非空列表的字面值:
- L = [1, 2, 3, 4]
- L = [“北京”, “上海”, “深圳”]
- L = [1, “二”, 3.14, “Four”]
- L = [1, 2, [3.1, 3.2, 3.3], 4]
列表的构造(创建)函数 list
- list() 创建一个空的列表,等同于[]
- list(iterable) 用可迭代对象创建一个列表
示例:- L = list() # L绑定空列表
- L = list(“hello”) #L绑定[‘h’,‘e’,‘l’,‘l’,‘o’]
- L = list(range(10)) # L绑定[0,1,2,3…9]
列表的运算:
- 算术运算符
- += * *=
示例:
-
- 加号用于拼接列表
- x = [1, 2, 3]
- y = [4, 5, 6]
-z = x + y # z = [1, 2, 3, 4, 5, 6] - += 用于原列表与右侧可迭代对象进行拼接,用变量绑定列表
语法:
- x += 可迭代对象
如:
- x = [1, 2, 3]
- y = [4, 5, 6]
- x += y # x绑定[1, 2, 3, 4, 5, 6]
生成重复的列表
- = 让原列表重复n次再用原变量绑定
- x = [1, 2] * 3 # x =[1, 2, 1, 2, 1, 2]
- x = [1, 2]
- x *= 2 # x = [1, 2, 1, 2]
练习:
1.输入一个整数n,此整数代表三角形的直角边长
根据整数n打印如下四种三角形
请输入: 3
打印如下:
1)
*
**
***
2)
*
**
***
3)
***
**
*
4)
***
**
*
2. 写一个程序,任意输入一个整数,判断这个整数是否是素数(prime)
素数(也叫质数), 只能被1和自身整除的正整数
如: 2 3 5 7 11 13 17 19
提示:
用排除法,当判断x是否为素数时,只要让x分别除以
2, 3, 4, ... x-1 ,只要有一个能整除,则x不是
素数,否则x是素数
3. 输入一个正整数代表正方形的宽和高,打印如下正方形
如
请输入: 5
打印:
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9
如
请输入: 3
打印:
1 2 3
2 3 4
3 4 5