python教程_小白入门/2020/7/28
学习目标
文章目录
P58 for····else语句的使用
进阶题:
1.统计101-200中素数的个数,并且输出所有的素数(素数又叫质数,就是只能被它自己和1整除的数)
for…else: 当循环里的break没有被执行的时候,就会执行else的语句,for else看作是一整个循环,break跳出的时候,for 和 else 都跳出,break不执行的时候,代码按照从上到下再执行else
1既不是质数,也不是合数,2是质数,3是质数
count = 0
for i in range(101 , 201):
for j in range(2 , int(i ** 0.5)):
if i % j == 0:
# print(i , '是合数')
break # break 放在哪个循环里,结束的就是哪个循环
else:
# for else 语句,当循环里的break没有被执行的时候,就会执行else
count += 1
print(i , '是质数')
print('质数的个数为:' , count)
P59 使用假设成立法求质数
# 2 -101
for i in range(2 , 101):
flag = True # 假设每次的 i 都是一个质数
for j in range(2 , int(i ** 0.5) + 1):
if i % j == 0:
# 除尽了,表示是一个合数,那flag 的值就要发生改变
flag = False
break
if flag:
print(i)
# 以i = 9为例子,j in range (2,3)是不包括3 的,也就是9只能除2,除不尽,就判断了9是质数
P60 使用计数法求质数
for i in range(2 , 101):
count = 0 # 假设这个数能被0个数字整除
for j in range(2 , i):
if i % j == 0:
# 除尽了,是合数
count += 1
if count == 0:
print(i , '是一个质数')
else:
print(i , '是一个合数,它能被' , count , '个数整除')
P61 求斐波那契数列
斐波那契数列:1,1,2,3,5,8,13,21,34·····后边的数是前两个数的和
求斐波那契数列中第n的数的值
# 斐波那契数列
num1 = 1
num2 = 1
n = int(input('请输入n的值(n > 2):'))