zoukankan      html  css  js  c++  java
  • python 学习记录-根据提成计算奖金

    题目:企业发放的奖金根据利润提成。利润低于或等于10万元时,奖金可提10%;利润高于10万,低于20万,低于10万的部分按10%提成,高于10万的部分,可提成7.5%;20万到40万之间时,高于20万的部分,可提成5%;40万到60万之间时高于40万的部分,可提成3%;60万到100万之间,高于60万的部分,可提成1.5%;高于100万时,超过100的部分按1%提成,从键盘输入当月利润,求应发奖金数?

    相关函数:

    1、range()----创建应整数列表,常用于for循环

    语法:range(start,stop[,step])

    参数说明:

    start:计数从start开始,默认是从0开始;stop:计数到stop结束,但不包括stop。如range(0,4)是[0,1,2,3]  ;step:步长,默认是1。如range(0,6)等价于range(0,6,1)

    2、sum()-----求和函数

    语法:sum(iterable[,start])

    参数说明:

    iterable:可迭代对象,如列表、元祖、集合; start:指定相加的参数,如果没有设置这个值,默认是0;

    3、map()

    语法:map(function,iterable,...)

    需传入一个函数,这个函数可以是内置的,也可以自定义或匿名函数;第二个参数时可迭代对象,如列表、字符串等。返回的是一个map对象,注意不是列表不能直接输出,可以通过for循环或者list()来显示。

    4、lambda()----匿名函数

    语法:lambda arg1,arg2,。。。,argN:expression

    5、zip()---将可迭代的对象作为参数,将对象中对应的元素打包成一个个元祖,然后返回有这些元祖组成的对象,我们可用list()转换来输出列表

    语法:zip(iterable,。。。)

    代码:

    w=int(input('输入利润: '))
    p=[1000000,600000,400000,200000,100000,0]
    t=[0.01,0.015,0.03,0.05,0.075,0.1]
    r=[400000,200000,200000,100000,100000]
    for j in range(len(p)):
        if w >p[j]:
            v1=(w-p[j])*t[j]
            print(v1)
            p_new=p[j+1:6]
            r_new=r[j:5]
            v2=sum(map(lambda x,y:x*y,zip(p_new,r_new)))
            print(v2)
            print(v1+v2)
            break

    运行提示:

        v2=sum(map(lambda x,y:x*y,zip(p_new,r_new)))
    TypeError: <lambda>() missing 1 required positional argument: 'y'

    但若改为v2=sum(map(lambda(x,y):x*y,zip(p_new,r_new)))也不行,

    会提示:    v2=sum(map(lambda (x,y):x*y,zip(p_new,r_new)))
                          ^
    SyntaxError: invalid syntax

    最后写了一个简单易懂的

    w=int(input('请输入当月利润,(单位:万元):'))
    p=[1000000,600000,400000,200000,100000,0]
    t=[0.01,0.015,0.03,0.05,0.075,0.1]
    r=0
    for j in range(len(p)):
        if w>p[j]:
            r+=(w-p[j])*t[j]
            w=p[j]
    print('奖金:',r)
  • 相关阅读:
    常用的长度单位
    HTML常用的列表标签
    html常用文本标签
    CSS选择器及优先级
    块级元素与内联元素
    移动端app打包
    内联框架
    Leetcode303.区域和检索-数组不可变
    Leetcode107.二叉树的层次遍历||
    Leetcode784.字母大小写全排列
  • 原文地址:https://www.cnblogs.com/zhuzhu1214/p/11678055.html
Copyright © 2011-2022 走看看