python 根据工资绩效点发工资
功能需求:
某公司,账号余额有1万元,给20名员工发工资。
员工编号从1到20,从编号1开始,依次领工资,每个人领1000元。
领工资时,财务判断员工的绩效(1-10)(随机生成),如果低于5,不发工资,换下一位。
如果工资发完了,结束发工资。
代码实现:
import random # 账户余额 balance = 10000 # 员工列表,包含员工编号从 1 到 20 employees = list(range(1, 21)) # 循环发放工资,直到账户余额为 0 或者所有员工都领取了工资 while balance > 0 and employees: # 取出第一个员工,即员工编号最小的员工 employee = employees.pop(0) # 随机生成员工的绩效,范围是 1 到 10 performance = random.randint(1, 10) # 如果员工的绩效低于 5,不发工资,输出提示信息 if performance < 5: print(u"员工", employee, u"绩效低,不发工资。") else: # 如果员工的绩效高于等于 5,发放 1000 元工资,更新账户余额,输出提示信息 balance -= 1000 print(u"员工", employee, u"领取了 1000 元工资。公司账户余额:", balance, u"元。")
代码解释:
balance 变量存储账户余额,初始值为 10000 元。
employees 变量是一个列表,包含员工编号从 1 到 20。
while 循环会一直执行,直到账户余额为 0 或者所有员工都领取了工资。
employee = employees.pop(0) 从员工列表中取出第一个员工,即员工编号最小的员工。
performance = random.randint(1, 10) 随机生成员工的绩效,范围是 1 到 10。
if performance < 5: 如果员工的绩效低于 5,不发工资,输出提示信息。
else: 如果员工的绩效高于等于 5,发放 1000 元工资,更新账户余额,输出提示信息。