04 . Python入门之条件语句(04a步兵战车)

网友投稿 272 2022-08-20

04 . Python入门之条件语句(04a步兵战车)

一、 Python条件语句

Python条件语句是通过一条或多条语句执行结果(True或False)来决定执行的代码块.

可以通过下图简单了解语句的执行过程

Python程序语言指定任何非0和非空(null)值为true,0或者null为false.

if 判断条件:

执行语句……

else:

执行语句……

Example1

flag = False

name = 'luren'

if name == 'python':

flag = True

print('welcome boss')

else:

print(name)

# 上面实例输出结果为

luren

IF语句的判断条件可以用>,<,==,>=,<=来表示其关系.

当判断条件为多个值时,可以使用以下方式

if 判断条件1:

执行语句1……

elif 判断条件2:

执行语句2……

elif 判断条件3:

执行语句3……

else:

执行语句4……

Example2

num = 5

if num == 3: # 判断num的值

print ('boss')

elif num == 2:

print ('user')

elif num == 1:

print ('worker')

elif num < 0: # 值小于零时输出

print ('error')

else:

print ('roadman') # 条件均不成立时输出

# 上面实例运行结果如下

roadman

由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。

二、if语句多个条件

num = 9

if num >= 0 and num <= 10: # 判断值是否在0~10之间

print ('hello')

# 输出结果: hello

num = 10

if num < 0 or num > 10: # 判断值是否在小于0或大于10

print ('hello')

else:

print ('undefine')

# 输出结果: undefine

num = 8

# 判断值是否在0~5或者10~15之间

if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):

print ('hello')

else:

print ('undefine')

# 输出结果: undefine

当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断。

if 嵌套

if 表达式1:

语句

if 表达式2:

语句

elif 表达式3:

语句

else:

语句

elif 表达式4:

语句

else:

语句

# Example3

num=int(input("输入一个数字:"))

if num%2==0:

if num%3==0:

print("你输入的数字可以整除2和3")

else:

print("你输入的数字可以整除2,但不能整除3")

else:

if num%3==0:

print("你输入的数字可以整除3,但不能整除2")

else:

print("你输入的数字不能整除2和3")

输入一个数字:15

你输入的数字可以整除3,但不能整除2

简单的语句组

var = 100

if ( var == 100):

print("变量var的值为100,Good bye!")

Example4,狗的年龄计算判断

age = int(input("请输入你家狗狗的年龄:"))

print("")

if age <= 0:

print("狗狗还没出生")

elif age == 1:

print("相当于14岁的人")

elif age == 2:

print("相当于22岁的人")

elif age > 2:

human = 22 + (age -2)*5

print("对应人类年龄:",human)

### 退出提示

input("点击enter键退出"

Example5,登录案例

#!/usr/bin/env python3

# -*- coding:utf-8 -*-

import getpass

username = input('请输入用户名: ')

password = input('请输入密码: ')

#假如不显示密码

#password = getpass.getpass('请输入密码: ')

if username == 'admin' and password == 'admin':

print('登录成功!')

else:

print('登录失败!')

Example6 猜数字

#!/usr/bin/env python3

# -*- coding:utf-8 -*-

import random

answer = random.randint(1, 100)

counter = 0

while True:

counter += 1

number = int(input('请输入一个数字: '))

if number < answer:

print('小了')

elif number > answer:

print('大了')

else:

print('恭喜你猜对了!')

break

print('你总共猜了%d次' % counter)

if counter > 7:

print('建议你回去再念一遍小学吧~')

Example7 计算月收入实际到手收入

#!/usr/bin/env python3

# -*- coding:utf-8 -*-

"""

输入月收入和五险一金计算个人所得税

"""

salary = float(input('本月收入: '))

insurance = float(input('五险一金: '))

diff = salary - insurance - 3500

if diff <= 0:

rate = 0

deduction = 0

elif diff < 1500:

rate = 0.03

deduction = 0

elif diff < 4500:

rate = 0.1

deduction = 105

elif diff < 9000:

rate = 0.2

deduction = 555

elif diff < 35000:

rate = 0.25

deduction = 1005

elif diff < 55000:

rate = 0.3

deduction = 2755

elif diff < 80000:

rate = 0.35

deduction = 5505

else:

rate = 0.45

deduction = 13505

tax = abs(diff * rate - deduction)

print('个人所得税: ¥%s元' % tax)

print('实际到手收入: ¥%.2f元' % (salary - insurance - tax))

​```~~~~

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:03 . Python入门之运算符(03年属什么今年多大)
下一篇:05 . Python入门值循环语句(05年属什么生肖年)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~