Python基础教程(9)使用if语句实现流程判断

Tanglu Python 2019-12-12 4289 0

一、Python if语句介绍

在Python中通过if语句来实现流程判断,Python中的if语句主要有以下特点:

· Python没有大括号、结束符

· Python if语句需要强制缩进,约定俗成使用4个空格或者一个TAB缩进,使结构更清晰,在同样缩进的语句里都属于if语句的结构中,满足条件则一起执行

· 每个条件后面需要有一个冒号":"代表该语句如果满足后接下来要做什么操作

· 条件判断使用两个等号“=="(一个等号代表的是变量赋值)


二、Python if语句格式

#单分支判断
if 条件:
    条件必须为真才会执行的语句
    
#else从句
if 条件:
    条件必须为真才会执行的语句
else:
    条件必须为真才会执行的语句

#多分支判断
if 条件1:
    条件1成立时需要执行的语句
elif 条件2:           
    条件2成立时需要执行的语句
elif 条件3:
    条件3成立时需要执行的语句
else:
    所有条件都不成立时执行的语句


Python if..in语法结构,主要用于判断元素是否存在于列表中

coders = ['phil', 'josh', 'david', 'becca', 'sarah', 'matt', 'danielle']
for coder in coders:
 if coder in favorite_languages.keys():
   print(f"Thank you for taking the poll, {coder.title()}!")
 else:
   print(f"{coder.title()}, what's your favorite programming language?")


Python if语句条件表达式,类似三目条件运算符,如果判断条件成立返回x否则为y,可以减少代码量

# 结果1 if 判断条件 else 结果2
age = 18
print("未成年不能访问本网站") if age < 18 else print("欢迎登录")


三、Python if语句示例

示例1

chinese = int(input('请输入你的语文成绩:'))
maths = int(input('请输入你的数学成绩:'))
english = int(input("请输入你的英语成绩:"))
avg_result = (chinese+maths+english)/3
if avg_result >= 90:
    print ("你的平均分是%s ,很厉害" %avg_result)
else:
    print ("你的平均分是%s ,请继续努力" %avg_result)


示例2

username = input("请输入用户名:")
password = input("请输入密码:")
if username.lower().strip() == "tanglu" and password == "123456":  #lower()方法会将输入转变为小写;strip()会自动去掉空格
    print("输入正确")
else:
    print("输入错误")


示例3

print ("有人敲门")
gender = input ("请问是男是女?")
if gender == "女":  #两个=号
    age = input ("你多大了?")
    if int(age) > 30:  #先转换类型
      print ("太大了,不喜欢")
    else:
      print ("美女请进")
else:
    print ("请你出去")


示例4

#判断用户输入的信息中是否包含了指定关键词,使用了if in结构
ads = input("请输入你的广告标语:")
if "最" in ads or "第一" in ads or "稀缺" in ads or "国家级" in ads:
    print("不合法的广告")
else:
    print("合法的广告")


示例5

判断用户输入的账号密码是否正确
import getpass  #导入一个模块,该模块可让用户输入的数据不再明文显示
username = 'linuxe'  #事先定义一个变量作为用户名
userpassword = 'abc123'  #事先定义一个变量作为密码
user_name = input("输入用户名:")  #用户自己输入的用户名
user_password = getpass.getpass("输入密码:")  #用户自己输入的密码,非明文显示
#下面开始进行判断,如果用户输入的用户名和密码与我们事先定义好的一致就返回Welcome,否则就是Invalid
if username == user_name and userpassword == user_password:
    print("Welcome user {name} login...".format(name=username))
else:
    print("Invalid username or password!")

评论