• 模拟职场人生


    题目:模拟人生

    要求:1、至少有两个角色

       2、玩的过程中,有冲突

       3、根据不同的交互,产生不同的行为。

       4、一定要用到面向对象语法和思想

    构造思路:

    主题是定义一个从小青梅竹马的情侣在职场上的人生经历

      首先找到共同的特点有金钱、名字、姓名、性别、角色,然后对这些共同的点构造一个类,首先定义一个方法谈话内容是否生气,显示不同的字体颜色,其次定义一个方法是金钱的加与减

      其次定义入职函数、选择函数、分手函数、继续好下去函数

      最后去创建对象并进行实例化

    构造流程图

    构造原码如下:

    #!/usr/bin/env python3.5
    # -*- coding:utf-8 -*-
    import time
    class Person(object):
        money = 0  # 初始化金钱
        def __init__(self, name, age, sex, role):
            '''
            :param name: 名字
            :param age:  年龄
            :param sex:  性别
            :param role: 角色
            :return:
            '''
            self.name = name
            self.age = age
            self.sex = sex
            self.role = role
            if self.role == "poor":
                self.money += 5000
                print("33[36;1mHI,大家好我叫[%s],今年[%s]岁,一个贫穷的男孩。我只有[%s]元钱,希望通过努力工作来改变自己的生活!33[0m"%(self.name,self.age,self.money))
            elif self.role == "beauty":
                self.money += 10000
                print("33[36;1mHI,大家好我叫[%s],今年[%s]岁,一个漂亮的女孩。我只有[%s]元钱,但是我很漂亮。我不希望永远到贫穷下去!33[0m"%(self.name,self.age,self.money))
            elif self.role == "rich":
                self.money += 1000000000
                print("33[36;1mHI,大家好我叫[%s],今年[%s]岁,一个富二代的男孩。我有车有房,喜欢泡漂亮的姑娘,我有这么多[%s]元钱!33[0m"%(self.name,self.age,self.money))
    
        def Talk(self,msg, tone = "None"):
            '''
            :param msg: 对话内容
            :param tone: 不同情绪字体颜色的变化
            :return:
            '''
            if tone == "None":
                print ("[33[30;35m%s]: %s33[0m" % (self.name, msg))
            elif tone == 'angry':
                print ("[33[31;1m%s]: %s33[0m" % (self.name, msg))
        def Assets(self, money, action):
            '''
            资产函数
            :param: money  钱
            :param: action  赚与花费
            '''
            #
            if action == 'earn':
                self.money += money
                print('33[32;1m%s赚了 %s 元!现在拥有 %s 元33[0m'
                        % (self.name, money, self.money))
            # 花费
            elif action == 'cost':
                self.money -= money
                print('33[31;1m%s花了 %s 元! 现在还剩余 %s 元33[0m'
                        % (self.name, money, self.money))
    def Induction():
        '''
        入职
        :return:
        '''
        print('' * 50)
        print('第一章:入职公司'.center(50))
        print('' * 50)
        print('33[20;1m小王和小丽是从小一起长大的青梅竹马,毕业后一起在同一家公司上班。33[0m'
              '33[20;1m
    他俩埋头苦干的工作,都想努力赚多点钱。33[0m'
              '33[20;1m
    两年都过去了,他们赚到了多少钱呢?33[0m')
        p1.Assets(80000, 'earn')
        b1.Assets(75000, 'earn')
        time.sleep(2)
    
    def Feelings():
        '''
        感情纠纷
        :return:
        '''
        print('-' * 150)
        print('第二章:感情危机'.center(50))
        print('-' * 150)
        b1.Talk("小王,我们恋爱那么久,都没车没房,生活怎么过啊?")
        p1.Talk("小丽,我们一起奋斗,以后生活肯定会过得更好的!")
        b1.Talk("不,现在我想结束这样的生活。小江对我很好,他有车有房,能给与我很多,所以我想他在一起!")
        r1.Talk("对,我是真心爱小丽的,你这么穷,就别做美梦了吧!")
        p1.Talk("小丽,我们在一起很开心啊!小江不是表面上那么好的人。")
        b1.Talk("那不是我要的生活,我们分手吧!")
        p1.Talk("给我考虑3天时间,到时候你我重新做决定吧!")
        b1.Talk("好吧,就给你3天时间!")
        time.sleep(1)
    
    def Break_Up():
        '''
        分手函数
        :return:
        '''
        print('-' * 150)
        print('第三章:分手结局'.center(150))
        print('-' * 150)
        p1.Talk("小丽,你既然决定要分手,好吧,那就分吧!")
        p1.Talk("总有一天你会后悔的,等着瞧")
        b1.Talk("小江,我们走!")
        print("伤心过后的小王,通过参加Python培训,他最终当上IT总监。他也买有车、房了。")
        print("有一天,小王开车路过的大街上,看到两个人吵架,挡住前方的路。他下车看看情况,让他大吃一惊!")
        p1.Talk("你们让一下,不要挡着路!让我开车过去")
        b1.Talk("小王,我是小丽啊,他就是小江。" )
        print("此时的他们,小江因为花心,花光了所有钱。小丽也因为小江也变得贫穷。因为钱,他们已经分手吵架了。")
        p1.Talk("你们的报应啊,早知道这样,何必当初呢!")
        b1.Talk("小王,我想再次和你在一起,好吗?")
        b1.Talk("别做梦啦,当初你因为钱而跟了小江,现在是回不来头了。说完开着车走了!")
        print("最终小丽不再美丽了,变回了穷女孩。而小江也因为过度玩乐,花光所有的钱,变成穷光蛋!")
        print('33[31;1m  剧 终  33[0m'.center(150, '*'))
    
    def  Together():
        '''
        在一起
        :return:
        '''
        print('-' * 150)
        print('第三章:完美结局'.center(150))
        print('-' * 150)
        print("小王和小丽选择了继续好下去,永不分开!")
        p1.Talk("小丽,你终于想通啦,我们才是天生一对!")
        b1.Talk("嗯,即使小江有车有房,但是他整天去泡多个姑娘,这种人不值得在一起!")
        b1.Talk("我们通过自己的努力,也会赚到很多钱的!")
        r1.Talk("小丽,我不是你说的那样的人,那些姑娘是主动约我的,我也无耐啊!")
        b1.Talk("小王,我们一起辞职吧!我不想在看到小江!")
        p1.Talk("好,我们一起努力,终有收获的!")
        print("小王和小丽通过自己的努力,最终也买车买房了。而小江因为整天泡妞,拥有的钱都花光了,变成了穷屌丝!")
        print('33[31;1m  剧 终  33[0m'.center(150, '*'))
    
    
    def Choose():
        '''
        冲突选择
        :return:
        '''
        print('-' * 150)
        print('约定的时间到了,你我重新选择:33[31;1m1 分手 2 继续好下去33[0m')
        while True:
            input_chose1 = input("小王,请选择1或者2:").strip()
            if input_chose1 == "":
                continue
            input_chose2 = input("小丽,请选择1或者2:").strip()
            if input_chose2 == "":
                continue
            if input_chose1 in ['1', '2'] and input_chose2 in ['1', '2']:
                if input_chose1 == '2' and input_chose2 == '2':   # 双方决定在一起
                    time.sleep(1)
                    Together()
                    break
                elif input_chose1 == '1' or input_chose2 == '1':  # 任意一方选择分手
                    time.sleep(1)
                    Break_Up()
                    break
            else:
                print('你选择的不正确,请重新选择!')
    
    
    if __name__ == '__main__':
        p1 = Person('小王', 26, 'man', 'poor')
        time.sleep(3)
        r1 = Person('小江', 27, 'man', 'rich')
        time.sleep(3)
        b1 = Person('小丽', 24, 'female', 'beauty')
        time.sleep(3)
        Induction()    # 入职公司部分
        time.sleep(3)
        Feelings()     # 感情危机部分
        time.sleep(3)
        Choose()
  • 相关阅读:
    下拉选择框,允许手动输入和过滤
    MVC数据绑定
    一个页面多个ng-app注意事项
    modal 多层弹窗 Maximum call stack size exceeded 解决方法
    VS10x CodeMap 注册码(key):
    VS2015卸载再安装
    VS2015无法创建工程
    解决VS2015版本key required问题手动方案
    猪猪公寓—事后诸葛亮
    猪猪公寓——测试总结
  • 原文地址:https://www.cnblogs.com/IPYQ/p/5515762.html
Copyright © 2020-2023  润新知