Python—基础篇(二)

前言

接续上一篇继续往后面的知识延伸…

一、if简单条件语句

1.1 多重判断
"""
高考成绩:
>= 740:清华大学
>= 650:人民大学
>= 500:河北大学
否则:家里蹲

1. if 和 elif 后面都要跟上条件表达式
2. 条件表达式比较的变量应该是相同的
3. if...elif...else 是一个整体,只要前面有一个条件满足,则后面就不再进行判断,代码直接结束
4. 多个 if 语句之间是没有任何关联的,前面的 if 条件满足了,后面仍会判断
"""
score=float(input('请输入你的高考分数:'))
if score >= 740:
    print('上清华')
elif score >= 650:
    print('人民大学')
elif score >= 500:
    print('河北大学')
else:
    print('家里蹲')
    
#运行结果:
请输入你的高考分数:400
家里蹲
请输入你的高考分数:550
河北大学
请输入你的高考分数:690
人民大学
请输入你的高考分数:750
上清华
1.2 if嵌套
#格式:
if 条件1:
    条件1成立执行的代码
    if 条件2:
        条件2成立执行的代码
# 考试案例:
ScoreWritten=float(input('输入笔试成绩:'))
if ScoreWritten >= 60:
    print('恭喜笔试通过')
    ScoreFace=float(input('输入面试成绩:'))
    if ScoreFace >= 60:
        print('恭喜,面试通过,等待录用结果')
    else:
        print('抱歉,没有通过面试')
else:
    print('笔试没有通过,无法参加面试')
    
#运行结果:
输入笔试成绩:70
恭喜笔试通过
输入面试成绩:80
恭喜,面试通过,等待录用结果
输入笔试成绩:50
笔试没有通过,无法参加面试
输入笔试成绩:60
恭喜笔试通过
输入面试成绩:20
抱歉,没有通过面试
# 猜拳案例:
# 程序随机生成0~2之间的一个数字
import random # 导入 random 模块
Player = int(input('请出拳:石头-0,剪刀-1,布-2:')) # 0代表石头,1代表剪刀,2代表布
Computer = random.randint(0,2)  # 电脑随机0~2数字
print(f'电脑出的是:{Computer}')
"""
用户赢:
Player-0,Computer-1
Player-1,Computer-2
Player-2,Computer-0
平局:
Player == Computer
电脑输:
与用户赢得代码反之
"""
if (Player == 0 and Computer  == 1) or (Player == 1 and Computer == 2) or (Player == 2 and Computer == 0):
    print('用户赢了')
elif Player == Computer:
    print('平局')
else:
    print('电脑赢了')

#运行结果:
请出拳:石头-0,剪刀-1,-2:0
电脑出的是:2
电脑赢了
请出拳:石头-0,剪刀-1,-2:1
电脑出的是:2
用户赢了
请出拳:石头-0,剪刀-1,-2:2
电脑出的是:0
用户赢了

二、三目运算符

  • 三目运算符 也叫三元运算符
  • 用来简化 if else 的, 建议使用于简单的 if else 语句
  • 格式:
    • 值1 if 条件 else 值2
# 举个简单的录取通知的案例
name = input('姓名:')
result = '恭喜你被清华大学录取了' if name == '张三' else '抱歉,未被录取'
print(result)

# 运行结果:
姓名:诸葛亮
抱歉,未被录取
姓名:张三
恭喜你被清华大学录取了
# 奈何卧龙诸葛亮,还是干不过法外狂徒张三啊(开玩笑)

三、任务清单

  1. 输入一个年份,判断是平年还是闰年,如果能被400整除,则为闰年,否则如果能被100整除则为平年,否则能被4整除则为闰年。

year = int(input('请输入一个年份:'))
if year % 400 == 0 and year % 100 != 0 or year % 4 == 0:
    print('闰年')
else:
    print('平年')
    
# 运行结果:
请输入一个年份:2021
平年
请输入一个年份:2012
闰年
  1. 同时用户输入两个数字,编写代码进行比较,如果相等,则输出”相等“,如果数字1大于数字2,则输出”第一个数字大于第二个数字“,如果数字1小于数字2,则输出”第二个数字大于第一个数字“。
num1 = float(input('输入数字:'))
num2 = float(input('输入数字:'))
if num1 > num2:
    print('第一个数字大于第二个数字')
elif num1 < num2:
    print('第二个数字大于第一个数字')
else:
    print('相等')

# 运行结果:
输入数字:10
输入数字:8
第一个数字大于第二个数字
输入数字:6
输入数字:11
第二个数字大于第一个数字
输入数字:3
输入数字:3
相等
  1. 游戏都有防沉迷系统,输入游戏时长,如果大于等于2个小时,提示”该歇歇了“,如果大于等于3个小时,提示”再玩眼睛就瞎了“,如果大于等于4个小时,提示”您的账号将强制下线“。
Time = int(input('输入游戏时长:'))
if Time >= 4:
    print('您的账号将强制下线')
elif Time >= 3:
    print('再玩眼睛就瞎了')
elif Time >= 2:
    print('该歇歇了')
else:
    print('祝您游戏愉快')
    
# 运行结果:
输入游戏时长:5
您的账号将强制下线
输入游戏时长:3
再玩眼睛就瞎了
输入游戏时长:2
该歇歇了
输入游戏时长:1
祝您游戏愉快
  1. 设计一个登录程序
  • 要求:输入用户名和密码
    • 设定正确的用户名和密码分别为 admin 和 111111
    • 如果用户名和密码都正确,输出“登录成功”
    • 如果用户名错误,输出“用户名错误“
    • 如果密码错误,输出”密码错误“
User = input('输入用户名:')
if User == 'admin':
    Password = input('输入密码:')
    if Password == '111111':
        print('登录成功')
    else:
        print('密码错误')
else:
    print('用户名错误')
    
# 运行结果:
输入用户名:bsdfjb
用户名错误
输入用户名:admin
输入密码:564
密码错误
输入用户名:admin
输入密码:111111
登录成功
  1. 输入三个整数x,y,z,请把这三个数由小到大输出
  • 不要使用 max 函数等方法,利用现有学习的内容实现
  • 不要输入重复数字
# 列表升序写法
x = int(input('输入整数:'))
y = int(input('输入整数:'))
z = int(input('输入整数:'))
list1=[x,y,z]
list1.sort()
print(list1)

# 运行结果:
输入整数:5 
输入整数:7
输入整数:11
[5, 7, 11]
输入整数:20
输入整数:6
输入整数:13
[6, 13, 20]

# 普通写法
x = int(input('输入整数:'))
y = int(input('输入整数:'))
z = int(input('输入整数:'))
if x>y>z:
    print(f'{z},{y},{x}')
elif x>z>y:
    print(f'{y},{z},{x}')
elif y>x>z:
    print(f'{z},{x},{y}')
elif y>z>x:
    print(f'{x},{z},{y}')
elif z>x>y:
    print(f'{y},{x},{z}')
elif z>y>x:
    print(f'{x},{y},{z}')
else:
    print('不能出现相同数字')

# 运行结果:
输入整数:5
输入整数:8
输入整数:10
5,8,10
输入整数:10
输入整数:5
输入整数:22
5,10,22
输入整数:13
输入整数:6
输入整数:8
6,8,13
输入整数:6
输入整数:6
输入整数:12
不能出现相同数字
  1. 依次输入三角形的三边长,判断能否生成一个三角形
  • 只要最长边长度小于另外两边边之和长即可
  • 不要使用 max 函数等方法,利用现有学习的内容实现
  • 不要输入重复边长
x = float(input('输入三角形边长:'))
y = float(input('输入三角形边长:'))
z = float(input('输入三角形边长:'))
if (x + y) > z and (x + z) > y and (y + z) > x:
    print('能生成一个三角形')
else:
    print('不能生成一个三角形')
    
# 运行结果:
输入三角形边长:5 
输入三角形边长:7 
输入三角形边长:15
不能生成一个三角形
输入三角形边长:6
输入三角形边长:8
输入三角形边长:10
能生成一个三角形

总结

持续的在前进中…

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张浔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值