文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

学习笔记-小甲鱼Python3学习第九讲

2023-01-31 08:03

关注

while循环:当条件真时,执行循环体

while 条件:

    循环体


for循环:

for 目标 in 表达式:

    循环体

举例:

>>> fruits = ['apple','橘子','banana','哈密瓜','pear']           #水果列表frutis

>>> for fruit in fruits:

print(fruit,len(fruit))                    #打印水果和水果名字的字符数量


apple 5

橘子 2

banana 6

哈密瓜 3

pear 4


range()函数,python的内置函数,取一定范围值

语法: range([start,] stop[,step=1])

-共三个参数,中括号里面是可选参数

-step=1表示第三个参数的值默认值是1,步进值

-作用是生成一个从start参数的值到stop参数的值减1结束的数字序列

举例:

>>> for i in range(4):

print(i)

0

1

2

3

不设置start值,默认从0开始打印


>>> for i in range(2,6):

print(i)

2

3

4

5


>>> for i in range(2,10,3):

print(i)

2

5

8

设置步进值为3


break和continue

break:终止循环,跳出循环体

举例:

birth = '1203'

answer = input('请输入我的生日:')

while True:

    if answer == birth:

        break

    answer = input('不对,请再猜一下我的生日:')

print('厉害了!我的生日你都能猜到!')


continue:终止本轮循环,并开始下一轮循环

举例:

for i in range(10):

    if i%2 != 0:

        print(i)

        continue

    print('aloha',i)

--------------------------分割线,哈哈哈--------------------

二、课后作业:

0. 下面的循环会打印多少次"I Love FishC"?

for i in range(0,10,2):

        print('i love fishc')

5次,i从0开始,以每次加2,当i为0,2,4,6,8的时候打印“”中语句


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

for i in 5:

        print('i love fishc')

会报错, in 是“成员资格运算符”,i要在一个序列中寻找值,而不是单个值


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

break:终止当前循环,跳出循环体

continue:终止本轮循环并开始下一轮循环(这里要注意的是:在开始下一轮循环之前,会先测试循环条件)。


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

列表是python中常用的数据类型,以[]方括号括起来,并用,逗号隔开

列表中的数据不需要具有相同的类型


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

0,1,2,3,4,5,6,7,8,9    相当于range(0,10)  


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

while True:

    while True:

        break

        print(1)

    print(2)

    break

print(3)

会打印

2

3


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

#########抄的不知道########### 用于游戏实现,因为游戏只要运行着,就需要时刻接收用户输入,因此使用永远为真确保游戏“在线”。操作系统也是同样的道理,时刻待命,操作系统永远为真的这个循环叫做消息循环。另外,许多通讯服务器的客户端/服务器系统也是通过这样的原理来工作的。所以永远为“真”虽然是“死循环”,但不一定是坏事,再说了,我们可以随时用 break 来跳出循环!


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

i = 0

string = 'I love python.'

while i < len(string)):

      print(i)

       i+= 1

上面的代码,效率低下的原因是“每次循环都要调用len()函数”,改为一次性直接调用如下:

i = 0

string = 'I love python'

length = len(string)

while i < length:

    print(i)

    i += 1


----------------------分割线,哈哈哈-----------------

三、动动手:

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

print('-------密码验证程序-----------')

count = 3

password = '11111'

while count:

    passwd = input('请输入密码:')

    if passwd == password:

        print('密码正确,进入程序...')

        break

    elif '*' in passwd:

        print('*不能作为密码',end=' ')

        continue

    else:

        print('密码错误,你还有',+ count-1,'次机会.',end=' ')

    count -= 1


1.编写一个程序,求 100~999 之间的所有水仙花数。如果一个 3 位数等于其各位数字的立方和,则称这个数为水仙花数。例如:153 = 1^3 + 5^3 + 3^3,因此 153 就是一个水仙花数。

for i in range(100,1000):

    if i == ((i//100)**3 + (i%100//10)**3 + (i%10)**3):

        print(i)


2.三色球问题:

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

print('--------三色球问题--------')

for red in range(4):

    for yellow in range(4):

        for blue in range(7):

            if red + yellow + blue == 8:

                print('三色球组合:红球',red,'个','黄球',yellow,'个','篮球',blue,'个')


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯