循环(while、for)
写重复的代码是程序员最不耻的行为,那么如何做到不用写重复代码又能让程序重复一段代码多次呢,循环语句就派上用场拉……
一、while 循环
# while 语法结构
while 条件:
执行代码.....
#来写个从0打印到100的小程序,每循环一次,+1+
count = 0
while count <= 100: #只需要count<=100,就执行不断执行下面代码
print("第%s次循环"%count)
count += 1 #每执行一次,就把count+1,否则就会变成死循环,如果count不加1,那么count就一直是0 #执行结果: 第0次循环
第1次循环
第2次循环
第3次循环
第4次循环
………………
………………
第100次循环
# 再做个练习吧,打印0-100的偶数
num = 0
while num <= 100:
if num % 2 == 0:
print("%s"%num,end=" ")
num += 1
print("")
print ("-----loop is ended-----") # 执行结果
0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100
-----loop is ended-----
break 与continue
下面我们来看看continue的效果吧……
# 打印1-,第5次跳过不打印
count =
while count <= :
count +=
if count == :
continue #当count=5时,结束本次循环,不打印loop 5,直接下一次循环
print ("loop ",count) print("----end------") #执行结果
loop
loop
loop
loop
loop
loop
loop
loop
loop
----end------
接下来在看看break的效果,与continue有什么不同……
# 打印1-,第5次结果循环体
count =
while count < :
count +=
if count == :
break #当count=5时,结束循环体
print ("loop ",count) print("----end------") #执行结果:
loop
loop
loop
loop
----end------
来个小练习:优化猜年龄游戏,允许用户最多猜3次,猜了三次后,再问用户是否还想玩,如果用户选择y,则允许在猜三次,否则游戏终止
# 优化猜年龄游戏,允许用户最多猜3次,猜了三次后,再问用户是否还想玩,如果用户选择y,则允许在猜三次,否则游戏终止
age =
count =
while count < :
age_input = int(input("将你猜的年龄输入:"))
if age_input == age:
print("恭喜你猜对了")
break
elif age_input > age:
print("猜大了")
else:
print("猜小了")
count +=
if count == :
choice = input("没猜,游戏是否继续,y/n?:")
if choice == "y" or choice == "Y":
count = #初始化count,循环条件则为真,进入循环
else:
print("游戏结束,欢迎下次光临!")
while...else
与其它语言else一般只与if搭配不同,在python中还有个while....else语句
while后面的else作用是指,当while循环正常执行完,中间没有被 break中止的话,就会执行else后面的语句
# while ....else 判断程序中间否中止过(break)
count =
while count < :
print ("loop ",count)
if count == :
break
count +=
else: # 中间有被break过将不会被执行else代码块
print("out of loop") # 执行结果
loop
loop
loop
loop
循环(while、for)的更多相关文章
- 【.net 深呼吸】细说CodeDom(8):分支与循环
有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...
- Recurrent Neural Network系列1--RNN(循环神经网络)概述
作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
- 模仿Linux内核kfifo实现的循环缓存
想实现个循环缓冲区(Circular Buffer),搜了些资料多数是基于循环队列的实现方式.使用一个变量存放缓冲区中的数据长度或者空出来一个空间来判断缓冲区是否满了.偶然间看到分析Linux内核的循 ...
- 【JS基础】循环
for 循环的语法: for (语句 1; 语句 2; 语句 3) { 被执行的代码块 } 语句 1 在循环(代码块)开始前执行 语句 2 定义运行循环(代码块)的条件 语句 3 在循环(代码块)已被 ...
- 【python之路4】循环语句之while
1.while 循环语句 #!/usr/bin/env python # -*- coding:utf-8 -*- import time bol = True while bol: print '1 ...
- To Java程序员:切勿用普通for循环遍历LinkedList
ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...
- JavaScript单线程和浏览器事件循环简述
JavaScript单线程 在上篇博客<Promise的前世今生和妙用技巧>的开篇中,我们曾简述了JavaScript的单线程机制和浏览器的事件模型.应很多网友的回复,在这篇文章中将继续展 ...
- .NET基础 一步步 一幕幕[循环、逻辑语句块]
循环.逻辑语句块 好久不写博客了,断更了好几天了,从上周五到今天,从北京到上海,跨越了1213.0公里,从一个熟悉的城市到陌生的城市,还好本人适应力比较好,还有感谢小伙伴的接风咯,一切都不是事,好 ...
- Linux进程管理及while循环
目录 进程的相关概念 进程查看及管理工具的使用 Linux系统作业控制 调整进程优先级 网络客户端工具 bash之while循环 20.1.进程类型 守护进程 daemon,在系统引导过程中启动的进程 ...
随机推荐
- js 提示样式 ? 上写提示内容
//再需要的地方放入 <img dms_map_key="zs_prise" src="${ctx }/static/image/tip.png" cla ...
- htaccess转换httpd.ini方法及案例参考
案例1:httpd.ini适合IIS使用,.htaccess适合Apache使用,nginx.conf适合Nginx使用 转换前:httpd.ini [ISAPI_Rewrite] # 3600 = ...
- IO缓冲流
目录 IO缓冲流 缓冲流 基本原理 字节缓冲流 字符缓冲流 IO缓冲流 缓冲流也叫高效流,能够更高效的进行读取: 转换流:能够进行编码转换 序列化流:持久化存储对象 缓冲流 缓冲流--就是对应4个Fi ...
- java CountDownLatch 等待多线程完成
CountDownLatch允许一个或多个线程等待其他线程完成操作. package com.test; import java.util.concurrent.CountDownLatch; pub ...
- Oracle使用jdbc调用带游标参数的存储过程
package com.jckb.procedure; import java.sql.CallableStatement; import java.sql.Connection; import ja ...
- hibernate课程 初探单表映射1-3 hibernate简介
1 hibernate定义: Java领域一项开源的orm框架技术: hibernate对jdbc进行轻量级的封装. hibernate 作为持久层存在.就是通过对象关系映射把项目中的对象持久化到数据 ...
- Python之简易计算器
思路:学会运用正则表达式把需要先进行计算的匹配出来,然后再一步步的去算,把先算出来的值替换原来的值,再进一步的把++,--等号变成我们正常的数学上的符号,然后再进行一步步的替换,最终把带括号的都计算出 ...
- mui的ajax例子2
mui.post()方法 前端页面: <!DOCTYPE html><html><head> <meta charset="utf-8"& ...
- CentOS-7系统安装配置
CentOS 7 系统安装配置 服务器相关设置如下: 操作系统:CentOS 7.3.1611 IP地址:192.168.3.30 网关:192.168.3.1 DNS:8.8.8.8 8.8.4.4 ...
- zabbix-3.4 触发器
3 触发器 概述 触发器是"评估"由项目采集的数据并表示当前系统状况的逻辑表达式. 当监控项用于采集系统的数据时,始终遵循这些数据是非常不切合实际的,因为这些数据始终在等待一个令人 ...