Python开发【第三篇】:分支循环
1. if 条件语句
语法:
if 条件:
代码块 # 条件为真执行
else: # else 可选
代码块 # 条件为假执行
示例:
n = int(input('请输入一个数字:'))
if n > 0:
print('%s 大于 0' % n)
else:
print('%s 小于 0' % n)
if 语句支持嵌套:
if 条件:
if 条件:
代码块
else:
代码块
else:
代码块
多条件判断 if - elif - else
当有多个条件时,总是用 if 判断,不是那么方便。为了偷懒,我们引入了 elif,即 if - else 的简写。
score = int(input('请输入一个分数:'))
if 100 >= score >= 90:
print('A')
if 90 > score >= 80:
print('B')
if 80 > score >= 60:
print('C')
if 60 > score >= 0:
print('D')
if score < 0 or score > 100:
print('输入错误')
用 elif 语句,会简单方便很多,增加代码可读性:
score = int(input('请输入一个分数:'))
if 100 >= score >= 90:
print('A')
elif 90 > score >= 80:
print('B')
elif 80 > score >= 60:
print('C')
elif 60 > score >= 0:
print('D')
else:
print('输入错误')
2. while 循环语句
条件为真,循环体一直执行。
语法:
while 条件:
循环体
死循环:
while True:
print('死循环')
示例:
count = 0
while count < 10: # count 小于 10,一直循环,直至大于 10,退出循环
print('hello')
count += 1
print('ok')
while 循环语句,同样也可以拥有 else 自居:
number = 23
running = True
while running:
guess = int(input('enter a integer: '))
if guess == number:
print('congratulations,you guessed it!')
print('but,you do not win any prizes!')
running = False # 循环在此终止,跳出循环,并执行else字句
elif guess < number:
print('no,it is a litter higher than that')
else:
print('no, it is a litter lower than that')
else:
print('The while loop is over')
print('Done!')
3. for 循环语句
for 循环语句是另一种循环语句,对一系列对象进行循环迭代,遍历序列中的每个元素。
语法:
for i in 'she':
print(i)
s
h
e
range([start, ] stop [, step=1])函数,可以用来创建一个整数列表,常与 for 语句搭配。
>>> s = range(5) # 生成一个 0 - 5 的整数列表
>>> type(s)
<class 'range'>
>>> list(s)
[0, 1, 2, 3, 4]
for i in range(3):
print(i)
0
1
2
4. break 语句
break 语句的作用就是终止循环,退出循环。
n = 0
while n < 10:
n += 1
if n % 2 == 0: # 当 n = 2 时退出循环
break
print(n)
1
5. continue 语句
continue 语句用于终止本次循环,再继续下一次循环,再进行下一次循环之前会判断循环条件。
n = 0
while n < 10:
n += 1
if n % 2 == 0: # 当 n 为偶数终止本次循环,继续下一次循环
break
print(n)
1,3,5,7,9
6. 练习题
1. 利用 while 循环输出:1 、2 、3 、4 、5 、6 、8 、9 、10
n = 1
while n < 11:
if n == 7:
pass
else:
print(n)
n += 1
2. 计算 1 - 100 的和
n = 1
sum = 0
while n < 101:
sum += n
n += 1
print(n)
3. 计算 1-2+3-4+5-6...99 的和
n = 1
sum = 0
while n < 100:
temp = n % 2
if temp == 0:
sum -= n
else:
sum += n
n += 1
print(sum)
4. 计算 1 - 100 所有偶数的和
n = 1
while n < 101:
if n % 2 == 0:
sum += n
else:
pass # pass 表示该段代码不执行。
n += 1
print(sum)
5. 用户登录(三次机会重试)
count = 0
while count < 3:
user = input('请输入你的用户名:')
psd = input('请输入你的密码:')
if user == 'Alina' and psd == '123456':
print('欢迎回来 %s' % user)
else:
print('输入错误,请重试')
count += 1
Python开发【第三篇】:分支循环的更多相关文章
- Python开发第三篇
函数 一.函数参数传值 形参:函数在定义的时候给定的参数 实参:函数在运行时赋给的参数: def func(i):#i为定义时的参数,为形参 pass func(name)#name为运行时的参数,为 ...
- Python开发【第二篇】:初识Python
Python开发[第二篇]:初识Python Python简介 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏 ...
- Python开发【第一篇】:目录
本系列博文包含 Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习编程的童鞋提供一点帮助!!! Python开发[第一篇]:目录 Python开发[第二篇]:初识Python ...
- Python开发【第一篇】:目录
本系列博文包含Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习Python编程的朋友们提供一点帮助! .Python开发[第一篇]:目录 .Python开发[第二篇]:初始P ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- python数据挖掘第三篇-垃圾短信文本分类
数据挖掘第三篇-文本分类 文本分类总体上包括8个步骤.数据探索分析->数据抽取->文本预处理->分词->去除停用词->文本向量化表示->分类器->模型评估.重 ...
- Eclipse和PyDev搭建完美Python开发环境 Windows篇
1,安装Python Python是一个跨平台语言,Python从3.0的版本的语法很多不兼容2版本,官网找到最新的版本并下载:http://www.python.org, 因为之前的一个项目是2版本 ...
- Python开发【第一篇】基础题目二
1 列表题 l1 = [11, 22, 33] l2 = [22, 33, 44] # a. 获取l1 中有,l2中没有的元素 for i in l1: if i not in l2: # b. 获取 ...
- Python开发【第二篇】:初始Python
Python的前世今生 Python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,中国人称他为龟叔,他在圣诞节期间在阿姆斯特丹为了打发时间,决定开发一个新的脚本 ...
- Python学习第三天 --- 分支、循环、条件、枚举
1.表达式: 表达式(Expression)是运算符(operator)和操作数(operand)所构成的序列. 2.表达式的优先级: 3.python的注释: #单行注释 ''' 多行注释 ''' ...
随机推荐
- ELK常用API使用方法
以下ELK系列文章参考自http://www.tianyiqingci.com/ 总目录: Monitor API ElasticSearch聚合分析API Elasticsearch信息检索API ...
- python第二篇:windows 下virtualenvwrapper虚拟环境搭建
优点 安装过程 第一步:安装virtualenv pip install virtualenv 第二步:新建virtualenv virtualenv testvir 第三步:运行虚拟环境相关命令 进 ...
- SpringMVC简单实例(看起来有用)
SpringMVC简单实例(看起来有用) 参考: SpringMVC 基础教程 简单入门实例 - CSDN博客http://blog.csdn.net/swingpyzf/article/detail ...
- AngularJS-Basic(一)
MVC:作为DataModel的$scope 依赖注入DI 模块化Module Service Filter Two way DateBinding Directive Unit Testing&am ...
- L106 Three things we learned from day one at the World Cup
Hosts Russia got the World Cup off to a flying start by hammering Saudi Arabia 5-0 in the opening ga ...
- VC++6.0编译环境介绍
大家可能一直在用VC开发软件,但是对于这个编译器却未必很了解.原因是多方面的.大多数情况下,我们只停留在"使用"它,而不会想去"了解"它.因为它只是一个工具,我 ...
- Mybatis学习--日志
学习笔记,选自Mybatis官方中文文档:http://www.mybatis.org/mybatis-3/zh/logging.html Logging Mybatis内置的日志工厂提供日志功能,具 ...
- freeMarker(十一)——模板语言之指令
学习笔记,选自freeMarker中文文档,译自 Email: ddekany at users.sourceforge.net 1.assign 概要 <#assign name1=value ...
- BZOJ5362: [Lydsy1805月赛]quailty 算法
BZOJ5362: [Lydsy1805月赛]quailty 算法 https://lydsy.com/JudgeOnline/problem.php?id=5362 分析: 题意即求一个最小基环树森 ...
- python日志轮转RotatingFileHandler在django中的一个bug
简介 大量过时的日志会占用硬盘空间,甚至长时间运行不注意会占满硬盘导致宕机,那么就可以使用内建logging模块根据文件大小(logging.handlers.RotatingFileHandler) ...