在我们生活中有很多反复要做的事情,或者动作,我们称之为循环。在开发程序中也会有循环的事情要去做,就是需要反复的去执行某个代码,或者反复进行某种演算,直到达到某种条件的时候才会停止。在Python中我们使用的是while循环。

  伪代码:

   条件成立:

    执行循环体

  直到条件不成立

  代码格式:

while ...:
...

  示例代码:

n = 0

while n < 10:
n = n + 1
# 或者 n += 1
print(n) # 执行结果

1
2
3
4
5
6
7
8
9
10

  在示例代码中,我们将n赋值初始值为0,在while循环体对n进行自增操作,直到n<10不成立,即n大于10,才结束循环。在循环中,我们要注意一定要有结束条件,不要造成无限循环,即死循环。

  下面我们再看一个猜数字代码示例:

number = 47

while True:
guess_number = input("请输入你要猜的数字:") # 因为通过input接收到参数是字符串,我们需要将字符串转换成数字,才可以进行比较操作
guess_number = int(guess_number) if guess_number == number:
print("恭喜你猜对了!")
break
elif guess_number > number:
print("猜的太大了!")
else:
print("猜的太小了!")

  在猜数字示例代码中,我们将变量number赋值数字47,这里的循环内容是反复询问用户输入数字,进行比较,循环结束条件是:guess_number等于number,而跳出循环是由循环控制词break进行控制。在循环中控制循环的词除了break还有continue。break,是跳出整个循环,continue,是结束当前循环,继续执行下面的循环内容。

  continue示例:

n = 0

while n<10:
n += 1
if n == 6:
continue
print(n) # 执行结果 1
2
3
4
5
7
8
9
10

  在这个示例中,可以看出来,循环体对n不断进行自增操作,并打印出n的数值,当n等于6的时候,遇到了continue,跳出了当前的循环,没有打印出来,继续执行剩下的循环内容,直到条件不满足。

  猜数字我们可以修改一下,在一定次数内才可以猜到,限制猜的次数。

number = 47
count = 0
while count < 3:
guess_number = input("请输入你要猜的数字:")
guess_number = int(guess_number) if guess_number == number:
print("恭喜你猜对了!")
break
elif guess_number > number:
print("猜的太大了!")
else:
print("猜的太小了!") count +=1

  我们再增加一个条件,当猜的次数到达3次,退出循环,并告知退出原因。

number = 47
count = 0
while count < 3:
guess_number = input("请输入你要猜的数字:")
guess_number = int(guess_number) if guess_number == number:
print("恭喜你猜对了!")
break
elif guess_number > number:
print("猜的太大了!")
else:
print("猜的太小了!") count +=1 else:
print("抱歉!你猜的次数太多了!")

  这里我们只是增加了else代码块,这里的意思是当while中的循环,正常循环完毕,while的循环条件不成立,(即count大于等于0),没有经过break而结束,才会执行的代码块!

  现在我们修改一下需求,当猜的次数达到3次的时候,我们询问用户是否继续,按‘n’退出,按任意键继续。请看示例:

number = 47
count = 0
while count < 3:
guess_number = input("请输入你要猜的数字:")
guess_number = int(guess_number)
if guess_number == number:
print("恭喜你猜对了!")
break
elif guess_number > number:
print("猜的太大了!")
else:
print("猜的太小了!")
count += 1
if count == 3:
is_contin = input("是否继续?如果要退出,请输入‘n’。")
if is_contin != 'n':
count = 0

  我们可以看到当每次循环3次,并且没有猜到的时候,程序就会询问用户,是否继续?如果输入的是‘n’,程序就会退出!

  while我们暂时学到这里!

1.5 Python基础知识 - while循环的更多相关文章

  1. 1.6 Python基础知识 - for循环

    在循环语句中,除了while循环外,还有一种循环叫for循环的循环语句,for循环语句用于遍历可迭代(什么是迭代?以及迭代的相关知识,我们到后面再进行阐述,这里只要记住就可以了.)对象集合中的元素,并 ...

  2. python基础知识(循环语句)

    for循环.while循环.循环嵌套 for 迭代变量 In 对象: 循环体 range(start,end,step) 第一个和第三个可以省略生成一系列的连续整数 start 包括起始值 end  ...

  3. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  4. python 基础知识(一)

    python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...

  5. Python基础——for/while循环

    Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ 上学期间,常常遇到这样的情景:为了惩罚学生,老师会说:"XXX,你先去操场上跑10圈再回来继续反省.&qu ...

  6. python 爬虫与数据可视化--python基础知识

    摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...

  7. python基础知识小结-运维笔记

    接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...

  8. Python基础知识(五)

    # -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...

  9. Python 基础知识(一)

    1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...

随机推荐

  1. dlmalloc 2.8.6 源代码具体解释(5)

    本文章由vector03原创, 转载请注明出处. 邮箱地址: mmzsmm@163.com, 欢迎来信讨论.     3. 分配及实现 本章节介绍dlmalloc的分配算法和实现.由于存在多mspac ...

  2. 第一天,Mysql安装,DDL(数据库定义语言),DBA,DML(数据库操纵语言),导入外面的sql文件

    把“D:\mysql-5.6.22-winx64\bin”添加到系统环境变量path中了,然后在任意目录可访问mysql等命令,这样如登录等操作就不需要进入MySQL安装目录才好执行! MySQL下载 ...

  3. Unix/Linux环境C编程新手教程(37) shell经常使用命令演练

     cat命令 cat命令能够用来查看文件内容. cat [參数] 文件名称. grep-指定文件里搜索指定字符内容. Linux的文件夹或文件. -path '字串' 查找路径名匹配所给字串的全部 ...

  4. 6.cocos2d设置定时器

    T1LayerAnchorPoint.h #pragma once #include "cocos2d.h" USING_NS_CC; class T1LayerAnchorPoi ...

  5. vue+mui+html5+ plus开发的混合应用底部导航的显示与隐藏

    1. 模板相关内容(template) <template> <div> <transition :name="transitionName"> ...

  6. chage---修改帐号和密码的有效期限

    chage命令   chage命令是用来修改帐号和密码的有效期限. 语法 chage [选项] 用户名 选项 -m:密码可更改的最小天数.为零时代表任何时候都可以更改密码. -M:密码保持有效的最大天 ...

  7. poj3244(公式题)

    Difference between Triplets Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 2476   Acce ...

  8. LeetCode OJ Basic Calculator II

    Basic Calculator II 题目 思路 和这个一样:Basic Calculator I 代码 class ExpressionTransformation { public: strin ...

  9. 当Java代码遇上抽象、重载加重写,一切都不美好了

    当Java代码遇上抽象.重载加重写.一切都不美好了 前几天调程序遇上个奇怪的bug.一直没找到问题,今天最终发现问题所在了,不说了先上代码(下面代码是演示样例代码,经測试,Java不存在这问题,安卓存 ...

  10. <meta-data>的使用

    在AndroidManifest.xml中,<meta-data>元素可以作为子元素,被包含在<activity>.<application> .<servi ...