专栏首页石开之旅小甲鱼《零基础学习Python》课后笔记(九):了不起的分支和循环2

小甲鱼《零基础学习Python》课后笔记(九):了不起的分支和循环2

测试题

0.下面的循环会打印多少次

for i in range(0, 10, 2):  
    print('I love FishC') 

 5次。range(0, 10, 2)得到[0,2,4,6,8],总共5次。

1. 下面的循环会打印多少次“I Love FishC”?

for i in 5:  
    print('I Love FishC')  

会报错。in是成员运算符。

2.回顾一下break和continue在循环中提到的作用?

break是跳出循环,continue是中止本次循环,进入下次循环。

3.请谈下你对列表的理解?

下节补充。

4.请问range(10)生成哪些数?

会生成range(0,10)

>>> list(range(0,10))  
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]  

5.目测以下程序会打印什么?

while True:  
    while True:  
        break  
        print(1)  
    print(2)  
    break  
print(3)  

打印2,3。第一个break跳过print(1),跳到print(2);第二个break跳出第2个while循环,跳到print(3)。

6.什么情况下我们要使循环永远为真?

   一些需要一直执行的程序,如游戏实现,因为游戏只要运行着,就需要时刻接收用户输入,因此使用永远为真确保游戏“在线”。

7.【学会提高代码的效率】你觉得以下代码效率方面怎样?有没有办法可以大幅度改进(任然使用while)?

i = 0  
string = 'ILoveFishC.com'  
while i < len(string):  
    print(i)  
    i += 1  

改进后,主要是不用每次循环都调用len函数。

i = 0  
string = 'ILoveFishC.com'  
length = len(string)  
while i < length:  
    print(i)  
    i += 1  

动动手

0.设计一个验证用户密码程序,用户只有三次机会输入错误密码,不过如果用户输入的内容包含“*”则不计算在内。

count = 3
password = 'allen'
while count > 0:
    number = input('请输入密码:')
    if number == password:
        print('密码正确!')
        break
    elif '*' in number:
        print('密码中不能含有"*"号!您还有' + count + '次机会!')
        continue
    else:
        print('输入密码有误!您还有' + (count-1) + '次机会!')
        count -= 1

1.编写一个程序,求100~999之间的所有水仙花数。

如果一个 3 位数等于其各位数字的立方和,则称这个数为水仙花数。例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一个水仙花数。

for i in range(100,1000):  
    baiwei = i//100  
    shiwei = (i - 100*baiwei)//10  
    gewei = i%10  
    sum = baiwei**3 + shiwei**3 + gewei**3  
    if sum == i:  
        print(i)  

153  370  371  407 

2.三色球问题

有红、黄、蓝三种颜色的求,其中红球 3 个,黄球 3 个,绿球 6 个。先将这 12 个球混合放在一个盒子中,从中任意摸出 8 个球,编程计算摸出球的各种颜色搭配

print('red\tyellow\tgreen')  
for red in range(0,4):  
    for yellow in range(0,4):  
        for green in range(0,7):  
            if red + yellow + green == 8:  
                print(red,'\t',yellow,'\t',green)  

运行结果:

red    yellow    green
0        2       6
0        3       5
1        1       6
1        2       5
1        3       4
2        0       6
2        1       5
2        2       4
2        3       3
3        0       5

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 小甲鱼《零基础学习Python》课后笔记(二十):函数——内嵌函数和闭包

    首次使用makedown进行博客书写,使用起来感觉也不难,主要是功能需要比较少,不过编写出来的文章很美观。 测试题 0.如果希望在函数中修改全局变量的值,应...

    小火柴棒
  • 小甲鱼《零基础学习Python》课后笔记(十八):函数——灵活即强大

    关键字参数是在调用函数时,带上函数参数的名字去指定调用哪个参数,从而不用按照参数的顺序调用参数。

    小火柴棒
  • 小甲鱼《零基础学习Python》课后笔记(四):改进我们的小游戏

    会一直打印直到电脑内存被占用完。字符串‘C’是一个非0值,所以while语句判断为真,就会一直打印。

    小火柴棒
  • 第二章:快速入门

    格式:open (file_name, access_mode=’r’) r: 读取 w:写入 a :添加 +:读写 b:二进制访问 默认...

    努力在北京混出人样
  • 【Python】Python知识点总结

    字典{key:value,key:value},dict(key=value,key=value):

    keloli
  • Python常见的脚本汇总

    斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13;特别指出:第0项是0,第1项是第一个1。从第三项开始,每一项都等于前两项之和。

    py3study
  • The tips of python

    像我们经常使用的一些数据结构:列表、元组…… 他们里面的数据都是实实在在地在我们的内存中,这是一种 显式 存储,当数据非常大的时候,我们的内存是吃不消的。这个时...

    AngelNH
  • 关于面试总结4-python笔试题

    现在面试测试岗位,一般会要求熟悉一门语言(python/java),为了考验求职者的基本功,一般会出2个笔试题,这些题目一般不难,主要考察基本功。 要是给你一台...

    上海-悠悠
  • python阅读器代码

    py3study
  • 昨天去面试,这5个Python面试题都被考到了,Python面试题No6

    这个考点考了python的解压赋值的知识点,即 a,b,c,middle,d,e,f = list, middle = [1,2,3,4,5]。

    梦想橡皮擦

扫码关注云+社区

领取腾讯云代金券