range()
- 作用:用于生成一个整数序列
- 创建方式:
1、range(stop):创建一个(0,stop)之间的整数序列,步长为1;
2、range(start,stop):创建一个(start,stop)之间的整数序列,步长为1;
3、range(star,stop,step):创建一个(start,stop)之间的整数序列,步长为step; - 返回值是一个迭代器对象
代码:
a=range(5)
print(a)
输出:range(0, 5)
如果想要看到其中的值:print(list(a)) 输出:[0, 1, 2, 3, 4]
-
in 与not in判断整数序列中是否存在(不存在)指定的整数
代码:print(10 in a) 输出:False -
range()函数优点:不管range对象表示的整数序列有多长,所有对象占用的内存空间都是相同的,因为只需要存储start,stop,step;只有当永奥range对象时,才会计算序列中的相关元素。
循环结构
- while
- for-in
while循环
1、结构:
- while 条件表达式:
执行体
2、四步循环法:
- 初始化变量
- 条件判断
- 条件执行体(循环体)
- 改变变量
for-in循环
- 语法结构:
for 自定义的变量 in 可迭代对象:
循环体
代码:
for item in 'python':
print(item)
#第一次取出来的P,将P赋值给item,将item的值输出
输出:
p
y
t
h
o
n
如果在循环体中不需要使用到自定义变量,可自定义变量写为“—”(下划线)
例:for _ in range(5)
print(‘hello’)
代码:
'''输出100到999之间的水仙花数
举例:
153=3**3+5**3+1**3'''
for i in range(100,1000):
a=i//100
b=i//10%10
c=i%10
if i==a**3+b**3+c**3:
print(i)
流程控制语句break
- 用于结束循环结构,通常与分支结构if一起使用
代码:
‘’‘从键盘录入密码,最多录入3次,如果正确就结束’‘’
for item in range(3):
pwd=input('请输入密码')
if pwd=='8888':
print('密码正确')
break
else:
print('密码不正确')
流程控制语句continue
用于结束当前循环,进入下一次循环,通常与分支结构中的if一起使用
代码:
'''输出到150之间所有5的倍数,使用continue'''
for i in range(1,51):
if i%5!=0:
continue
else:
print(i)
else 语句
搭配:
- if…else…(条件表达式不成立时执行else)
- while…else…(循环正常结束没有遇到break时执行else)
- for…else…(循环正常结束没有遇到break时执行else)
嵌套循环
例子1:
'''输出3行4列的矩形'''
for i in range(1,4):
for j in range(1,5):
print('*',end='\t')
print()
例子2:
'''输出9*9乘法表'''
for i in range(1,10):
for j in range(1,i+1):
print(i,'*',j,'=',i*j,end='\t')
print()
二重循环中的break和continue用于控制本层循环
-------杨淑娟老师讲Python,笔记记录-----------