当前位置 博文首页 > 文章内容

    第十一天 第八章 实战

    作者: 栏目:未分类 时间:2020-08-24 9:06:57

    本站于2023年9月4日。收到“大连君*****咨询有限公司”通知
    说我们IIS7站长博客,有一篇博文用了他们的图片。
    要求我们给他们一张图片6000元。要不然法院告我们

    为避免不必要的麻烦,IIS7站长博客,全站内容图片下架、并积极应诉
    博文内容全部不再显示,请需要相关资讯的站长朋友到必应搜索。谢谢!

    另祝:版权碰瓷诈骗团伙,早日弃暗投明。

    相关新闻:借版权之名、行诈骗之实,周某因犯诈骗罪被判处有期徒刑十一年六个月

    叹!百花齐放的时代,渐行渐远!



     一、大乐透号码生成器

    以下代码在MyModular同级目录中,文件名为:demo.py

     

    # 导入sys模块是python内置的
    import sys
    # 导入自定义模块所在的目录 路径为模块路径
    sys.path.append(r"D:\Python\python0\python0")
    # 导入模块
    import MyModular
    # Greatnumber=[]
    print('大乐透号码生成器')
    # 提示用户输入要随机大乐透的数量 并获取输入的内容
    time=input('请输入要生成的大乐透号码注数:')
    # 根据注数获取 大乐透号码
    Greatnumber=MyModular.Great_lotto(int(time))
    # 循环打印每个号码
    for i in range(0,int(time)):
        # 打印的时候 根据格式 显示号码
        print('{} {} {} {} {}       {} {}'.format(Greatnumber[i][0],Greatnumber[i][1],Greatnumber[i][2],Greatnumber[i][3],Greatnumber[i][4],Greatnumber[i][5],Greatnumber[i][6]))

     

    以下代码在MyModular文件夹中,文件名为:__init__.py

    # 导入随机模块
    import  random
    # 大乐透号码生成
    def Great_lotto(times):
      # 创建返回的号码空列表
      Greatnumber = []
      # 根据随机注释 循环
      for i in range(0,times):
        #创建空列表
        numbers = []
        # 创建数字为1到35的红色球列表
        roselist = list(range(1, 36))
        # 在红球列表中选取5个元素,生成红色球.
        numberred=random.sample(roselist, 5)
        # 创建数字为1到12的蓝色球列表
        bulelist=list(range(1,13))
        # 在蓝色球列表中 选取2个蓝色球,生成蓝色球
        numberbulle=random.sample(bulelist, 2)
        # 按照大小号排序 红球
        numberred.sort()
        # 按照大小号 排序蓝球
        numberbulle.sort()
        # 蓝球红球 组成随机的号码 列表
        numbers=numberred+numberbulle
        # 循环随机的号码
        for n in range(len(numbers)):
            # 判断号码是否<10
            if numbers[n]<10:
                # 当号码小于10的时候在数字前添加0
                numbers[n]='0'+str(numbers[n])
        # 添加到返回的号码列表中
        Greatnumber.append(numbers)
      # 返回得到的数据
      return Greatnumber

     

    二、春节集五福

    以下代码在JiFu同级目录中,文件名为:demo.py

    # 导入sys模块是python内置的
    import sys
    # 导入自定义模块所在的目录 路径为模块路径
    sys.path.append(r"D:\Python\python0\python0")
    # 导入模块
    import JiFu
    print('开始集福啦~~~')
    # 五福字典 保存拥有的五福数据
    fu={'爱国福':0,'富强福':0,'和谐福':0,'友善福':0,'敬业福':0}
    # 判断是否集齐五福
    while  JiFu.five_blessings(fu)==0:
        # 没有集齐五福提示用户
        input('\n按下<Enter>键获取五福')
        # 获取福卡
        Strfu=JiFu.Ji_Fu()[0]
        # 提示用户获取的的五福卡
        print('获取到:' +Strfu)
        # 在五福字典中 为获取到的福卡加1
        fu[Strfu] += 1
        # 打印拥有的福卡
        JiFu.fus(fu)
    print('\n恭喜您集成五福!!!')

    以下代码在JiFu文件夹中,文件名为:__init__.py

    # 导入随机模块
    import  random
    # 获取福卡方法
    def Ji_Fu():
        # 所有福卡列表
        fus=['爱国福','富强福','和谐福','友善福','敬业福']
        # 获取列表中的一项组成新的列表
        fu=random.sample(fus, 1)
        # 返回获取到的福卡
        return fu
    # 打印当前拥有的所有福卡 方法
    def fus(fu):
        print('当前拥有的福:')
        # 循环福卡字典
        for i, j in fu.items():
            # 打印福卡
            print(i,': ',j,'\t',end='')
    # 判断五福是否集齐方法 集齐返回1
    def five_blessings(fu):
        # 拥于判断是否集齐的标识 1代表集齐
        type=1
        # 循环 福卡字典 判断副卡是否集齐
        for i, j in fu.items():
            # 当有副卡是0张的时候不能合成五福
            if j==0:
              #不能集成五福的时候返回0
              type=0
        # 返回 判断是否集齐标识
        return type;

     

    三、封装用户的上网行为

    以下代码在Net同级目录中,文件名为:demo.py

    # 导入sys模块是python内置的
    import sys
    # 导入自定义模块所在的目录 路径为模块路径
    sys.path.append(r"D:\Python\python0\python0")
    # 导入税额模块
    import Net
    # 导入随机模块
    import  random
    # 上网用户
    name='小明'
    # 上网总时间
    time=0;
    print(name,'上网时间、行为统计:')
    # 打印用户上网时间行为,返回上网时间
    time += Net.net_play(1.5)
    time += Net.Watch_videos( 2)
    time += Net.Play_game( 3)
    time += Net.Study(2)
    # 根据上网时间超出8小时提示用户注意休息
    Net.times(time)

    以下代码在Net文件夹中,文件名为:__init__.py

    # 浏览网页
    def net_play(time):
      print('浏览网页',str(time)+'小时')
      return time
    # 看视频
    def Watch_videos(time):
        print( '看视频',str(time)+'小时')
        return time
    # 网游戏
    def Play_game(time):
        print('玩网络游戏',str(time)+'小时')
        return time
    # 学习
    def Study(time):
        print( '上网学习',str(time)+'小时')
        return time
    # 计算上网时间,上网时间达到或者多余8小时给出提示
    def times(time):
        if time>=8:
           print('今天上网时间共计'+str(time)+'小时,请保护眼睛,合理安排上网时间!')
        return time

    四、计算个人所得税

    以下代码在tax同级目录中,文件名为:demo.py

    # 导入sys模块是python内置的
    import sys
    # 导入自定义模块所在的目录 路径为模块路径
    sys.path.append(r"D:\Python\python0\python0")
    # 导入税额模块
    import tax
    # 提示用户输入工资
    monthMoney=int(input("请输入月收入:"))
    # 通过税收计算模块计算税额 并打印
    print("应纳个人所得税税额为%.2f" % tax.tax(monthMoney))

    以下代码在tax文件夹中,文件名为:__init__.py

    # 根据月收入计算税额
    def tax(monthMoney):
        # 扣除标准
        # 最低工资额 3500往下不扣税
        ds = 3500
        # 三险一金上线
        threeInsurancesUp = 7662
        # 养老保险
        yangLao = monthMoney * 0.08
        # 医疗保险
        yiLiao = monthMoney * 0.02
        # 失业保险
        shiYe = monthMoney * 0.005
        # 住房公积金
        homeMoney = monthMoney * 0.12
        # 计算应扣除 的 三险一金
        threeInsurances = yangLao + yiLiao + shiYe + homeMoney
        # 判断是否超出三险一金 上线
        if threeInsurances > threeInsurancesUp:
            # 超出等于默认值
            threeInsurances = threeInsurancesUp
        # 应纳税所得额= 扣除三险一金  - 扣除最低月收入 的收入部分
        payable = monthMoney - threeInsurances - ds
        # 初始化应交税
        single = 0
        # 根据收入判断 不同级别收入 扣除不同的税
        if payable < 1500:
            single = payable * 0.03 - 0
        elif payable >= 1500 and payable < 4500:
            single = payable * 0.1 - 105
        elif payable >= 4500 and payable < 9000:
            single = payable * 0.2 - 555
        elif payable >= 9000 and payable < 35000:
            single = payable * 0.25 - 1005
        elif payable >= 35000 and payable < 55000:
            single = payable * 0.3 - 2002
        elif payable >= 55000 and payable < 80000:
            single = payable * 0.35 - 5505
        elif payable >= 80000:
            single = payable * 0.45 - 13505
        # 如果 计算的single等于负数 返回0 证明收入不满3500
        if single < 0:
            single = 0
        # 返回应交的个税
        return single