【Python从入门到实战100天】04. 循环结构(保姆级图文+实现代码)
目录
- 三种循环方式
-
- 1. for-in循环
- 2. while循环
- 3. enumerate循环(补充原作者)
- 实战题目
欢迎关注 『Python从入门到实战100天』 系列,持续更新中
欢迎关注 『Python从入门到实战100天』 系列,持续更新中
三种循环方式
1. for-in循环
- 基本格式
sum = 0for x in range(101): sum += xprint(sum)
- 用for循环实现1~100之间的偶数求和
使用range实现
sum = 0for x in range(2, 101, 2): sum += xprint(sum)
使用if判断实现
sum = 0for x in range(1, 101): if x % 2 == 0: sum += xprint(sum)
2. while循环
- 猜数字游戏
计算机出一个1~100之间的随机数由人来猜
计算机根据人猜的数字分别给出提示大一点/小一点/猜对了
import randomanswer = random.randint(1, 100)counter = 0while True: counter += 1 number = int(input('请输入: ')) if number < answer: print('大一点') elif number > answer: print('小一点') else: print('恭喜你猜对了!') breakprint('你总共猜了%d次' % counter)if counter > 7: print('你的智商余额明显不足')
3. enumerate循环(补充原作者)
优点在于可以同时输出索引值和内容。
#真正的python资深程序员才会用的写法3(让我们装X)letters=("a","b","c")#定义tuple元组#其实就是这里的letters可以直接表示写法2中的letters[i],总归是简便一点,主要是专业!print("#"*10+"真正的python资深程序员才会用的写法3"+"#"*10)for i,letter in enumerate(letters): print(i,letter)
实战题目
1. 输入一个数判断是不是素数
from math import sqrtnum = int(input('请输入一个正整数: '))end = int(sqrt(num))is_prime = Truefor x in range(2, end + 1): if num % x == 0: is_prime = False breakif is_prime and num != 1: print('%d是素数' % num)else: print('%d不是素数' % num)
2. 输入两个正整数,计算最大公约数和最小公倍数。
x = int(input('x = '))y = int(input('y = '))if x > y: x, y = y, xfor factor in range(x, 0, -1): if x % factor == 0 and y % factor == 0: print('%d和%d的最大公约数是%d' % (x, y, factor)) print('%d和%d的最小公倍数是%d' % (x, y, x * y // factor)) break
3. 打印三角形图案
row = int(input('请输入行数: '))for i in range(row): for _ in range(i + 1): print('*', end='') print()for i in range(row): for j in range(row): if j < row - i - 1: print(' ', end='') else: print('*', end='') print()for i in range(row): for _ in range(row - i - 1): print(' ', end='') for _ in range(2 * i + 1): print('*', end='') print()
总结
大家喜欢的话,给个👍,点个关注!给大家分享更多有趣好玩的Python学习笔记!
本专栏系列内容基于开源项目jackfrued-Python-100-Days
欢迎关注 『Python从入门到实战100天』 系列,持续更新中
欢迎关注 『Python从入门到实战100天』 系列,持续更新中【更多内容敬请期待】