前言
学无止境,无止境学。大家好,我是张大鹏,之前在抖音有5万多粉丝,不过现在不拍视频,专心写公众号了。笔者目前是高级Python工程师,之前是全栈工程师,主要擅长Golang和Python开发,对于Java,Vue,React也有一些研究。工作之余,喜欢学习和分享,希望能够通过此公众号”张大鹏520″,将自己学到的东西分享给大家,和大家一起交流,一起成长,一起进步。
今天要给大家分享的是《Python零基础入门教程03 条件判断》,这是一个系列的教程,从零基础到项目实战。在本教程中,我会给大家介绍Python条件判断。比如if语句的基本用法,多重判断,if嵌套,三目运算符等。还会配套相关的练习,大家学完以后可以自行通过练习题巩固和加深对知识点的理解。
如果大家需要本教程的PDF电子书或者完整的源码,可以在文末找到获取方式哈。
01 体验if语句
语法
if语句的作用:用户执行判断逻辑,根据条件执行不同的代码。基本语法如下:
if 条件:
条件成立执行的代码1
.....
示例代码
if True:
print('条件成立执行的代码1')
继续向下执行
当一个if语句执行完毕以后,程序还会继续往下执行。比如:
if True:
print('条件成立执行的代码1')
# 注意:在这个下方的没有加缩进的代码,不属于if语句块,即和条件成立与否无关
print('这个代码执行吗?')
这里两个print都能够执行到。如果if条件为false,则只会执行到第二个print,比如:
if False:
print('条件成立执行的代码1')
print('这个代码执行吗?')
条件可以是表达式
if语句的判断条件通常都是一个变量或者一个表达式,比如,我们录入一个数字,如果大于0则输出这个数字,否则什么都不做。
num = int(input("请输入一个整数:"))
if num > 0:
print(num)
条件可以是变量
if语句的判断条件可以是变量,比如我们输入一个年份,判断该年份是否为闰年,如果是闰年则输出该年份,否则什么都不做。
year = int(input("请输入一个年份:"))
is_leap_year = year % 4 == 0 and year % 100 != 0 or year % 400 == 0
if is_leap_year > 0:
print(year)
02 网吧上网案例
简单版
需求:定义一个age变量,存储用户的年龄。如果年龄大于或等于18,则输出“可以上网”,否则什么都不做。
age = 20
if age >= 18:
print('可以上网')
进阶版
需求:录入用户的年龄,判断该年龄是否大于或等于18岁,如果年龄大于或等于18,则输出“可以上网”,否则什么都不做。
age = int(input("请输入年龄:"))
if age >= 18:
print('可以上网')
双分支版
需求:录入用户的年龄,判断该年龄是否大于或等于18岁,如果年龄大于或等于18,则输出“可以上网”,否则输出“未成年”。
age = int(input("请输入年龄:"))
if age >= 18:
print('可以上网')
else:
print("未成年")
03 多重判断
语法
if语句是支持多重判断的。Python中没有switch语句,所以if多重判断同时也要作为switch来使用。基本语法如下:
if 条件1:
代码块1
elif 条件2:
代码块2
elif 条件3:
代码块3
else:
代码块4
整体执行逻辑如下:
-
如果条件1满足,则执行代码块1 -
如果条件1不满足,条件2满足,则执行代码块2 -
如果条件1和条件2不满足,条件3满足,则执行代码块3 -
如果所有条件都不满足,则执行代码块4
工作年龄示例
需求:录入一个年龄,判断是否为工作年龄。小于18为童工,大于或等于18且小于或等于60为合法,大于60为退休年龄。
age = int(input('请输入您的年龄:'))
# 童工
if age < 18:
print(f'您输入的年龄是{age}, 童工')
# 18-60 合法
elif (age >= 18) and (age <= 60):
print(f'您输入的年龄是{age}, 合法')
# 大于60 退休
elif age > 60:
print(f'您输入的年龄是{age}, 退休年龄')
判断季节示例
需求:录入一个月份,判断属于哪个季节。
month = int(input('请输入月份:'))
if month in (12, 1, 2):
print("冬天")
elif month in (3, 4, 5):
print("春天")
elif month in (6, 7, 8):
print("夏天")
elif month in (9, 10, 11):
print("秋天")
else:
print("错误的月份")
判断分数示例
需求:已知分数等级为优秀[90, 100],良好[80, 90),一般[60, 80),较差[0, 60)。请录入一个学生分数,判断该学生的分数属于哪个等级并输出。
score = int(input('请输入分数:'))
if 90 <= score <= 100:
print("优秀")
elif 80 <= score < 90:
print("良好")
elif 60 <= score < 80:
print("一般")
elif 0 <= score < 60:
print("较差")
else:
print("错误的分数")
04 if嵌套
语法
if语句是可以嵌套的,且理论上可以嵌套任意多级。基本语法如下:
if 外部条件:
if 内部条件:
代码块
坐公交车示例
需求:假设小张要去做公交车,基本的逻辑如下:
-
是否有钱 -
没钱不能坐车 -
投币后可以上车 -
是否有座位 -
站着 -
坐下 -
有座位 -
没座位 -
有钱且大于1元 -
没钱
录入小张身上的金钱余额和公交车上的空位数,并判断小张是否可以坐公交车,是否可以坐下。
示例代码:
money = float(input("请输入小张的钱包余额(元):"))
seat = int(input("请输入公交车上的空余座位数:"))
if money >= 1:
print('投币后可以上车')
# 判断是否能坐下
if seat > 0:
print('坐下')
else:
print('站着')
else:
print('没钱不能坐车')
05 猜拳游戏
需求
猜拳游戏是一种非常经典的小游戏,游戏双方出拳,分别可以出石头,剪刀,布。基本规则如下:
-
如果双方出拳相同,则平局 -
石头赢剪刀 -
剪刀赢布 -
布赢石头
请写一段代码,假设1表示石头,2表示剪刀,3表示布。电脑随机出拳,然后让用户出拳(录入一个整数),判断谁输谁赢。
示例代码
import random
computer = random.randint(1, 3)
player = int(input("请出拳(输入一个数字,1石头、2剪刀、3布):"))
fist_dict = {
1: "石头",
2: "剪刀",
3: "布"
}
print(f"电脑出拳:{fist_dict.get(computer)}, 玩家出拳:{fist_dict.get(player)}")
# 平局
if computer == player:
print("平局")
# 电脑赢
elif (computer == 1 and player == 2) or (computer == 2 and player == 3) or (computer == 3 and player == 1):
print("电脑赢")
else:
print("你赢了")
06 三目运算符
语法
Python中的三目运算符是将if语句在一行合并写的特殊写法,只适合代码量较少的条件语句。基本语法如下:
变量 = 值1 if 条件 else 值2
获取最大值示例
需求:录入两个整数,输出最大的那个数。
num1 = int(input("请输入第一个整数:"))
num2 = int(input("请输入第二个整数:"))
max_num = num1 if num1 > num2 else num2
print(f"{num1} 和 {num2} 最大的数是:{max_num}")
结语
关注我不迷路,欢迎关注我的微信公众号”张大鹏520″,如果您对此文章感兴趣,欢迎点赞收藏,留言评论。
文中所有代码,只需要打赏20元,然后留言评论“已打赏”,即可获取哦。
本文的PDF电子书版,只需要打赏3元,然后留言评论“已打赏”,即可获取哦。
写文章不容易,不喜勿喷哈,如果有想要学编程,学项目,或者在工作中有项目难以单独完成需要提供帮助的同学,欢迎私信我哈。生活不易,想要利用学到的编程知识,业余赚点零花钱。
接项目:网站开发,APP开发,各种管理系统开发。
带徒弟:Python编程教学,Golang编程教学,前端编程教学。
谢谢您!!!
原文始发于微信公众号(张大鹏520):Python零基础入门教程03 条件判断
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/48541.html