Python基础之if判断,while循环,循环嵌套
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循环,循环嵌套的更多相关文章
- .Net程序员之Python基础教程学习----判断条件与循环[Fourth Day]
今天学习Python的判断条件与循环操作. 一. 布尔变量: 在学习判断条件之前必须的了解bool变量,在Python中bool变量与C语言比较类似,与.net差别比较大,其中下面集中情况需要 ...
- python学习第四讲,python基础语法之判断语句,循环语句
目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...
- Python基础:条件判断与循环的两个要点
一.条件判断: Python中,条件判断用if语句实现,多个条件判断时用if...elif实现:看下面一段程序 #python 3.3.5 #test if...elif age = 20 if ag ...
- Python基础:条件判断 &&循环
1:条件判断 2:循环 2.1:for 2.2 while 小结: continue :跳出本次循环 进行下次循环, break :结束循环体.
- Python基础(6)--条件、循环
本文的主要内容是 Python 的条件和循环语句以及与它们相关的部分. 我们会深入探讨if, while, for以及与他们相搭配的else,elif,break,continue和pass语句. 本 ...
- python基础3 条件判断 if嵌套
if单向判断: stonenumber=6#为宝石数量赋值 if stonenumber>=6: #条件:如果你拥有的宝石数量大于等于6个 print('你拥有了毁灭宇宙的力量') #结果:显示 ...
- Python基础(条件判断,循环,占位符等)
Python 自动化 系统开发用的语言和自动化脚本可以不同 学习peython可用于: 网路爬虫,数据分,web开发,人工智能,自动化运维,自动化测试,嵌入式,黑客 第三方库比较全 脚本语言:功能单一 ...
- python基础之条件判断和循环
1.条件判断 age = 3 if age >= 18: print('adult') elif age >= 6: print('teenager') else: print('kid' ...
- Python基础教程-条件判断和循环
Python条件判断 在Python中用if语句实现: age = 20 if age >= 18: print 'your age is :',age print 'adult' 根据Pyth ...
随机推荐
- Exchange Server 内部版本号和发行日期汇总
本章节对Exchange 各个主要发行版进行简单汇总,分别列出每个服务包 (SP) 的内部版本号.累积更新 (CU) 或特定 Exchange 版本的更新汇总 (RU).汇总内容适用于Exchange ...
- JAVAFX之tableview界面实时刷新导致的内存溢出(自己挖的坑,爬着也要出来啊0.0)
这几天遇到了一个问题,不幸开发的一个cs架构的工具,客户端开启后,内存一直在缓慢增长最终导致进程卡死,花了4天时间,终于爬出来了... 客户端通过timer定时器每30秒查询一次数据库以及一些业务逻辑 ...
- cmd中输入net start mysql 提示:服务名无效或者MySQL正在启动 MySQL无法启动
在DOS窗口.gitbush以及一些可以使用的命令行工具的界面上,输入:net stop mysql.net start mysql时,总是提示:服务名无效. 出现提示如下: 原因是:因为net st ...
- 最短路问题之Bellman-ford算法
题目: 最短路:给定两个顶点,在以这两个点为起点和终点的路径中,边的权值和最小的路径.考虑权值为点之间的距离. 单源最短路问题,Bellman-ford算法 思路:每次循环检查所有边,可优化. 应用于 ...
- 从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之十 || AOP面向切面编程浅解析:简单日志记录 + 服务切面缓存
代码已上传Github+Gitee,文末有地址 上回<从壹开始前后端分离[ .NET Core2.0 Api + Vue 2.0 + AOP + 分布式]框架之九 || 依赖注入IoC学习 + ...
- Python基础(迭代器)
一.迭代器 概述: 迭代是Python最强大的功能之一,是访问集合元素的一种方式. 迭代器是一个可以记住遍历的位置的对象. 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能 ...
- docker初体验,搭建自用的gitlab服务
一.前言 git在如日中天的版本管理系统,现在如果不是工作在git版本管理系统下,几乎都不好意思给人打招呼.现在就有现成的互联网的git服务器提供给大家使用,例如号称程序的社交网络github. 正好 ...
- Spring Boot 中的静态资源到底要放在哪里?
当我们使用 SpringMVC 框架时,静态资源会被拦截,需要添加额外配置,之前老有小伙伴在微信上问松哥Spring Boot 中的静态资源加载问题:"松哥,我的HTML页面好像没有样式?& ...
- Linux - 通过SecureCRT的rz、sz和sftp实现文件的上传和下载
目录 1 通过rz/sz命令上传/下载 1.1 安装lrzsz软件 1.2 rz - 上传文件 1.3 sz - 下载文件 2 通过sftp上传/下载文件 2.1 关于SFTP的简介 2.2 SFTP ...
- Vue2.0源码阅读笔记(二):响应式原理
Vue是数据驱动的框架,在修改数据时,视图会进行更新.数据响应式系统使得状态管理变的简单直接,在开发过程中减少与DOM元素的接触.而深入学习其中的原理十分有必要,能够回避一些常见的问题,使开发变的 ...