定义类的练习

本文通过编程模拟了《西游记》中取经人的历程,包括唐三藏、孙悟空、猪八戒和沙僧各自带着武器出发取经,途中遇到80个妖怪的挑战,神仙如观音等出手相助,最终成功抵达西天取得真经。通过这个故事,展示了类的创建和对象的交互,以及随机事件的模拟。
摘要由CSDN通过智能技术生成

1.练习:
西天取经:把经书传到东土大唐
取经人(类) - 实例化出4个对象
妖怪(类) - 81个 - 4个
神仙(类) - n个
剧情:

  1. 取经人出发取经:光头的 唐三藏 拿着一个 禅杖 出发去取经了,有毛的 悟空 拿着一个 金箍棒 出发去取经了,…
  2. 妖怪要吃取经人:金鱼姬 要吃 唐三藏,…
  3. 神仙帮助取经人: 观音 帮助 唐三藏 打败了 金鱼姬,…
  4. 取经人到达西天: 唐三藏 到达西天取到真经 …
class ScriptureRead:#定义取经人
    def __init__(self,features):#features特征
        self.features=features
    def go(self,name,tool):
        print('%s %s 拿着一个 %s出发去取经了'%(self.features,name,tool))
TangMonk=ScriptureRead('呲牙咧嘴的')
SunWukong=ScriptureRead('嬉皮笑脸的')
ZhuBaJie=ScriptureRead('长得像猪的')
MonkSha=ScriptureRead('胡子邋遢的')
TangMonk.go('唐三藏','棍子')
SunWukong.go('孙悟空','金箍棒')
ZhuBaJie.go('猪八戒','大刀叉')
MonkSha.go('沙僧','降妖宝杖')


class Monster:#定义妖怪类第一种方法
    def __init__(self,name):
        self.name=name
    def eat(self,name1):
        print('%s 要吃 %s'%(self.name,name1))
import random
i=1
while i<=80:
    yaoguai1='金鱼姬牛魔白骨精蜘蛛精红孩儿'
    yaoguai2='金鱼姬牛魔白骨精蜘蛛精红孩儿'
    qujing=['唐三藏','孙悟空','沙僧','孙悟空']
    num2=random.randint(1,2)   
    num=random.choice(yaoguai1)+''.join(random.sample(yaoguai2,num2))
    num1=random.choice(qujing)   
    yaoguai3=Monster(num)
    yaoguai3.eat(num1)
    i=i+1
'''
'''   
class Monster:#定义妖怪类第二种方法
    def eat(self,name1,name2):
        print('%s 要吃 %s'%(name1,name2))
import random
i=1
while i<=80:
    yaoguai1='金鱼姬牛魔白骨精蜘蛛精红孩儿'
    yaoguai2='金鱼姬牛魔白骨精蜘蛛精红孩儿'
    qujing=['唐三藏','孙悟空','沙僧','孙悟空']
    num2=random.randint(1,2)
    num=random.choice(yaoguai1)+''.join(random.sample(yaoguai2,num2))
    num1=random.choice(qujing)
    yaoguai3=Monster()
    yaoguai3.eat(num,num1)
    i=i+1
'''
'''
class Immortal:#定义神仙类
    def __init__(self,name):
        self.name=name
    def help(self,name1,name2):
        print('%s 帮助%s打败了 %s'%(self.name,name1,name2))
i=1
import random
while i<=10:
    shenxian=['太白金星','嫦娥','观音','如来']
    monster='金鱼姬牛魔白骨精蜘蛛精红孩儿'
    num1=random.choice(shenxian)
    num2=random.randint(2,3)
    num3=''.join(random.sample(monster,num2))
    shenxiantal=Immortal(num1)
    shenxiantal.help('唐僧',num3)
    i=i+1
qudaozhenjing=ScriptureRead('帅气的')
qudaozhenjing.daoda('唐三藏')
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值