编程极简入门(python)-07-批量处理

简介

本节继续介绍另外一个核心概念–批量处理
学完之后, 你可以轻松的让一个方法,或者一段代码执行千遍,万遍.

一 .计算各个子公司员工的公积金(公司所有员工)

任务要求
计算一家企业所有员工的公积金

员工工资子公司
刘一5000北京分公司
陈二6000北京分公司
张三7000北京分公司
李四8000北京分公司
王五9000北京分公司

代码实现

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

def countGjj(staffName,money,city):
    taxRate = 0  
    if city =='beijing':
        taxRate = 0.12 
    elif city =='tianjing':
        taxRate = 0.11 
    else:
        taxRate = 0.07
    tax = money * taxRate
    print u'员工:', staffName ,u'城市:',city,u',税率:',taxRate,u',工资:',money,u',需要缴纳的公积金:',tax 
    return tax

# 值方式 接受参数
countGjj(u'刘一',10000,'beijing')
countGjj(u'陈二',10000,'beijing')
countGjj(u'张三',10000,'beijing')
countGjj(u'李四',10000,'beijing')
countGjj(u'王五',10000,'beijing')

代码问题
每增加一个员工,都要添加一行代码 当公司有5千名员工时, 代码将会有5千行, 这样显然比较低效. 所以编程语言提供了批量处理(循环)的机制,解决这样的问题.

二 . 批量处理的概念

批量处理 – 重复执行指定区域内代码的机制.
所以当需要计算机帮我们多次处理的相同的任务, 我们就可以使用批量处理(循环). 譬如:计算每个员工的应缴公积金, 计算当天每个门店的营业收入等等.
语法 - 循环次数
在屏幕上打印10次

# -*- coding:utf-8 -*-
# 在屏幕打印10次
for num in range(10):
    str = 'hello world'
    print  str, u'打印', num+1 ,u'次'

num从0开始编号

语法 - 循环集合元素
在屏幕上打印集合中的每个元素.
这里有一个新的概念–”集合”, 可以理解为存放多个值的变量. 变量值也可以是数值型,字符型.

# -*- coding:utf-8 -*-
numbers = [1,2,3,4,5,6,7,8,9,10]
for num in numbers:
    str = 'hello world'
    print  str, u'打印元素',num

三 .实例 - 优化

代码实现
如果我们参考<<条件判断>>最后的例子,就能马上把代码写出来.

# -*- coding:utf-8 -*-
# 定义计算公积金方法 ,接收三个参数 员工姓名,工资,城市
def countGjj(staffName,money,city):
    taxRate = 0  
    if city =='beijing':
        taxRate = 0.12 
    elif city =='tianjing':
        taxRate = 0.11 
    else:
        taxRate = 0.07
    tax = money * taxRate
    print u'员工:', staffName ,u'城市:',city,u',税率:',taxRate,u',工资:',money,u',需要缴纳的公积金:',tax 
    return tax

# 定义员工姓名,员工工资 集合
staffNameList = [u'刘一', u'陈二',u'张三',u'李四',u'王五']
staffSalaryList = [5000,6000,7000,8000,9000,10000]
# 元素访问坐标,0为第一个元素.
index = 0 

# 开始循环操作
for oneStaff in staffNameList :
    # 员工姓名,工资
    staffName = staffNameList[index]
    staffSalary = staffSalaryList[index]
    # 计算公积金
    countGjj(staffName ,staffSalary,'beijing')
    index = index + 1

代码输出

员工: 刘一 城市: beijing ,税率: 0.12 ,工资: 5000 ,需要缴纳的公积金: 600.0
员工: 陈二 城市: beijing ,税率: 0.12 ,工资: 6000 ,需要缴纳的公积金: 720.0
员工: 张三 城市: beijing ,税率: 0.12 ,工资: 7000 ,需要缴纳的公积金: 840.0
员工: 李四 城市: beijing ,税率: 0.12 ,工资: 8000 ,需要缴纳的公积金: 960.0
员工: 王五 城市: beijing ,税率: 0.12 ,工资: 9000 ,需要缴纳的公积金: 1080.0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值