是学python的第四天哇

学习目标

循环结构的应用场景 - 条件 / 缩进 / 代码块 / 流程图
while循环 - 基本结构 / break语句 / continue语句
for循环 - 基本结构 / range类型 / 循环中的分支结构 / 嵌套的循环 / 提前结束程序
应用案例 - 1~100求和 / 判断素数 / 猜数字游戏 / 打印九九表 / 打印三角形图案 / 猴子吃桃 / 百钱百鸡
感谢骆老师的第四天(循环结构)

1.关于使用for-in循环
明确的知道循环的次数,或者要对一个容器进行迭代
  • 计算从0加到一百
sum = 0
for x in range(101)
    sum += x
print(sum)

需要注意的是上面函数中range类型,它是一个用来产生不变的整数值序列的函数,且多于循环中来枚举

  • range(101),生成0-100整数序列
  • range(1,101),产生1-100整数序列
  • range(1,100,2),可以产生1到99的奇数序列,2为每一步的增量
2.关于使用while和do-while循环
在不知道具体的循环次数的情况下,使用while循环(当表达式的值为false时结束),而在至少循环一次的情况下使用do-while循环
  • while循环例子(猜数游戏)
from random import randint # 从包中导入我们需要的函数
x = randint(1,100)
a = int(input('输入你猜测的值 x = '))
while(x != a):
    if x > a:
        print('比%d要大喔' % a)
    else:
        print('比%d要小喔' % a)
    a = int(input('再试一次!加油!x = '))
print('恭喜你成功猜出来啦!正确答案是%d' % x)
在循环中break将会提前结束整个当前的循环体,而continue则只会结束当前轮的循环,进入下一轮循环,适当的使用break和continue语句对于程序的时间复杂度降低是很有帮助的

练习

  • for-in循环打印乘法口诀
  for i in range(1,10):
        for j in range(1,i+1):
            print('%d * %d = %d' % (j,i,i*j),end ='\t') # end = '\t',表示在循环打印结束末尾加上‘\t'
        print()  # line breaks


  • 判断素数(采用sqrt函数和break,降低复杂度)
from math import sqrt
number = int(input('输入一个数 = '))
end = int(sqrt(number))
i = 0
flag = True
print(end)
for i in range(2,end + 1):
    if number % i == 0:
        flag = False
        break;
if flag and number != 1:
    print('是素数')
else:
    print('不是素数')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值