Python趣味入门教程之循环语句while

前言

任何语言都有循环语句,在Python里循环更是变化无穷,有基本的循环,有循环else语句,引伸出来的还有迭代器、推导式,咱们先学习最简单的一种。

While循环 

while 条件判断语句:
  子代码1
  子代码2
  子代码3
  …
  子代码N
主代码1

while语句的格式与if类似,子代码必须进行缩进4个空格,作用却是大不相同。当它执行第一次循环时,判断条件是否成立,如果条件成立,就从子代码1开始执行到子代码N,然后程序会回到while语句再次判断条件是否成立,如果成立就继续从子代码1开始执行,如果不成立就跳过子代码段,系统从主代码1开始往后执行。

话说在North Kingdom北境国的北面夜王控制了塞外,曾经春夏交织,现在每天雪花连绵,似乎进入了无限循环状态。

类似于永不停止的重复动作即无限循环,实现它需要在写条件判断语句时,直接写上永远为True的判断结果,简单直接使用True,以实现了无穷循环的功能,如下面的程序所示:

>>> while True:
    print('下雪')
下雪
下雪
下雪
下雪
下雪
下雪 (按下Ctrl+C来终止程序无穷运行)
KeyboardInterrupt   
>>>

身为北境守卫者的我 - 中文名雪诺(英文名Snow)决定越过长城北,解决掉夜王。国王Stannis请我在王宫500个最强壮的卫兵中,挑选10人同行,由于时间有限不可能全部面试500人为了公平,于是我决定由电脑随机挑出1个人,通过后即出队入选,这样重复多次直到10人选满为止。
关于这个挑人程序,现在分析如下:

  1. 首先定义队伍人数,初始值是500。
  2. 面试后如选中一人,队伍中会少一个人。
  3. 如果未选中,让其归队,队伍人数不会变化。
  4. 无论上一次有没有选中,只需要在剩下的人数里再继续产生随机数(注意:并不是从原来整个500人中产生)。
  5. 如果剩下的人数是490人就意味着10人已经选满,循环结束。
    至此逻辑已经很清楚了,看看您是不是已经把程序写出来了呢?

本程序从500人的队伍里,随机挑出,如果满意就入选,不满意就归队

import random #使用随机数工具
volunteer = 500
while volunteer > 500-10: #当剩下的人数大于490时才继续面试
 test = random.randint(1,volunteer)
 if(input('还剩下'+ str(volunteer)+'人,这是随机挑选的第'+str(test)+'号,您满意么(y/n)?') == 'y'):
  volunteer -= 1 #入选后队伍就会少1人
print('您已经选足了10个人!')

上面程序使用了无限循环,为实现满足选定10人就退出的功能,在循环里进行了条件判断,满足条件退出Python,程序运行结果如下所示:

还剩下500人,这是随机挑选的第329号,您满意么(y/n)?y
还剩下499人,这是随机挑选的第113号,您满意么(y/n)?n
还剩下499人,这是随机挑选的第176号,您满意么(y/n)?y
还剩下498人,这是随机挑选的第243号,您满意么(y/n)?y
还剩下497人,这是随机挑选的第315号,您满意么(y/n)?y
还剩下496人,这是随机挑选的第413号,您满意么(y/n)?y
还剩下495人,这是随机挑选的第375号,您满意么(y/n)?y
还剩下494人,这是随机挑选的第440号,您满意么(y/n)?y
还剩下493人,这是随机挑选的第389号,您满意么(y/n)?y
还剩下492人,这是随机挑选的第388号,您满意么(y/n)?y
还剩下491人,这是随机挑选的第231号,您满意么(y/n)?y
您已经选足了10个人!

在运行过程中第2次输入不满意n时,可以看到剩下的人数499并没有变化。

在这里循环和判断都是之前讲过的内容,重点是下面的语句:

import random

这句话是告诉计算机,我马上要使用random模块,模块就是系统中提供高级功能的工具包。为什么要执行这条语句呢?主要是因为系统内置会提供一些功能,比如条件语句、判断语句、计算语句,为了节约内存不可能把所有功能都提供,所以当我们使用手边没有的工具时(比如本程序用的随机数)就要声明,好让程序加载到内存里。

下面的语句里,volunteer是变量,表示剩下的人总数,randint()这种带括号形式的写法,表示函数的执行,该函数返回从1到volunteer之间(也包括)任意随机数(代表抽出的人的编号),最后把抽出的编号赋值保存于test变量。

test = random.randint(1,volunteer)

说明:当执行外部模块的函数,要用英文符号圆点.

Python趣味入门4:while循环示例

总结

到此这篇关于Python趣味入门教程之循环语句while的文章就介绍到这了,更多相关Python循环语句while内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 在Python的while循环中使用else以及循环嵌套的用法

    循环使用 else 语句 在 python 中,for - else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while - else 也是一样. #!/usr/bin/python count = 0 while count < 5: print count, " is less than 5" count = count + 1 else: print count,

  • Python入门_浅谈for循环、while循环

    Python中有两种循环,分别为:for循环和while循环. 1. for循环 for循环可以用来遍历某一对象(遍历:通俗点说,就是把这个循环中的第一个元素到最后一个元素依次访问一次).for循环的基本结构如下: 具体看这个案例: 设计一个函数,在桌面创建10个文本,用数字从1-10依次给它们命名. def text_create(): path = '/Users/duwangdan/Desktop/' for text_name in range(1,11): # 1-10的范围需要用到r

  • 详解python基础之while循环及if判断

    wlile循环 while True表示永远为真,不管是什么条件都会向下执行,下面是写的一个例子. #!/usr/bin/env python age = 24 #给age赋一个值 while True: #进入循环 inputting = int (input("The input number is:")) #保存用户输出到变量inputting if inputting == age: #然后依次比较 print("Guessed it!!!") break

  • 利用Python循环(包括while&for)各种打印九九乘法表的实例

    一.for循环打印九九乘法表 #注意:由于缩进在浏览器不好控制,请大家见谅,后续会有图片传入. 1.1 左下角 for i in range(1,10): for j in range(1,i+1): print('%d*%d=%2d\t'%(j,i,i*j),end='') print() 效果图: 1.2 右下角 for i in range(1,10): for k in range(i+1,10): print(end=' ') #此处为返回八个空格,请注意 for j in range

  • Python while 循环使用的简单实例

    while循环是在Python中的循环结构之一. while循环继续,直到表达式变为假.表达的是一个逻辑表达式,必须返回一个true或false值,本文章向码农介绍Python while 循环使用方法,需要的朋友可以看一下本文章. 一个循环是一个结构,导致第一个程序要重复一定次数.重复不断循环的条件仍是如此.当条件变为假,循环结束和程序的控制传递给后面的语句循环. while循环: while循环是在Python中的循环结构之一. while循环继续,直到表达式变为假.表达的是一个逻辑表达式,

  • 跟老齐学Python之用while来循环

    在python中,它也有这个含义,不过有点区别的是,"当...时候"这个条件成立在一段范围或者时间间隔内,从而在这段时间间隔内让python做好多事情.就好比这样一段情景: while 年龄大于60岁:-------->当年龄大于60岁的时候     退休            -------->凡是符合上述条件就执行的动作 展开想象,如果制作一道门,这道门就是用上述的条件调控开关的,假设有很多人经过这个们,报上年龄,只要年龄大于60,就退休(门打开,人可以出去),一个接一

  • 谈谈Python中的while循环语句

    前言 python中有两种循环,while和for,两种循环的区别是,while循环之前,先判断一次,如果满足条件的话,再循环,for循环的时候必须有一个可迭代的对象,才能循环,比如说得有一个数组. 循环里面还有两个比较重要的关键字,continue和break,continue的意思是,跳出本次循环,继续重头开始循环,break的意思是停止整个循环,也就是说在continue和break下面的代码都是不执行的. for 循环用于集合,其中的每一个元素都会执行同一段代码块: 而 while 循环

  • 全面解析Python的While循环语句的使用方法

    Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务.其基本形式为: while 判断条件: 执行语句-- 执行语句可以是单个语句或语句块.判断条件可以是任何表达式,任何非零.或非空(null)的值均为true. 当判断条件假false时,循环结束. 执行流程图如下: 实例: #!/usr/bin/python count = 0 while (count < 9): print 'The count is:', count cou

  • Python基础之循环语句用法示例【for、while循环】

    本文实例讲述了Python基础之循环语句用法.分享给大家供大家参考,具体如下: while 循环 Python中while语句的一般形式: while 判断条件:     statements 同样需要注意冒号和缩进.另外,在Python中没有do..while循环. 以下实例使用了 while 来计算 1 到 100 的总和: #!/usr/bin/env python3 n = 100 sum = 0 counter = 1 while counter <= n: sum = sum + c

  • Python中for循环和while循环的基本使用方法

    while循环: while expression: suite_to_repeat while 条件:    语句块 不需要括号哦! >>> x 1.2 >>> while x < 2: print(x) x += 0.2 1.2 1.4 1.5999999999999999 1.7999999999999998 1.9999999999999998 >>> 经常用 : while True: .... if ... : break ....

随机推荐