Python基础教程之if判断,while循环,循环嵌套


Posted in Python onApril 25, 2019

if判断

判断的定义

 如果条件满足,就做一件事;条件不满足,就做另一件事;
 判断语句又被称为分支语句,有判断,才有分支;

if判断语句基本语法

if语句格式:

if 判断的条件:
    条件成立后做的事
    ...
...

代码缩进为一个tab键,或者四个空格,官方建议使用空格;但应注意,在python开发中,tab和空格不能混用!

判断年龄示例:

# 判断是否成年,成年则可以进网吧
age = 19
if age>=18:
 print("你满了18岁,可以进网吧")

if及其缩进代码可以看成一个完整的代码块

比较运算符简介

运算符 描述
== 比较两个操作数的值是否相等,相等则返回True,否则返回False
!= 比较两个操作数的值是否不相等,不相等则返回True
>= 检查左操作数的值是否大于等于右操作数的值,成立则返回True
检查右操作数的值是否大于等于左操作数的值,成立则返回True
检查右操作数的值是否大于左操作数的值,成立则返回True
> 检查左操作数的值是否大于右操作数的值,成立则返回True

注意,在python2.x中,<>和!=作用和效果一样;但在python3中,已经取消了<>这个比较符号。

else语句

if只能够用来 当条件满足时做某事,而else则用来当条件不满足时做另外的事。

else语法格式:
if 判断的条件:
 条件成立后应该做的事
else:
 条件不成立时应该做的事

判断年龄改进版

age = 18
if age>=18:
 print("已成年,可以进网吧")
 print("欢迎来到xxx网吧")
else:
 print("未成年,请以后再来")
print("慢走") # 无论条件是否满足,都会执行

控制台输入年龄示例

age = int(input("请输入你的年龄:"))
if age>=18:
 print("已成年,可以进网吧")
 print("欢迎来到xxx网吧")
else:
 print("未成年,请以后再来")
print("慢走")

应注意的是,控制台输入的被python解释器认为是字符串,字符串不能与数字比较,应该现将从控制台输入的年龄转换成数字;

if,else及其各自的缩进代码可以看成一个完整的代码块;
 虽然他们并不能折叠成一个代码块,但其实就是,之所以各自折叠的原因是因为它们各自是局部代码;

逻辑运算符

逻辑运算符简介

 逻辑运算符的使用:当需要同时判断多个条件是否成立以执行后续的代码时
 与或非,与或是用来连接条件的,非不连接条件,是用来对条件取反的;

and 与

条件1 and 条件2

必须两个条件同时满足,才是真,返回True;
 只要有一个条件不满足,就是假,返回False。

or 或

条件1 or 条件2

两个条件只要有一个满足,就是真,返回True;
 只有两个条件都不满足,才是假,返回False。

not 非

not 条件

非不连接条件,用来对条件取反;
not使用场景:当希望 条件不满足时执行某件事情,可以用not;
 另外,如果是拼接复杂的逻辑计算时,也可能用到not。

逻辑运算符使用示例

示例1:

# 逻辑判断年龄是否正确
age = 40
if age>=0 and age<=120:
 print("年龄正确")
else:
 print("年龄错误")

示例2:

# not判断公司员工
is_employee = False
if not is_employee:
 print("非本公司员工,禁止入内")

elif语句

elif应用场景:希望判断多个条件,并且多个条件对应不同的处理方式时;
elif中 同时判断多个条件,所有的条件是平级的。

elif的语法:

if 条件1:
    条件1满足时,就执行这里面的代码
elif 条件2:
    条件2满足时,就执行这里面的代码
elif 条件3:
    条件3满足时,就执行这里面的代码
else:
    如果上述条件都不满足,就执行这里的代码

elif应用示例

# 判断是否为女友的节日并作出相应动作
day = "birthday"

if day == "birthday":
 print("buy cake")
elif day = "Valentine's Day":
 print("buy rose")
elif day = "Christmas Eve":
 print("eat apple")
else:
 print("Everyday is her holiday!")

if嵌套

if嵌套的应用场景:用来判断多个有前后依赖的场景,在前一个条件满足的情况下,再额外增加条件判断时使用;

if嵌套的语法:

if 条件1:
    if 条件1.1:
        条件1.1满足时,就执行这里面的代码
    elif 条件1.2:
        条件1.2满足时,就执行这里面的代码
    else:
        如果上述条件都不满足,就执行这里的代码
elif 条件2:
    条件2满足时,就执行这里面的代码
elif 条件3:
    条件3满足时,就执行这里面的代码
else:
    如果上述条件都不满足,就执行这里的代码

火车站检票安检代码

# 有火车票后进入安检环节,没有票就不允许进,安检环节如果满足条件就进入,不满足就进行提醒
has_ticket = True
knife_length = 30
if has_ticket:
 print("检票完成,进入安检环节")
 if knife_length > 20:
 print("你携带的道具有 %d厘米,不符合规定,不允许上车!"%knife_length)
 else:
 print("安检成功,祝你旅途愉快")
else:
 print("没有票,不允许进入,请先购票")

所学综合应用

# 开发一个剪刀石头布的人机对战游戏
import random

player = int(input("请选择你的出拳,只需输入数字:1.石头 2.剪刀 3.布))
computer = random.randint(1,3)
print("玩家选择的是%d,电脑选择的是%d"%(player, computer))
if ((palyer == 1 and computer == 2) 
 or (palyer == 2 and computer == 3) 
 or (palyer == 3 and computer == 1)):
 print("恭喜你,你赢了")
elif player == computer:
 print("平局,这么巧")
else:
 print("不好意思,你输了")

一行过长代码的换行

 原来:

if (palyer == 1 and computer == 2) or (palyer == 2 and computer == 3) or (palyer == 3 and computer == 1):
 print("你赢了")

换行:

if ((palyer == 1 and computer == 2) 
 or (palyer == 2 and computer == 3) 
 or (palyer == 3 and computer == 1)):
 print("你赢了")

while循环的基本使用

程序的三大流程

程序只有三个流程,顺序,分支,循环
 从上到下,顺序;
 条件判断,分支;
 特定代码重复执行,循环;

while语句基本语法
初始条件(例如 i=1)
while 条件:(例如 i<=5)
    满足条件时做的事(xxx)

    处理条件(例如 i=i+1)
循环结束后做的事(xxx)

第一个while循环示例

i =1
while i<=5:
 print("hello python")
 i = i+1
print("循环结束")

注意,循环结束后,之前定义的计数器条件的数值依旧是存在的;

死循环:没有对计数器进行处理,导致程序一直在循环部分执行,无法跳出;

python中的赋值运算符

i += 1 ---> i = i+1
 -=
 i /= 2 ---> i = i/2
 *=
 //=
 %=
 **=

注意,赋值运算符之间不能有空格;

程序计数从0开始

自然计数法,从1开始,符合人的习惯
 程序计数法,从0开始,几乎所有的语言都是如此

循环计算示例

循环计算思路分析
 先在外面定义一个变量用来保存计算结果;
 每循环一次就更新一下变量的计算结果。

示例1:

# 0到100数字累加
i = 0
sun = 0
while i <= 100:
 sum += i
 i += 1
print("循环结束,0到100的求和结果是%d" % sum)

示例2:

# 偶数求和之计算结果
i = 0
sum = 0
while i <= 100:
 if i%2 == 0:
 sum += i
 i += 1
print("循环结束,0到100的求和结果是%d" % sum)

break和continue

break和continue的使用场景

break和continue是专门在循环中使用的关键字
break 某一条件满足时,退出循环,不再执行后续重复的代码
continue 某一条件满足时,不执行后续的重复代码
break和continue只对当前所在循环有效
break打断整个循环
continue打断一次小循环

break代码演练

i = 0
while i<10:
 if i == 3:
 break
 print(i)
 i+=1

continue代码演示

i = 0
while i<10:
 if i == 3:
 # 在循环中,使用continue之前,需确认循环的计数是否需要修改,否则很容易造成死循环。
 i += 1
 continue
 print(i)
 i+=1

循环嵌套

循环嵌套语法

while 条件1:
    条件满足时,做的事...

    while 条件2:
        条件满足时,做的事...

        处理条件2
    处理条件1

print函数end参数的作用

默认情况下,print函数会在结尾自动增加换行;而用end参数的话,可以用end指定的内容替换换行,比如空格,就是调整print函数不换行;再比如end="---",就是在添加end的print输出语句和下一个输出语句之间不换行且添加---

print("1")
print("2")

print("1", end="")
print("2")

print("1", end="---")
print("2")

循环嵌套使用案例

案例1.打印五行小星星

row = 1
while row <= 5:
 # 每一行要打印的小星星数量和当前行数是一样的
 # 增加一个小循环,专门负责当前行中,每一列的小星星输出
 col = 1
 while col <= row:
 print("*", end="")
 col += 1
 print("")
 row += 1

重点看其中的思路!

案例2.九九乘法表案例

row = 1
while row <= 9:
 col = 1
 while col <= row:
 # print("*", end="")
 # print("9 * 9 = 81", end=" ")
 # print("9 * %d = 81" % row, end=" ")
 # print("%d * %d = %d" % (col, row, col*row), end=" ")
 print("%d * %d = %d" % (col, row, col*row), end="\t") # 加\t的原因是,为了对齐美观
 col += 1
 print("")
 row += 1

字符串中的转义字符

转义字符 描述
\ 反斜杠符号
' 单引号
" 双引号
\n 换行
\t 横向制表符
\r 回车

t在控制台输出一个制表符,协助在输出文本时垂直方向保持对齐;
 制表符的作用是在不适用表格的情况下在垂直方向按列对齐文本;

\n在控制台输出一个换行符。

print("1 2 3")
print("10 20 30")
# \t在控制台输出一个制表符,协助在输出文本时垂直方向保持对齐,制表符的作用是在不适用表格的情况下在垂直方向按列对齐文本
print("1\t2 \t3")
print("10\t20\t30")
# \n在控制台输出一个换行符
print("hello\nworld")
print("hello\"world")

# 输出
1 2 3
10 20 30
1 2 3
10 20 30
hello
world
hello"world

总结

以上所述是小编给大家介绍的Python基础教程之if判断,while循环,循环嵌套,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python list使用示例 list中找连续的数字
Jan 27 Python
使用Python判断质数(素数)的简单方法讲解
May 05 Python
Python编程实现二叉树及七种遍历方法详解
Jun 02 Python
Python实现矩阵转置的方法分析
Nov 24 Python
python实战教程之自动扫雷
Jul 13 Python
python程序变成软件的实操方法
Jun 24 Python
Python 获取windows桌面路径的5种方法小结
Jul 15 Python
Python获取时间戳代码实例
Sep 24 Python
快速查找Python安装路径方法
Feb 06 Python
keras 权重保存和权重载入方式
May 21 Python
Python-typing: 类型标注与支持 Any类型详解
May 10 Python
Python中的matplotlib绘制百分比堆叠柱状图,并为每一个类别设置不同的填充图案
Apr 20 Python
python3通过selenium爬虫获取到dj商品的实例代码
Apr 25 #Python
NumPy 数组使用大全
Apr 25 #Python
Python+OpenCV采集本地摄像头的视频
Apr 25 #Python
python利用selenium进行浏览器爬虫
Apr 25 #Python
python3人脸识别的两种方法
Apr 25 #Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
Apr 25 #Python
Python 给屏幕打印信息加上颜色的实现方法
Apr 24 #Python
You might like
PHP的Yii框架中Model模型的学习教程
2016/03/29 PHP
Yii2搭建后台并实现rbac权限控制完整实例教程
2016/04/28 PHP
JS 显示当前日期与时间的代码
2010/03/24 Javascript
javascript 判断中文字符长度的函数代码
2012/08/27 Javascript
扩展js对象数组的OrderByAsc和OrderByDesc方法实现思路
2013/05/17 Javascript
js判断上传文件的类型和大小示例代码
2013/10/18 Javascript
单击某一段文字改写文本颜色
2014/06/06 Javascript
jQuery实现提交按钮点击后变成正在处理字样并禁止点击的方法
2015/03/24 Javascript
实现前后端数据交互方法汇总
2015/04/07 Javascript
javascript实现textarea中tab键的缩排处理方法
2015/06/26 Javascript
jQuery+css实现的蓝色水平二级导航菜单效果代码
2015/09/11 Javascript
举例讲解如何判断JavaScript中对象的类型
2016/04/22 Javascript
Angular ng-repeat 对象和数组遍历实例
2016/09/14 Javascript
JavaScript原生节点操作小结
2017/01/17 Javascript
JavaScript获取URL参数的方法之一
2017/03/24 Javascript
js实现可以点击收缩或张开的悬浮窗
2017/09/18 Javascript
Vue.js递归组件实现组织架构树和选人功能案例分析
2019/07/03 Javascript
微信小程序 Storage更新详解
2019/07/16 Javascript
Nuxt.js实现一个SSR的前端博客的示例代码
2019/09/06 Javascript
Vue引入Stylus知识点总结
2020/01/16 Javascript
不刷新网页就能链接新的js文件方法总结
2020/03/01 Javascript
[01:30]DOTA2上海特锦赛现场采访 Loda倾情献唱
2016/03/25 DOTA
跟老齐学Python之数据类型总结
2014/09/24 Python
Python RuntimeError: thread.__init__() not called解决方法
2015/04/28 Python
Flask数据库迁移简单介绍
2017/10/24 Python
Python实现图片添加文字
2019/11/26 Python
HTC VIVE美国官网:VR虚拟现实眼镜
2018/02/13 全球购物
Traffic People官网:女式花裙、上衣和连身裤
2020/10/12 全球购物
SHEIN美国:购买时髦的女性服装
2020/12/02 全球购物
分公司总经理岗位职责
2014/07/30 职场文书
中国在我心中演讲稿
2014/09/13 职场文书
高一学年自我鉴定范文(3篇)
2014/09/26 职场文书
党员民主评议自我评价
2014/10/20 职场文书
2019大学生预备党员转正思想汇报
2019/06/21 职场文书
Python中X[:,0]和X[:,1]的用法
2021/05/10 Python
如何使用pdb进行Python调试
2021/06/30 Python