龙空技术网

财务计算中的判断|条件语句

财码 127

前言:

当前姐妹们对“三元运算符和if语句的区别”大体比较讲究,姐妹们都想要学习一些“三元运算符和if语句的区别”的相关文章。那么小编同时在网络上收集了一些关于“三元运算符和if语句的区别””的相关内容,希望各位老铁们能喜欢,兄弟们一起来了解一下吧!

引言:

学完上一章节,我们已经知道了会计数据的存储类型和支持的算法,本章节,我们将学习如何用python程序设计一个算法。设计算法的两个关键工具是条件判断和循环,接下来,我们将一一讲解。

如果某些条件满足,才能做某件事情,而不满足时不允许做,这就是所谓的条件判断。不仅生活中有,在程序中“判断”功能也经常会用到。

01 if语句

if语句类似于语文中的如果...就...:“如果条件语句满足,就执行if语句下的代码块。”

if语法格式:

if 条件:条件成立时,要做的事情

我们来看两个例子:

year = 2019

# if判断开始

if year >=2019:

print('财务数据为2019及以后年度的数据')

#可以继续添加针对2019年后的数据的计算逻辑

# if判断结束

执行这段程序后,输出:'财务数据为2019及以后年度的数据'

year = 2018

# if判断开始

if year >=2019:

print('财务数据为2019及以后年度的数据')

#可以继续添加针对2019年后的数据的计算逻辑

# if判断结束

执行这段程序后,没有任何输出。

以上2个例子仅仅是year变量的值不一样,结果却不同;得出if判断语句的作用:当满足一定条件时才会执行那块代码,否则就不执行那块代码。

在财务数据计算中,经常用到的作为判断条件的变量有:年份、月份、公司、科目、报表项目、不同的公司属性等等。

注意:写if语句时,一定要对齐缩进。Python 最具特色的就是用缩进来写模块。缩进的空白数量是可变的(一般以4个空格代表一次缩进),但是所有代码块语句必须包含相同的缩进空白数量。

02 else语句

if子句后面有时候也可以跟着else语句。当if语句的条件为False时,else子句就会执行。else语句读起来是:“如果条件为真,执行这段代码。否则,执行那段代码”。

语法格式:

if 条件:满足条件时要做的事情else:不满足条件时要做的事情

注意,else语句后不包含条件。

我们将上文的例子拓展一下:

year = 2019

if year >=2019:

print('财务数据为2019及以后年度的数据')

#可以继续添加针对2019年后的数据的计算逻辑

else:

print('财务数据为2019以前年度的数据')

#可以继续添加针对2019年前的数据的计算逻辑

执行这段程序后,输出:财务数据为2019及以后年度的数据。

year = 2018

if year >=2019:

print('财务数据为2019及以后年度的数据')

#可以继续添加针对2019年后的数据的计算逻辑

else:

print('财务数据为2019以前年度的数据')

#可以继续添加针对2019年前的数据的计算逻辑

执行这段程序后,输出:财务数据为2019以前年度的数据

以上2个例子也是year变量的值不一样,结果不同;但是不满足if条件并非无输出,而是运行了else下面的语句。得出else判断语句的作用:当不满足if语句条件时,会运行else子句。

插播:三元运算符

运算符中有一种三元运算符,与if...else语句具有相似的作用,这里也一并给大家介绍一下。

三元运算符格式:条件成立的值 if 条件 else 条件不成立的值。

举个例子来三元运算符和普通if的区别:如果a大于1的话,c=a,否则c=b

三元运算符写法:

c = a if a>1 else b

if的写法

if a >1:

c = a

else:

c = b

if else语句从4行变成了1行,是不是简单很多呢~~

03 elif语句

if...else为非此即彼的判断,但是有时候你面临许多的可能性判断,这个时候就要用到elif了。elif语句类似于语文中的“否则如果”,总是跟在if或另一条elif语句后面。它提供了另一个条件,仅在前面的条件为False时才检查该条件。

语法格式:

if 条件1:满足条件1时要做的事情elif 条件2:满足条件2时要做的事情elif 条件3:满足条件3时要做的事情else:不满足以上所有条件时要做的事情

我们还是举计算固定资产折旧的例子,已知固定资产原值10000元,类型为机器设备。该公司固定资产折旧政策:“类别为机器设备,折旧年限为10年,残值率为5%;类别为办公设备,折旧年限为3年,无残值;其他设备折旧年限5年,无残值”。

根据该案例背景设计计算固定资产每个月折旧额的算法。

#变量赋值

amount =10000

FAtype='机器设备'

#进行判断

if FAtype=='机器设备':

year=10

srate=0.05

elif FAtype=='办公设备':

year=3

srate=0

else:

year=5

srate=0

#计算公式

dep= amount*(1- srate)/ year /12

dep= round(amount*(1- srate)/ year /12,2)

#输出:每月折旧额为79.17

04 if嵌套

我们会发现某个判断是在另外一个判断成立的基础上进行的,这样的情况该怎样解决呢?使用if嵌套就可完美解决。

语法格式:

if 条件1:满足条件1 做的事情if 条件2:满足条件2 做的事情elif/else:满足条件1但不满足条件2做的事情elif/else:不满足条件1 做的事情

上文的例子,修改“机器设备”类别的固定资产折旧政策为:“若原值大于10万,折旧年限为10年,残值率为5%,若原值小于10万,折旧年限为5年,残值率为3%”。那么算法可以这样设计:

#变量赋值

amount =10000

FAtype='机器设备'

#进行判断

if FAtype=='机器设备':

if amount>100000:

year=10

srate=0.05

else:

year=5

srate=0.03

elif FAtype=='办公设备':

year=3

srate=0

else:

year=5

srate=0

#计算公式

dep= round(amount*(1- srate)/ year /12,2)

print ('每月折旧额为', dep)

#输出:每月折旧额为161.67

课堂笔记

if用来对条件是否满足进行判断if有5种结构:if, if-else, if-elif, if-elif-else,if嵌套python中结构体由关键词和代码块缩进来控制结构的开始与结束

标签: #三元运算符和if语句的区别