首页 > 分享 > Python宠物养成系统1.0

Python宠物养成系统1.0

class Pet():

def __init__(self, name, weight, height, satiety, mood, numeggs):

self.name = name

self.weight = weight

self.height = height

self.satiety = satiety

self.mood = mood

self.numeggs = numeggs

self.show()

def eat(self):

self.satiety += 1

print('你喂了一袋零食给'+str(self.name))

print()

print(str(self.name)+"开吃啦biajibiaji...")

print()

print(str(self.name)+'的体重增加了1kg')

print()

print(str(self.name)+'的身高增加了1cm')

print()

print(str(self.name)+'的心情增加了1')

print()

self.weight += 1

self.height += 1

self.mood += 1

self.show()

if self.satiety == 5:

self.egg()

self.satiety = 0

def bark(self):

print(str(self.name)+"要开始叫了...")

print()

print(str(self.name)+'的心情增加了1')

print()

if self.satiety >= 1:

print(str(self.name)+'的饱腹度减1')

print()

self.satiety -= 1

self.mood += 1

self.show()

def play(self,ans):

self.ans = ans

print(str(self.name)+'要开始玩啦!')

print()

if ans == '糖豆游戏':

import random

print("-- -- -- -- 糖豆游戏 -- -- -- --")

print("游戏规则:n桌上有20颗糖果。每次只准拿其中的1颗、2颗,最多3颗。n"+str(self.name)+"和你轮流拿,谁拿到了最后一颗,谁就获得了胜利!")

order = input("请选择谁先开始拿:(输入你或者"+str(self.name)+',输入错误/游戏结束后 将自动退出):')

count = 20

if order == "我":

while True:

userNum = int(input("请输入你拿的数量:"))

count = count - userNum

if count <= 0:

print("你拿到了最后一颗哦,你获胜了")

break

computerNum = random.randint(1, 3)

count = count - computerNum

if count == 0:

print(str(self.name)+"拿到了最后一颗哦,"+str(self.name)+"获胜")

break

print("你拿了"+str(userNum)+"颗糖豆,"+str(self.name)+"拿了{}颗,现在还剩下{}颗".format(computerNum, count))

elif order == str(self.name):

while True:

computerNum = random.randint(1, 3)

count = count - computerNum

if count == 0:

print(str(self.name)+"拿到了最后一颗哦,"+str(self.name)+"获胜")

break

else:

print(str(self.name)+"拿了{}颗,现在还剩下{}颗".format(computerNum, count))

userNum = int(input("请输入你拿的数量:"))

count = count - userNum

if count <= 0:

print("你拿到了最后一颗哦,你获胜了")

break

else:

print("你拿了{}颗,现在还剩下{}颗".format(userNum, count))

else:

print('已成功退出')

print()

elif self.ans == '林中探险':

scenes = {

'起点': {

'描述': '你来到了一个神秘的起点,四周围绕着一片茂密的森林.',

'命令': {'向东': '东边的路口', '向南': '南边的山洞', '向西': '西边的湖泊'}

},

'东边的路口': {

'描述': '你来到了一条崎岖的山路,路的尽头有一座古老的城堡.',

'命令': {'前往城堡': '城堡', '向西': '起点'}

},

'南边的山洞': {

'描述': '你来到了一个幽深的山洞,洞内传出阵阵奇怪的声音.',

'命令': {'探索山洞': '山洞', '向北': '起点', '向东': '神秘的洞穴'}

},

'西边的湖泊': {

'描述': '你来到了一个美丽的湖泊,湖水清澈见底,湖边有一座小木屋.',

'命令': {'进入小木屋': '小木屋', '向东': '起点'}

},

'神秘的洞穴': {

'描述': '你来到了一个神秘的洞穴,这里有着传说中的宝藏.',

'命令': {'寻找宝藏': '宝藏', '向西': '南边的山洞'}

},

'城堡': {

'描述': '你来到了一座古老的城堡,城堡里有一件神秘的宝藏.',

'命令': {'打开宝藏': '宝藏', '向南': '东边的路口', '向西': '起点'}

},

'山洞': {

'描述': '你来到了一个幽深的山洞,洞内藏着一份珍贵的地图.',

'命令': {'拿起地图': '地图上有毒,游戏结束', '向北': '起点'}

},

'小木屋': {

'描述': '你进入了一座小木屋,里面有一位神秘的老人.',

'命令': {'与老人交谈': '秘密', '离开小木屋': '西边的湖泊'}

},

'秘密': {

'描述': '老人告诉你,只有在特定的时间和地点,才能找到真正的宝藏.',

'命令': {'相信老人': '特定的地点', '不相信老人': '老人很生气,把你们赶走了,游戏结束'}

},

'特定的地点': {

'描述': '你来到了一处神秘的地点,地面上有一些奇怪的符号.',

'命令': {'破解符号': '宝藏', '向南': '起点'}

},

'宝藏': {

'描述': '你找到了宝藏,里面有一袋神秘的零食.',

'命令': {'离开洞穴': '祝贺你!!!你离开了洞穴,成功获得了零食,游戏结束', '向西': '神秘的洞穴'}

}

}

current_scene = '起点'

while True:

if '游戏结束' in current_scene:

print(current_scene)

break

else:

print(scenes[current_scene]['描述'])

print('可用命令:', list(scenes[current_scene]['命令'].keys()))

command = input('请输入命令:')

next_scene = scenes[current_scene]['命令'].get(command, None)

if next_scene is None:

print('命令不可用,请重新输入!')

continue

if next_scene == '游戏结束':

print('游戏结束!')

break

elif next_scene == '相信老人':

current_scene = '特定的地点'

continue

elif current_scene == '特定的地点' and next_scene != '破解符号':

print('你需要先破解符号才能离开这里!')

continue

elif current_scene == '神秘的洞穴' and next_scene != '宝藏':

print('你需要先找到宝藏才能离开这里!')

continue

else:

current_scene = next_scene

print(str(self.name)+'的心情增加了1')

print()

if self.satiety >= 1:

print(str(self.name)+'的饱腹度减1')

print()

self.satiety -= 1

self.mood += 1

self.show()

def egg(self):

print(str(self.name)+'的饱腹度已满5,'+str(self.name)+'下了一个蛋')

print()

self.numeggs += 1

self.show()

def walk(self,xyz):

self.xyz = xyz

if xyz == '银行':

print('你们来到了银行')

print()

class Accout():

def __init__ (self,name,password,balance,operration):

self.name = name

self.password = password

self.balance = balance

self.operration = operration

print("账户创建成功")

def check(self):

print("当前余额:",self.balance)

def save(self,money):

self.balance += money

self.operration = "存入" + str(money)

def withdraw(self,money):

if self.balance < money:

print("余额不足")

else:

self.balance -= money

self.operration = "取钱" + str(money)

def record(self):

f = open(self.name + ".txt","a")

text = self.name + "," + self.password + "," + str(self.balance) + "," + self.operration + "n"

f.write(text)

f.close()

name = input("请输入账户名称:")

password = input("请输入账户密码:")

balance = int(input("请输入账户余额:"))

user = Accout(name,password,balance,"创建账户")

user.record()

while True:

print("""

1.查询余额

2.存钱

3.取钱

exit退出

""")

num = input()

if num == 'exit':

print('已成功退出')

break

elif num == "1":

user.check()

elif num == "2":

money = int(input("请输入想存的钱数"))

user.save(money)

user.record()

elif num == "3":

money = int(input("请输入想取的钱数"))

user.withdraw(money)

user.record()

else:

print("请输入1,2,3")

elif self.xyz == '茶馆':

print('你们到茶馆去听了一会儿相声')

print()

import random

names = ["西门庆", "吴承恩", "贾宝玉", "武松", "潘金莲", "林黛玉", "唐僧", "孙悟空", "猪八戒", "沙和尚",'罗贯中','曹雪芹','白龙马']

places = ["黄鹤楼", "凤凰山", "西湖", "大观园", "狮子林", "灵感观", "五台山", "雷峰塔", "青城山",'黄山','泰山','华山','定军山','八宝金殿','午门']

weapons = ['长剑','长枪','长弓','金箍棒','禅杖','锄头','铲子','戒尺']

talks = ['拿命来','我投降','放肆','大胆','且慢']

sentence = "在{}的{}, {}和{}相遇. {}的{}遭遇了{}的入侵, {}的{}遭遇了{}的入侵. {}与{}正在打架, 打得两败俱伤, 最后反倒被{}捡了个便宜. 没想到{}趁火打劫, 把{}的{}给拆了, 这使{}非常震怒, 二话不说就把{}的{}夷为平地. 在{}的比武招亲大会上, {}{}一摆, 一个力劈华山, 朝{}当头劈下, {}大喝一声:'{}!', {}一举,就朝{}的眉心点去.".format(random.choice(places), random.choice(places), random.choice(names), random.choice(names), random.choice(names),random.choice(places),random.choice(names), random.choice(names), random.choice(places), random.choice(names), random.choice(names),random.choice(names),random.choice(names),random.choice(names),random.choice(names),random.choice(places),random.choice(names),random.choice(names),random.choice(places),random.choice(names),random.choice(names),random.choice(weapons),random.choice(names),random.choice(names),random.choice(talks),random.choice(weapons),random.choice(names),)

print(sentence)

print()

else:

print('你们逛了一圈就回来了')

print()

print(str(self.name)+'的心情增加了1')

print()

if self.satiety >= 1:

print(str(self.name)+'的饱腹度减1')

print()

self.satiety -= 1

self.mood += 1

self.show()

def show(self):

print("宠物的名字是:"+str(self.name)+","+str(self.name)+"的体重是:"+str(self.weight)+"kg,"+str(self.name)+"的身高是:"+str(self.height)+'cm,'+str(self.name)+'的饱腹度是:'+str(self.satiety)+','+str(self.name)+'的心情是:'+ str(self.mood)+','+'你拥有的蛋的数量是:'+str(self.numeggs))

print()

n = input('宠物的名字:')

print()

w = int(input('宠物的体重:'))

print()

h = int(input('宠物的身高:'))

print()

s = int(input('宠物的饱腹度:'))

print()

m = int(input('宠物的心情:'))

print()

ne = int(input('你拥有的蛋的数量:'))

print()

p = Pet(n, w, h, s, m, ne)

while True:

print('提示:有吃,叫,玩,散步四种输入方式.输入exit退出')

print()

ans = input()

print()

if ans == 'exit':

print('再见')

print()

break

elif ans == '吃':

p.eat()

elif ans == '叫':

p.bark()

elif ans == '玩':

ans = input('你要玩什么(糖豆游戏,林中探险):')

p.play(ans)

elif ans == '散步':

ans = input('你要去哪里散步(银行,茶馆):')

p.walk(ans)

else:

print('输入方式不正确,请重新输入.提示:有吃,叫,玩,散步四种输入方式.输入exit退出')

print()

continue

有点长......

这段Python代码实现了一个简单的宠物养成系统,允许用户与一个虚拟宠物进行互动。以下是对这段代码的简介:

宠物养成系统简介 1. 宠物类 (class Pet) 初始化 (__init__): 创建宠物实例时,需要提供宠物的名字、体重、身高、饱腹度、心情和拥有的蛋数量。显示信息 (show): 打印宠物的当前状态,包括名字、体重、身高、饱腹度、心情和蛋的数量。 2. 宠物行为  (eat): 宠物吃食物后,饱腹度、体重、身高和心情均会增加。如果饱腹度达到5,宠物会下蛋。 (bark): 宠物叫唤,可以增加心情,如果饱腹度大于等于1,则减少1。 (play): 用户可以选择与宠物玩“糖豆游戏”或“林中探险”。每种游戏都有其规则和互动方式。 糖豆游戏: 一个策略游戏,用户和宠物轮流拿糖豆,目标是拿到最后一颗糖豆。林中探险: 一个文本冒险游戏,用户通过选择不同的命令来探索不同的场景并寻找宝藏。散步 (walk): 用户可以带宠物去不同的地方散步,如银行或茶馆,每个地点都有其特定的互动。 3. 银行账户类 (class Accout) 在宠物散步到银行时,用户可以创建一个银行账户,进行余额查询、存款和取款操作,并记录交易。 4. 茶馆互动 当宠物散步到茶馆时,系统会随机生成一段包含古典小说人物和地名的趣味句子。 5. 主循环 程序运行时,用户可以通过输入不同的命令与宠物互动,如“吃”、“叫”、“玩”和“散步”。输入“exit”可退出程序。 总结

这个宠物养成系统提供了一个互动性强的虚拟环境,用户可以通过各种活动来培养和照顾宠物,同时体验不同的小游戏和情景互动。代码结构清晰,功能丰富,适合作为教学示例或进一步开发的基础。

相关知识

Python宠物养成系统3.0
宠物管理系统python
基于Python的猫狗宠物展示系统
python毕设宠物寄养系统程序+论文
python毕设 宠物寄养系统程序+论文
python毕设宠物领养系统程序+论文
python宠物信息管理系统的思路,方法与算法
python毕设宠物救助管理系统程序+论文
python毕设宠物托管系统程序+论文
计算机毕业设计基于Python的猫狗宠物展示系统

网址: Python宠物养成系统1.0 https://m.mcbbbk.com/newsview735514.html

所属分类:萌宠日常
上一篇: 我附近的宠物店:如何找到最好的宠
下一篇: Bu 小兔子