一、Python-劳务报酬计算器(新手练习)
此计算器需要实现2个功能:
1、根据税前薪酬计算税后薪酬;
2、根据税后薪酬计算税前薪酬;
二、劳务报酬计算方法
1、劳务报酬所得征收范围
劳务报酬所得,是指个人从事劳务取得的所得,包括从事设计、装潢、安装、制图、化验、测试、医疗、法律、会计、咨询、讲学、翻译、审稿、书画、雕刻、影视、录音、录像、演出、表演、广告、展览、技术服务、介绍服务、经纪服务、代办服务以及其他劳务取得的所得。
2、计算公式
预扣预缴应纳税所得额 = 劳务报酬(少于4000元) - 800元
预扣预缴应纳税所得额 = 劳务报酬(超过4000元) × (1 - 20%)
应纳税额 = 应纳税所得额 × 适用税率 - 速算扣除数
3、说明:
1、劳务报酬所得在800元以下的,不用缴纳个人所得税;
2、劳务报酬所得大于800元且没有超过4000元,可减除800元的扣除费用;
3、劳务报酬所得超过4000元的,可减除劳务报酬收入20%的扣除费用;
个税计算器税率表(劳务报酬所得) 级数 当月应纳税所得额 税率(%) 速算扣除数
1 不超过20,000元 20 0
2 超过20,000元至50,000元的部分 30 2,000
3 超过50,000元的部分 40 7,000
4、说明
1、表中的含税级距、不含税级距,均为按照税法规定减除有关费用后的所得额。
2、含税级距适用于由纳税人负担税款的劳务报酬所得;不含税级距适用于由他人(单位)代付税款的劳务报酬所得。
三、代码示例
1.引入库
后面有使用sys.exit()关闭程序,所以需要导入sys库
import sys
2.代码
创建根据税前薪酬计算税后所得函数:
# 根据税前薪酬计算税后所得
def shuiqian_jsq(income):
if income <= 800:
shuihou = income
print("你的收入太低,不用交税")
elif income > 800 and income < 4000:
s = income - 800
shuihou = income - s*0.2
print("需要缴纳个税为: " + str(round(s*0.2,0)) + "元")
print("你的税后收入为: " + str(round(shuihou,0)) + "元")
else:
s = income*0.8
if s <= 20000:
shuihou = income - s*0.2
print("需要缴纳个税为: " + str(round(s*0.2,0)) + "元")
print("你的税后收入为: " + str(round(shuihou,0)) + "元")
elif s > 20000 and s <50000:
shuihou = income - s*0.3 + 2000
print("需要缴纳个税为: " + str(round(s*0.3 - 2000,0)) + "元")
print("你的税后收入为: " + str(round(shuihou,0)) + "元")
else:
shuihou = income - s*0.4 + 7000
print("需要缴纳个税为: " + str(round(s*0.4 - 7000,0)) + "元")
print("你的税后收入为: " + str(round(shuihou,0)) + "元")
创建根据税后所得计算税前薪酬函数:
# 根据税后所得计算税前薪酬
def shuihou_jsq(shuihou):
if shuihou > 62500:
shouru = shuihou/0.68 - 7000/0.68
print("你的税前收入为: " + str(round(shouru,0)) + "元")
elif shuihou > 25000 and shuihou <= 62500:
shouru = shuihou/0.76 - 2000/0.76
print("你的税前收入为: " + str(round(shouru,0)) + "元")
elif shuihou > 3360 and shuihou <=25000:
shouru = shuihou/0.84
print("你的税前收入为: " + str(round(shouru,0)) + "元")
else:
shouru = shuihou/0.8 - 160/0.8
print("你的税前收入为: " + str(round(shouru,0)) + "元")
以上打印结果时使用round()四舍五入并取整
创建选择计算方式函数:
def choice():
print('''
选择要执行的计算类型:
1.根据【税前收入】计算【税后收入】,适用于劳务报酬
2.根据【税后收入】计算【税后收入】,适用于劳务报酬
3.关闭程序
''')
I = input('请输入任务序号:')
if I == '1':
a = input('请输入税前收入(必须为整数):')
a = int(a)
shuiqian_jsq(a)
elif I == '2':
b = input('请输入税后收入(必须为整数):')
b = int(b)
shuihou_jsq(b)
elif I == '3':
print('关闭计算器')
sys.exit(0)
else:
print('没有这个选项')
创建一个无限循环用于重复使用
def show():
var = 1
while var == 1:
choice()
pass
执行
if __name__ == '__main__':
show()
总结
此例为新手自学示例练习