python实战

这些都是我之前学习时练习过的python简单案例

每次更新两个实战代码

实战一:九九乘法口诀表
第一步:定义乘数x,即每一行中不变的那个数: 定义被乘数y,即每一行的乘以乘数 x,依次递增1,但             不超过x的数。
第二步: print 被乘数、乘数、积的相关信息,当乘数增加1时,输出一个换行。
第三步:格式化输出最大长度为6的字符串,右补空格,以显示整齐。
代码如下(example_ 99.py) :
 

# -*- coding: utf-8 -*-
for x in range(1, 10):  # x是乘数
    for y in range(1, x + 1):  # y是被乘数
        print(f"{y}x{x}={x * y}".ljust(6), end=' ')
        # 使用新特性格式化字符串,也可以使用format,%等格式化,其中ljust(6)左对齐,长度为6,右补空格
    print("")   #打印一个换行

python实战_第1张图片

实战二:发放奖金的梯度

企业发放的奖金根据利润提成,利润(I)低于或等于10万元时,奖金可提10%;
利润高于0万元低于 20万元时, 低于10万元的部分按10%提成,高于10万元的部分可提成7.5%;
20万元到40万元之间时,高于20万元的部分可提成5%; 40万元到60万元之间时,高于40
万元的部分可提成3%; 60万元到100万元之间时,高于60万元的部分可提成1.5%;高于100
万元时,超过100万元的部分按1%提成。计算给定的利润I,应发奖金总数。
本例技术点:利用数组(列表)来分界和定位。
代码如下(reward demo.py) :

# -*- coding: utf-8 -*-
arr = [1000000, 600000, 400000, 200000, 100000, 0]    #定义利润列表
rat = [0.01, 0.015,  0.03, 0.05, 0.075, 0.1]    #定义提成比例列表,与利润列表一一对应

while True:
    i = input('净利润(q退出): ')    #获取用户输入
    if i == 'q':
        exit (0)                   #退出程序
    if not i.isdigit():            #如果不是数字,则重新开始循环,重新输入数据
        continue
    reward = []                    #定义奖金列表,存放每一区间计算的奖金
    print("奖金为:",end='')       #不换行
    I=int(i)
    for idx in range(0, 6):
        if I >arr[idx]:
            reward.append((I - arr[idx]) * rat[idx])    #将每个区间的奖金存放在奖金列表里
            I = arr[idx]
    reward.reverse()               #逆序奖金列表,目的为方便输出
    if(len(reward)) == 1:          #如果只有一个,直接输出
        print(reward[0])
    else:
        print(" + ".join([str(num) for num in reward]),"=",sum(reward))
        #输出每个区间的奖金并求和

python实战_第2张图片

你可能感兴趣的:(python,python,开发语言)