day 4 - while循环和循环关键字

day 4 - while循环和循环关键字

1 . while 循环

"""
语法:
while 条件语句:
	循环体
说明:
while  -  关键字;固定写法
条件语句  - 和if中的条件语句一样,可以是任何有结果的表达式
          例如:具体数据、已经赋值过的变量、有结果的某种运算的运算表达式等
:       -   固定写法
循环体     -  结构上,和while保持一个缩进的一条或者多条语句;
			逻辑上,需要重复执行的代码

"""

练习1:打印1-100所有的整数

x = 1
while x <= 100:
	print(x)
	x += 1

练习2:打印1-100所有的偶数:2,4,6,8…100

x = 2
while x <= 100:
	print(x)
	x +=2

2 . for循环和while循环的选择

关系:for循环能解决的问题,while循环都可以解决;while循环能解决的问题,for循环

​ 不一定能解决,凡是for循环比起while循环,控制次数更容易

使用建议:能用for循环解决的问题都用for,解决不了的才考虑while。

​ 循环次数确定 - 使用for

​ 循环次数不确定 - 只能使用while

练习1:提示用户不断输入密码,知道输入正确为止

pw = '123'
i_pw = input('请输入密码:')
while pw != i_pw:
	i_pw = input('密码错误,请重新输入密码:')

练习2:猜数字游戏 —— 系统随机产生一个0-100的随机数,用户不断输入数字,

知道输入的数字和随机产生的数字相等,游戏结束,如果猜错了,给出大了或者

小了的提示信息

from random import randint
num = randint(0,100)
num1 = -1
while num != num1:
	num1 = int(input('请输入一个范围内的整数:'))
	if num1 > num:
		print('大了,再小点儿!')
	elif num1 < num:
		print('小了,再大点儿!')
print('恭喜你,猜对了!')

4 . 循环关键字

1 . continue 和 break

continuebreak都只能出现在循环体中。
continue  -  结束一次循环,每次执行循环体的时候,如果遇到continue,直接进入下一次循环
break  -  结束整个循环,在执行循环体的时候,如果遇到了break,那么整个循环直接结束,
          不会进入下一次循环
for x in range(5):
	print(x)
	print('====')
	continue          # 遇到continue,直接进入下一次循环
	print('++++')
x = 0
while x <= 10:
	print(x)
	if x % 2 == 0:
		x += 3in
		continue
	x += 1                  #  0,3,4,7,8
	
"""
x = 0
x = 0 -> x <= 10 ->print(0) -> if 0 % 2 == 0 -> if True -> x += 3 ->continue
x = 3 -> x <= 10 ->print(3) -> if 3 % 2 == 1 ->if False -> x +=1
x = 4 -> x <= 10 ->print(4) -> if 4 % 2 == 0 ->if True -> x += 3 -> continue
x = 7 -> x <= 10 ->print(7) -> if 7 % 2 == 1 ->if False -> x += 1
x = 8 -> x <= 10 ->print(8) -> if 8 % 2 == 0 -> if True -> x += 3 ->continue
x = 11 -> x > 10 -> False  -  > 循环结束
"""

2 . while 和 break

while循环使用的通用格式:

while True:

​ 需要重复执行的代码

​ if 循环结束的条件

​ break

练习1:输入任意一个正整数,求他是几位数

num = int(input('请输入一个任意正整数:'))
count = 0
while True:
	num //= 10
	count += 1
	if num == 0:
	break
print(count)

3 . 循环else

"""
完整的循环结构:
1)完整的for循环
for 变量 in 序列:
	循环体
else:
	代码段
	
2)完整的while循环
while 条件语句:
	循环体
else:
	代码段
	
else的作用:
else的存在不会影响原来循环的执行;
如果循环不是因为遇到break而结束的,else后面的代码段就会在循环结束后执行

"""

练习:判断指定的数是否是素数

num = 19
for x in range(2,num):
	if num % x == 0:
		print(num,'不是素数!')
		break
elseprint(num,'是素数!')
		

第一周作业

1 . 选择题

  1. 下列变量名中不合法的是?(C)

    A. abc

    B. Npc

    C. 1name

    D ab_cd

  2. 下列选项中不属于关键字的是?(D)

    A. and

    B. print

    C. True

    D. in

  3. 下面哪个选项对应的代码写法是正确的?(C)

    A.

    print('Python')
      print('新手村')
    

    B.

    print('Python') print('新手村')
    

    C.

    print('Python')
    print('新手村')
    

    D.

    print('Python''新手村')
    
  4. 下面选项中能打印出50的是?B

    A.

    print('100 - 50')
    

    B.

    print(100 - 50)
    
  5. 关于引号,下面选项中使用正确的是?D

    A.

    print('hello)
    

    B.

    print("hello')
    

    C.

    print(“hello”)
    

    D.

    print("hello")
    

    2 . 编程题

  6. 写代码在控制台打印 good good study, day day up!

    print('good good study, day day up!')
    
  7. 写代码在控制台打印5次 you see see, one day day!

    for x in range(5):
        print('you see see, one day day!')
    
  8. 写代码打印数字 11、12、13、… 21

    for x in range(11,22):
        print(x)
    
  9. 写代码打印数字 11,13,15,17,…99

    for x in range(11,100,2):
        print(x)
    
  10. 写代码打印数字:10、9、8、7、6、5

    x = 10
    while 5 <= x <= 10:
        print(x)
        x -= 1
    
  11. 写代码计算:1+2+3+4+…+20 的和

    s = 0
    for x in range(1,21):
        s += x
    print(s)
    
  12. 写代码计算100以内所有偶数的和

    s = 0
    for x in range(0,100,2):
        s += x
    print(s)
    
  13. 写代码统计100~200中个位数是3的数的个数

    count = 0
    for x in range(100,201):
        if x % 10 == 3:
            count += 1
    print(count)
    
  14. 写代码计算2*3*4*5*...*9的结果

    product = 2
    for x in range(3,10):
        product *= x
    print(product)
    
  15. 输入一个数,如果输入的数是偶数就打印偶数否则打印奇数

    x = int(input('请输入一个数字:'))
    if x % 2:
        print('奇数')
    else:
        print('偶数')
    
  16. 统计1000以内能被3整除但是不能被5整除的数的个数。

    count = 0
    for x in range(0,1000,3):
        if x % 5 != 0:
            count += 1
    print(count)
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值