版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Python财务大数据基础流程控制主讲人:时间:XXXX2025.92025Python目录CONTENT010203列表认知与初步应用元组认知与初步应用字典认知与初步应用04综合应用案例05集合认知与初步应用学习目标知识目标素养目标技能目标能够根据实际问题需要应用选择结构、循环结构及其嵌套设计程序能够运用for循环语句生成数字列表能够准确使用break、continue语句进行程序的跳转,会使用pass空语句了解流程控制方法,掌握三种流程结构的特点了解标识符、缩进、引号、注释在Python语言中的表示方法结合实际问题研究算法,培养逻辑思维和辩证思想保证代码的正确可靠,培养精益求精,不断迭代的工匠精神Python内容框架PythonPython流程控制方法01PARTPython财务大数据基础PythonPython流程控制方法顺序执行按照程序语句的自然顺序,从上到下依次按行执行所有语句,对应程序设计中的顺序结构选择执行程序中含有条件语句,根据条件语句的结果选择执行部分语句,对应程序设计中的选择结构(分支结构)循环执行在一定条件下反复执行某段程序,对应程序设计中的循环结构,其中被反复执行的语句为“循环体”,决定循环是否中止的判断条件为“循环条件”选择结构的应用02PARTPython财务大数据基础Python选择结构的应用-单分支结构在Python中,实现条件选择,只能使用if语句来实现。if语句相当于“如果……就……”if表达式:代码块企业规定每天库存现金限额不能超过5000元,超出的部分出纳要及时送存银行。利用单分支结构设计现金余额检验系统。cash=float(input('请输入今日库存现金余额:'))ifcash>=5000:print('库存现金已经超出限额,请及时送存银行')运行结果:选择结构的应用-双分支结构在Python中,if语句后面有时也可以跟else语句,构成双分支结构。if…else语句相当于“如果……就……,否则……”
if表达式:
代码块1
else:
代码块2lim=5000#库存限额为5000cash=float(input('请输入企业当日库存现金余额:'))ifcash>=lim:cash-=limelse:cash=0print(f'请将{cash}元送存银行。')运行结果:选择结构的应用-多分支结构if表达式1:
代码块1elif表达式2:
代码块2…elif表达式n:
代码块nelse:
代码块n+1如果实务中的情况较为复杂,需要逐一分析执行条件和相应的执行内容,则需要设计多分支程序结构加以判断。Python中使用if…elif…else语句进行。选择结构的应用-多分支结构公司实施绩效考核政策,根据员工绩效评分确认等级:90分及以上为优秀,80-90为良好,60-80为合格,60分以下为不合格。请据此设计员工绩效等级查询系统score=eval(input('请输入您的绩效评分:'))ifscore>=90:print('恭喜,您的成绩为{}分,等级优秀。'.format(score))elifscore>=80:print('恭喜,您的成绩为{}分,等级良好。'.format(score))elifscore>=60:print('恭喜,您的成绩为{}分,等级合格。'.format(score))else:print('抱歉,您的成绩为{}分,没有通过考核'.format(score))运行结果:选择结构的应用-三种选择结构的嵌套单分支与双分支选择结构嵌套if表达式1:if表达式2:
代码块1else:
代码块2公司销售提成政策如下:月销售额在1000万元及以上,按销售额的3%提成,500-1000万按销售额1%,500万元以下无提成。请根据员工销售额设计提成计算工具amt=float(input('请输入销售额(万元):'))#输入销售额(万元)sale_a=0#定义提成初始值为0ifamt>=500:ifamt>=1000:sale_a=amt*0.03*10000#计算销售额大于等于1000万元时的提成else:sale_a=amt*0.01*10000#计算500万元<=销售额<=1000万元的提成print(f'销售提成为{sale_a}元')运行结果:选择结构的应用-三种选择结构的嵌套双分支与双分支选择结构嵌套if表达式1:if表达式2:
代码块1else:
代码块2else:if表达式3:
代码块3else:
代码块4供应商甲给出的优惠政策如下:一次性采购数量大于10000件,享受VIP待遇,如果此时采购总额超过10万元,享受85折优惠;不超过10万元享受9折优惠;如果一次性采购数量不超过10000件,总采购金额超过10万元,享受88折优惠,不超过10万元,享受99折优惠。本公司欲采购均价为9.5元的材料12000千克,应支付多少货款?选择结构的应用-三种选择结构的嵌套双分支与双分支选择结构嵌套供应商甲给出的优惠政策如下:一次性采购数量大于10000件,享受VIP待遇,如果此时采购总额超过10万元,享受85折优惠;不超过10万元享受9折优惠;如果一次性采购数量不超过10000件,总采购金额超过10万元,享受88折优惠,不超过10万元,享受99折优惠。本公司欲采购均价为9.5元的材料12000千克,应支付多少货款?num=12000price=9.5amt=num*price#定义金额计算公式ifnum>10000:ifamt>100000:amt1=amt*0.85#数量在1万以上且金额在10万元以上享受85折优惠else:amt1=amt*0.9#数量在1万以上且金额在10万及以下,享受9折优惠else:ifamt>100000:amt1=amt*0.88#数量在1万以下且金额在10万以上,享受88折优惠else:amt1=amt*0.99#数量在1万以下且金额在10万及以下,享受99折优惠print(f'本次采购需要支付{amt1}元')运行结果:本次采购需要支付96900.0元循环结构的应用03PARTPython财务大数据基础Python循环结构的应用-for循环for循环语句(一)基本语法for循环语句为重复一定次数的循环,适用于遍历可迭代对象中的元素遍历指沿着某一路线进行搜索,对路线中的每个节点都进行一次访问。可迭代对象一般为包含多个元素的数据容器,如字符串、列表、元组等。for循环语句就是依次把一个可迭代对象中的每个元素访问一遍for迭代变量in对象:
循环体代码块循环3次输出“我爱祖国”foriin[1,2,3]:#遍历列表print('我爱祖国')运行结果:循环结构的应用-for循环列表推导式:利用for循环语句块可以生成数字列表,且在Python中还提供了快速创建整数列表的结构,称为列表推导式。列表推导式不仅能快速生成列表,对数据进行运算后生成列表,还可与if语句结合,生成符合某些特殊条件的数字列表[表达式for变量in可迭代对象][表达式for变量in可迭代对象if条件判断]#创建1-5(含)的整数列表num1=[iforiinrange(1,6)]#创建1-5的整数列表print(num1)运行结果:[1,2,3,4,5]循环结构的应用-for循环#运用列表推导式对整数1-5进行平方后生成列表num2=[i2foriinrange(1,6)]#创建1-5平方后的列表print(num2)运行结果:[1,4,9,16,25]#对整数1-5中所有偶数进行平方后生成列表num_even=[i2foriinrange(1,6)ifi%2==0]#创建1-5中所有偶数平方的列表print(num_even)运行结果:[4,16]循环结构的应用-while循环while循环语句是一种在满足特定条件时反复执行某段代码的循环结构。只要条件语句为真,循环就会一直执行下去,直到条件语句不再为真为止。While后的条件表达式可加括号或者不加,但后面的冒号一定不能省略。当条件满足时,执行循环体代码。While语句常用于循环次数不确定的循环,通过设置计数器、退出标志及其他可以改变条件的语句,保障循环次数符合预期,避免进入无限循环。while条件表达式:
循环体代码块循环结构的应用-while循环#while语句筛选出1-10以内所有偶数,以列表形式返回num=[]i=1whilei<=10:ifi%2==0:num.append(i)i+=1print(num)运行结果:[2,4,6,8,10]
除了分支语句,else也可以用于循环语句中。else与while或for搭配使用,表示当循环的条件不成立时,系统应执行的操作循环结构的应用-while循环#利用while语句计算1-100的整数和num=0#定义一个用来储存累加结果的变量i=0#定义初始变量whilei<=100:#设定循环条件num+=i#计算累加结果i+=1#改变初始变量,以此控制循环次数满足预期print(num)#循环结束,打印循环累加结果运行结果为:5050循环结构的应用-循环嵌套Python语言允许一个循环体中嵌套另一个循环体,称为循环嵌套循环嵌套要求第一层循环必须完全包含第二层循环,一般有for嵌套,while嵌套以及for和while混合嵌套等形式
for循环变量1in遍历对象1:for循环变量2in遍历对象2:循环体代码块2
循环体代码块1(一)for嵌套在for循环体语句中又包含另外一个for循环体语句,称为for循环嵌套。for循环嵌套层数没有限制,内层循环的迭代次数可能会受到外层循环的影响;内层循环可以访问外层循环的索引值。循环结构的应用-循环嵌套#使用☀符号绘制直角三角形foriinrange(1,6):forjinrange(i):print("☀",end='')print()运行结果:循环结构的应用-循环嵌套(二)while嵌套在while循环语句中嵌套while循环语句while表达式1:while表达式2:
循环体代码块2
循环体代码块1#生成1-5的乘法表#设置乘法表的起始值和结束值start=1end=5#外层循环控制行i=startwhilei<=end:#内层循环控制列j=startwhilej<=end:#打印每个乘法表达式及其结果print(f"{i}*{j}={i*j}",end="\t")#使用\t进行列对齐j+=1#每打印完一行后换行print()i+=1运行结果循环结构的应用-循环嵌套while与for嵌套1.嵌套一在while循环语句中嵌套for循环语句
while表达式:for循环变量in遍历对象:
循环体代码块2
循环体代码块1#用于打印一个列表中每个元素的平方和立方#定义一个包含整数的列表my_list=[2,3,4,5]#使用while循环遍历列表中的每个元素i=0whilei<len(my_list):#对于列表中的每个元素,使用for循环计算其平方的结果forjinrange(2,4):#这里循环1次,计算平方square=my_list[i]j#计算当前元素的j次方print(square,end="")#打印结果,使用end=""使得输出在同一行print()#换行,以便下一个元素的计算结果在新行显示i+=1运行此代码的结果为逐行输出2-5四个数字的平方数:4,9,16,25循环结构的应用-循环嵌套while与for嵌套2.嵌套二在for循环语句中嵌套while循环语句for循环变量in遍历对象:while表达式:
循环体代码块2
循环体代码块1#用for-while嵌套输出列表中各元素的平方#定义一个列表
my_list=[2,3,4,5]#外层for循环用于遍历列表中的每个元素
foriinmy_list:#内层while循环用于计算当前元素的平方并打印结果
j=2whilej<3:#这里可以根据需要调整循环次数square=ijprint(square)j+=1外层for循环遍历列表my_list中的每个元素,内层while循环计算当前元素的平方并打印结果。可以在内层循环中调整循环次数,以计算不同次方数值。循环结构的应用-程序跳转语句-breakbreak语句可以完全中止当前循环,如果是循环嵌套,那么将跳出最内层的循环。break语句常与if选择语句配合使用1.while循环中的breakwhile表达式1:
执行代码if表达式2:break其中的表达式2为跳出循环的条件,当满足条件时,从当前循环体跳离2.for循环中的breakfor循环变量in遍历对象:
执行代码if表达式:break其中的表达式为跳出循环的条件,当满足条件时,从当前循环体跳离循环结构的应用-程序跳转语句-break#查找指定列表中的第一个偶数numbers=[1,3,5,8,9,12]#定义一个数列index=0whileindex<len(numbers):ifnumbers[index]%2==0:print("找到的第一个偶数是:",numbers[index])breakindex+=1运行结果:#输出列表中满足指定条件的元素my_list=[1,2,3,4,5]#定义一个列表
foriinmy_list:#使用for循环遍历列表中的每个元素print(i)#打印当前元素
ifi>2:#如果当前元素大于2,则跳出循环
break
运行此代码的结果为逐行输出1,2,3循环结构的应用-程序跳转语句-continuecontinue语句只能中止本轮次的循环,或者说跳过当前轮次循环体中剩余的语句,提前进入下一轮次的循环,而并不是从当前循环体中跳离;如果是循环嵌套,那么跳过的也只是最内层循环体当前轮次的剩余语句。continue语句也常与if选择语句配合使用。1.while循环中的continuewhile表达式1:
执行代码if表达式2:continue其中的表达式2为跳过本轮次循环的条件,当满足条件时,中止本轮次的循环,进入下一轮循环。2.for循环中的continuefor循环变量in遍历对象:
执行代码if表达式:continue其中的表达式为跳过本轮次循环的条件,当满足条件时,中止本轮次的循环。循环结构的应用-程序跳转语句-continue#打印1-7以内的奇数number=1whilenumber<=7:ifnumber%2==0:#如果是偶数number+=1#增加number的值应该放在continue之前continue#跳过当前循环的剩余部分,直接开始下一次循环print(number)#只有当number是奇数时才会执行到这里并打印number+=1#无论奇偶,在循环末尾增加number的值以准备下一次迭代此代码最终的运行结果为1,3,5,7#遍历一个列表,打印出其中的所有非零元素#定义一个包含零和非零数字的列表
numbers=[0,5,6,0,9,0,1]#使用for循环遍历列表中的每个元素
fornuminnumbers:ifnum==0:continue#如果当前元素是0,则跳过该元素继续下一次循环
print(num)#执行代码:打印非零元素
运行这段代码,依次输出列表中的非零元素循环结构的应用-空语句Pass是Python中的保留字。在语法结构中只起到占位符的作用,使语法结构完整,不报错如一般可用在if、for、while及函数与类的定义当中。在Python中,pass是一个空操作(或称为空语句),它不做任何事情。它通常用于语法上需要语句,但程序不需要任何操作的情况。定义循环结构的应用-空语句占位符当你定义一个函数、类或循环,但还没有决定具体的实现时,可以使用pass作为占位符初始化语句在类定义中,可以使用pass作为初始化方法的占位符循环如果你需要在循环中什么都不做,可以使用pass条件语句在条件语句中,pass可以用于表示“如果满足某个条件则不执行任何操作”异常处理在try/except块中,你可以使用pass来忽略特定的异常结构化代码正在开发一个模块,并希望保持其结构完整,即使某些函数或方法尚未完成,使用pass延迟执行使用pass作为一个延迟执行的标志应用场景综合应用实例05PARTPython财务大数据基础Python综合应用实例-个人所得税计算康乐公司根据最新的个人所得税法代扣代缴职工个人所得税。财务经理张馨然想利用Python工具编制个税计算器,用来计算各职工本期应纳所得税额,请帮助其完成相关设计任务:1.获取计算累计应纳税所得额的基本数据(累计收入,累计专项扣除,累计专项附加扣除,累计其他扣除)2.定义免征额(每月5000元,全年60000元)3.定义年累计应纳税所得额的计算公式4.先判断是否需要缴税5.再判断适用的预扣税率和速算扣除数6.定义本期累计应纳税额的计算公式7.定义本期应纳所得税额的计算公式8.根据2024年9月张馨然的工资数据(截止到9月末累计收入:97280元,累计专项扣除29493元,累计附加专项扣除13500元,累计其他扣除0元,累计已缴所得税额为1592.10元),打印其9月应预缴的个税额。【注意】个税计算公式累计应纳税所得额=累计收入(扣
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年江苏省宿迁市宿豫区四年级数学下学期期末调研模拟试题含解析
- 厂区交通安全管理知识
- 电动车充电安全规
- 同城配送安全防暑
- 跨境智算中心电算协同中跨国算力绿电调度碳排放权清缴-基于国际碳排放权清缴规则与算力绿电调度配额抵消机制规范分析
- 跨境算力中心与干冰发电协同中跨国干冰升华波动算力-基于国际干冰能源协会算力中心干冰升华发电调度指南规范分析
- 集体活动安全组织
- 小区高空抛物危害警示安全教育
- 人教版英语九上Unit 7词性转换练习题及答案
- 成都中医药大学学生作品展示
- 2026浙江杭州市公安局第二轮招聘警务辅助人员448人考试参考题库及答案详解
- 安全绳挂钩报警系统研制
- 展览业展台搭建与布置操作规范
- 中层干部竞聘演讲评分表
- SL-T+291-2020水利水电工程钻探规程
- JTG B02-2013 公路工程抗震规范
- 2024年中医经典《温病学》知识竞赛考试题库500题(含答案)
- (正式版)JBT 9229-2024 剪叉式升降工作平台
- 高架桥盖梁施工方案贝雷片支架
- 2024年江苏省农信机构职业技能大赛参考试题库(含答案)
- 工程造价专业教学资源库申报书-专业教学资源库备选项目材料
评论
0/150
提交评论