注意:
1、在程序开发过程中,通常在判断条件时,会需要同时判断多个条件,只有多个条件都满足时,才会执行后续的代码,此时就会用到逻辑运算符,与或非了,即:and 、or 、not。
2、pass:占位符,例如,当if语句内容为空的时候,如果没有代码程序就会报错,此时就可以使用pass作为占位符,避免程序报错。
3、判断一个字符串是否是回文数。
a = input("请输入要判断的字符串:")
if a == a[::-1]:
print("%s是回文数" % a)
else:
print("不是回文!")
结果:
请输入要判断的字符串:1221
1221是回文数
请输入要判断的字符串:abcd
不是回文
判断:就是说,如果条件满足,就做一件事,如果条件不满足,就做另外一件事,或者什么也不做。
if语句分为四种:单分支、双分支、多分支、if嵌套。
条件成立时,执行条件成立的代码,不成立时不管。
格式:
if 条件:
条件成立时执行的代码
例如:年满18岁就能进网吧。
age = int(input("请输入你的年龄:"))
if age >= 18:
print("允许进入网吧!")
结果:
请输入你的年龄:20
允许进入网吧!
改进成双分支,年满18岁就能进网吧,不满18就回家写作业。
age = int(input("请输入你的年龄:"))
if age >= 18:
print("允许进入网吧!")
else:
print("回家写作业")
结果:
请输入你的年龄:10
回家写作业
条件成立时,执行条件成立的代码,条件不成立时执行不成立的代码。即:条件成立时干一件事,条件不成立时干另外一件事。
格式:
if 条件:
条件成立时执行的代码
else:
条件不成立时执行的代码
例如:判断一个数的奇偶性。
num = int(input("请输入一个整数:"))
if num % 2 == 0:
print('%d为偶数!' % num)
else:
print('%d为奇数!' % num)
结果:
请输入一个整数:35
35为奇数!
请输入一个整数:0
0为偶数!
请输入一个整数:1
1为奇数!
例如:判断一个数为正数还是负数。
num = int(input("请输入一个整数:"))
if num >= 0:
print("正数")
else:
print("负数")
结果:
请输入一个整数:-1
负数
请输入一个整数:9
正数
有多个条件,不同条件下要执行不同的代码。
格式:
if 条件1:
条件1满足时,要做的事
elif 条件2:
条件2满足时,要做的事
elif 条件3:
条件3满足时,要做的事
..............
else:
所有条件都不满足时,要做的事
例如:输入一个年龄,判断属于什么人生阶段。
age = int(input("请输入年龄:"))
if age < 10 and age > 0:
print("小孩")
elif age >= 10 and age < 20:
print("青少年")
elif age >= 20 and age < 30:
print("年轻人")
elif age >= 30 and age < 50:
print("中年人")
elif age >= 50:
print("老年人")
else:
print("年龄输入的不对")
结果:
请输入年龄:45
中年人
请输入年龄:-5
年龄输入的不对
一个if语句里面又嵌套了if语句。在之前条件满足的前提下,再进行下一步的判断。
例如:判断0-100以内的任意一个数字能否被3整除。
num = int(input("请输入一个数字:"))
if num > 0 and num < 100:
if num % 3 == 0:
print("%d能被3整数" % num)
else:
print('%d不能被3整除' % num)
else:
print('%d不在0-100之间' % num)
结果:
请输入一个数字:95
95不能被3整除
请输入一个数字:-1
-1不在0-100之间
例如:简单计算器功能——实现两个数能进行加减乘除的运算。
num1 = int(input("请输入num1的值:"))
num2 = int(input("请输入num2的值:"))
a = input("请输入+-*/中的任意字符:")
if a == "+":
print(num1 + num2)
elif a == "-":
print(num1 - num2)
elif a == "*":
print(num1 * num2)
elif a == "/":
if num2 != 0:
print(num1 / num2)
else:
print("除数不能为0")
else:
print("a的值必须为+-*/")
结果:
请输入num1的值:5
请输入num2的值:0
请输入+-*/中的任意字符:/
除数不能为0
结果:
请输入num1的值:1
请输入num2的值:2
请输入+-*/中的任意字符:y
a的值必须为+-*/
要使用随机数,就要导入随机数的模块,然后调用randint函数,去随机生成一个随机数。
random.randint(a, b),返回[a,b]之间的一个整数,也包括ab这两个数。——闭区间
例如:随机产生1、2、3 。
import random
a = random.randint(1, 3) # 随机生成从1到3之间的一个随机的整数,包括1和3
例如:猜拳游戏。你和电脑石头剪刀布。
分析:
1石头、2剪刀、3布
石头赢剪刀——1赢2
剪刀赢布——2赢3
布赢石头——3赢1
import random
pc = random.randint(1, 3)
player = int(input("请出1、2、3:"))
if (pc == 1 and player == 2) or (pc == 2 and player == 3) or (pc == 3 and player == 1):
print("电脑出了%d,我出了%d,所以电脑赢!" % (pc, player))
elif pc == player:
print("电脑出了%d,我出了%d,平局!" % (pc, player))
else:
print("电脑出了%d,我出了%d,我赢了!" % (pc, player))
结果:
请出1、2、3:1
电脑出了3,我出了1,所以电脑赢!
改进版,把123换成汉字。
import random
pc = random.randint(1, 3)
# a = None
if pc == 1:
a = "石头"
elif pc == 2:
a = "剪刀"
else:
a = "布"
player = input("请从【石头、剪刀、布】中选择一个进行输入:")
if (a == "石头" and player == "剪刀") or (a == '剪刀' and player == "布") or (a == "布" and player == "石头"):
print("电脑出了%s,我出了%s,所以电脑赢!" % (a, player))
elif a == player:
print("电脑出了%s,我出了%s,平局!" % (a, player))
else:
print("电脑出了%s,我出了%s,我赢了!" % (a, player))
结果:
请从【石头、剪刀、布】中选择一个进行输入:石头
电脑出了石头,我出了石头,平局!
请从【石头、剪刀、布】中选择一个进行输入:石头
电脑出了布,我出了石头,所以电脑赢!
请从【石头、剪刀、布】中选择一个进行输入:石头
电脑出了剪刀,我出了石头,我赢了!
优先级:从高到低:
小括号()优先级最高,接着依次是:
算数运算符——>比较运算符——>赋值运算符——>逻辑运算符。
其中,算数运算符中的优先级从高到低依次是:幂**、乘除、求余、整除、加减。
比较运算符中的优先级从高到低依次是:<= < > >=、 == !=。
1、比较运算符:> >= < <= == !=
2、赋值运算符: += -= *= /= //= **=
a=a+b 等价于 a +=b 注意:+=之间没有空格。
a = 1
a += 2 # a=a+2
print(a)
结果:
3
条件1 and 条件2——两个条件必须同时满足。
例如:判断一个数是否在0-50之间。
num = float(input("请输入一个数:"))
if num >= 0 and num <= 50:
print("%.1f在0-50之间" % num)
else:
print("不在")
结果:
请输入一个数:-5
不在
请输入一个数:1.234
1.2在0-50这个范围内
例如:只有用户名为tom,密码为123才能登录成功,否则登录失败。
name = input("请输入账号:")
passwd = input("请输入密码:")
if name == 'tom' and passwd == '123':
print("登录成功")
else:
print("登录失败")
结果:
请输入账号:tom
请输入密码:123
登录成功
请输入账号:a
请输入密码:a
登录失败
条件1 or 条件2 ——只要有一个满足就可以
例如:是苹果或者香蕉那就买,其它水果那就不买。
fruit = input("请输入水果名称:")
if fruit == "apple" or fruit == "banana":
print("那就买")
else:
print("不买")
结果:
请输入水果名称:apple
那就买
请输入水果名称:orange
不买
not 条件——条件取反
例如:只要那卖的水果不是苹果那就买。 (即:是苹果就不买,其它水果那就买。)
fruit = input("请输入水果名称:")
if not fruit == "apple":
print("那就买")
else:
print("不买")
结果:
请输入水果名称:apple
不买
请输入水果名称:banana
那就买