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发送以整个文件夹的内容为附件的邮件的教程
May 06 Python
Python编程实现正则删除命令功能
Aug 30 Python
Python3中的列表,元组,字典,字符串相关知识小结
Nov 10 Python
简单实现Python爬取网络图片
Apr 01 Python
Python登录注册验证功能实现
Jun 18 Python
详解django中url路由配置及渲染方式
Feb 25 Python
用pycharm开发django项目示例代码
Jun 13 Python
关于pycharm中pip版本10.0无法使用的解决办法
Oct 10 Python
Python完全识别验证码自动登录实例详解
Nov 24 Python
TensorFlow实现模型断点训练,checkpoint模型载入方式
May 26 Python
Python+pyftpdlib实现局域网文件互传
Aug 24 Python
python中remove函数的踩坑记录
Jan 04 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 删除cookie和浏览器重定向
2009/03/16 PHP
php解压缩zip和rar压缩包文件的方法
2019/07/10 PHP
one.php 多项目、函数库、类库 统一为一个版本的方法
2020/08/24 PHP
Jquery Ajax学习实例6 向WebService发出请求,返回DataSet(XML) 异步调用
2010/03/18 Javascript
让innerText在firefox火狐和IE浏览器都能用的写法
2011/05/14 Javascript
原生js实现查找/添加/删除/指定元素的class
2013/04/12 Javascript
jquery easyui滚动条部分设置介绍
2013/09/12 Javascript
node.js中的fs.exists方法使用说明
2014/12/17 Javascript
jquery判断单选按钮radio是否选中的方法
2015/05/05 Javascript
JS Array创建及concat()split()slice()的使用方法
2016/06/03 Javascript
简单的vue-resourse获取json并应用到模板示例
2017/02/10 Javascript
Javascript防止图片拉伸的自适应处理方法
2017/12/26 Javascript
JavaScript图片处理与合成总结
2018/03/04 Javascript
详解使用VueJS开发项目中的兼容问题
2018/08/02 Javascript
Vue开发中常见的套路和技巧总结
2020/11/24 Vue.js
[43:32]Winstrike vs VGJ.S 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
浅谈python可视化包Bokeh
2018/02/07 Python
Sanic框架路由用法实例分析
2018/07/16 Python
Python关于excel和shp的使用在matplotlib
2019/01/03 Python
Python3实现定时任务的四种方式
2019/06/03 Python
pip install python 快速安装模块的教程图解
2019/10/08 Python
python怎么调用自己的函数
2020/07/01 Python
详解pycharm的python包opencv(cv2)无代码提示问题的解决
2021/01/29 Python
Python实现图片指定位置加图片水印(附Pyinstaller打包exe)
2021/03/04 Python
HTML+CSS3模拟心的跳动实例代码
2017/09/05 HTML / CSS
Under Armour安德玛中国官网:美国高端运动科技品牌
2018/03/09 全球购物
全球最大的游戏市场:G2A
2018/07/05 全球购物
农行实习自我鉴定
2013/09/22 职场文书
教师简历自我评价
2014/02/03 职场文书
导师评语大全
2014/04/26 职场文书
和谐社区口号
2014/06/19 职场文书
我们的节日元宵活动方案
2014/08/23 职场文书
2015年机关后勤工作总结
2015/05/26 职场文书
导游词之新疆-喀纳斯
2019/10/10 职场文书
一篇文章带你搞懂Python类的相关知识
2021/05/20 Python
Golang 入门 之url 包
2022/05/04 Golang