Python语言简洁生动,特别适合文科生在IT界学习入门。几十行代码就可以做出一个完整的爬虫脚本,开发效率很高!能在短时间内解决工作学习中遇到的各种疑难问题。(外语专业毕业,机缘巧合爱上编程,自学之路曲折痛并快乐着!)这里总结一下自学Python遇到的难点和重点,以及分享编码代码和重点总结,希望能给初学者一点启发和鼓励,也愿意和更多大神交流,帮助大家提高水平。上一篇文章分享了如何按照等级划分等级,只涉及一个条件因素。今天给大家分享下多条件判断的处理方法。下面用一个有趣的案例来说明和解释:截图如下:以上是一个对于员工考核数据,需要综合判断是拿全年终奖、半年终奖还是没有年终奖-通过“性别”和“绩效考核结果”两个字段进行年终奖金。年终奖金额大于或等于70,则发一半年终奖,其余不发年终奖如何使用Python根据生成正确的字段数据以上标准?下面展示一下具体的过程,其实也涉及到上次说的知识点,只是略有不同:切入指定路径读取并查看数据:写一个自定义的函数,有两个参数,用apply生成对应的fields:具体结果如下screenshot:Python代码如下:importpandasaspdimportosdefSet_Work_Path(x):try:os.chdir(x)route=os.getcwd()returnrouteexceptException:print("NoResult")work_path=r"E:\DATA\02AUG21"Set_Work_Path(work_path)data=pd.read_excel("Sample.xlsm",sheet_name="DATA-Python",header=0,index_col=None)print(data)defGet_Rate(df,x,y):ifdf[x]=="男"anddf[y]>=90:return"全年年终奖"elifdf[x]=="男"anddf[y]>=70:return"半年终奖"elifdf[x]=="男"anddf[y]<70:return"无年终奖"elifdf[x]=="女"anddf[y]>=85:return"全额年终奖"elifdf[x]=="女"anddf[y]>=60:返回"半年终奖"else:返回"无年终奖"data["rating"]=data.apply(Get_Rate,axis=1、args=("Gender","PerformanceAppraisalResults"))print(data)其实有更多维度,可以举一反三,即增加参数个数,同理。下面说说如何直接在EXCEL的世界里通过VBA来解决相关问题:写一个自定义函数,应用它直接生成相应的字段:VBA代码如下:FunctionJudgeRate(x,y)Application.ScreenUpdating=FalseIfx="男"Andy>=90ThenJudgeRate="全年终奖"ElseIfx="男"Andy>=70ThenJudgeRate="半年终奖"ElseIfx="男"Andy<70ThenJudgeRate="无年终奖"ElseIfx="female"Andy>=85ThenJudgeRate="全年终奖"ElseIfx="female"Andy>=60ThenJudgeRate="半年终奖"else:JudgeRate="无年终奖"EndIfApplication.ScreenUpdating=TrueEndFunction
