专栏首页python3学习笔记-小甲鱼Python3学习第九讲

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

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,'个')

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • python for循环

    当range执行完之后,代码执行else部分代码。如果遇到break,终止循环,不会走else代码

    py3study
  • Python学习笔记整理(十一)pyth

    while语句,提供了编写通用循环的一种方法,而for语句是用来遍历序列对象内的元素,并对每个元素运行一个代码块。break,continue用在循环内,跳出整...

    py3study
  • python3基础:生成器

    在python中,边循环边计算的机制就称为生成器(generator)。使用生成器当用到数据的时候在生成,这样可以节约空间,提高效率。生成器是一种特殊类型的迭代...

    py3study
  • python for循环

    当range执行完之后,代码执行else部分代码。如果遇到break,终止循环,不会走else代码

    py3study
  • Python学习笔记整理(十一)pyth

    while语句,提供了编写通用循环的一种方法,而for语句是用来遍历序列对象内的元素,并对每个元素运行一个代码块。break,continue用在循环内,跳出整...

    py3study
  • python 列表的排列组合

    permutations/combinations/combinations_with_replacement

    用户5760343
  • Swift编程小技巧

    Swift中有很多有用的小技巧,用好了能使代码更加安全,简洁,易于理解或效率更加高效,在这记录一些编写swifty code的小技巧。

    韦弦zhy
  • python3基础:生成器

    在python中,边循环边计算的机制就称为生成器(generator)。使用生成器当用到数据的时候在生成,这样可以节约空间,提高效率。生成器是一种特殊类型的迭代...

    py3study
  • Python | 一道神奇的Python面试题,你会吗?

    怀疑了人生半天,本来还想黑,WTF Python…然后才想通是自己太生疏......

    用户1634449
  • 浅入深谈:一道Python面试题,让我明白了殊途同归,却开始怀疑自己

    怀疑了人生半天,本来还想黑,WTF Python…然后才想通是自己太生疏......

    小小科

扫码关注云+社区

领取腾讯云代金券