Python毕业设计可用小游戏:5个热门类型,引爆学生热情!每个类型附单独案例!_毕设可以做python小游戏吗

如果你也是看准了Python,想自学Python,在这里为大家准备了丰厚的免费学习大礼包,带大家一起学习,给大家剖析Python兼职、就业行情前景的这些事儿。

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

四、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

成为一个Python程序员专家或许需要花费数年时间,但是打下坚实的基础只要几周就可以,如果你按照我提供的学习路线以及资料有意识地去实践,你就有很大可能成功!
最后祝你好运!!!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

2.益智塔防类小游戏

下面是一个简单的益智塔防游戏的Python代码示例:

import random

class Tower:
    def \_\_init\_\_(self, name, damage, range):
        self.name = name
        self.damage = damage
        self.range = range

    def attack(self, enemy):
        if enemy.in_range(self.range):
            enemy.take_damage(self.damage)
            print(f"{self.name}攻击了{enemy.name},造成了{self.damage}点伤害!")
        else:
            print(f"{self.name}攻击失败,{enemy.name}超出了攻击范围!")

class Enemy:
    def \_\_init\_\_(self, name, health, speed):
        self.name = name
        self.health = health
        self.speed = speed

    def in\_range(self, range):
        return range >= self.speed

    def take\_damage(self, damage):
        self.health -= damage
        if self.health <= 0:
            print(f"{self.name}被击败了!")
        else:
            print(f"{self.name}受到了{damage}点伤害,剩余生命值:{self.health}")

def main():
    tower = Tower("箭塔", 10, 5)
    enemy = Enemy("敌人", 50, random.randint(1, 10))

    while enemy.health > 0:
        tower.attack(enemy)
        enemy.speed = random.randint(1, 10)

if __name__ == "\_\_main\_\_":
    main()

在这个示例中,我们定义了一个Tower类和一个Enemy类。Tower类表示塔的属性和行为,包括名称、伤害和攻击范围。Enemy类表示敌人的属性和行为,包括名称、生命值和速度。

在main函数中,我们创建了一个箭塔和一个敌人,并通过循环让箭塔攻击敌人,直到敌人的生命值降为0。每次攻击时,箭塔会判断敌人是否在攻击范围内,如果是则造成伤害,否则攻击失败。

这只是一个简单的示例,你可以根据自己的需求和想法来扩展和改进这个游戏。

3.MMO类型游戏

在这里插入图片描述

import random

class Player:
    def \_\_init\_\_(self, name):
        self.name = name
        self.level = 1
        self.exp = 0
        self.hp = 100
        self.max_hp = 100
        self.attack = 10
        self.defense = 5

    def gain\_exp(self, exp):
        self.exp += exp
        if self.exp >= 100:
            self.level_up()

    def level\_up(self):
        self.level += 1
        self.max_hp += 10
        self.hp = self.max_hp
        self.attack += 5
        self.defense += 2
        self.exp = 0

    def take\_damage(self, damage):
        actual_damage = max(0, damage - self.defense)
        self.hp -= actual_damage

    def is\_alive(self):
        return self.hp > 0

    def \_\_str\_\_(self):
        return f"{self.name} (Level {self.level})"

class Monster:
    def \_\_init\_\_(self, name, level):
        self.name = name
        self.level = level
        self.hp = 50 \* level
        self.attack = 5 \* level
        self.defense = 2 \* level
        self.exp_reward = 20 \* level

    def take\_damage(self, damage):
        actual_damage = max(0, damage - self.defense)
        self.hp -= actual_damage

    def is\_alive(self):
        return self.hp > 0

    def \_\_str\_\_(self):
        return f"{self.name} (Level {self.level})"

def main():
    player_name = input("请输入你的角色名字:")
    player = Player(player_name)

    monsters = [
        Monster("小怪兽", 1),
        Monster("中怪兽", 2),
        Monster("大怪兽", 3)
    ]

    while True:
        monster = random.choice(monsters)
        print(f"\n你遇到了一个{monster}!")
        print("你的状态:")
        print(player.__str__())
        print("怪物的状态:")
        print(monster.__str__())

        while player.is_alive() and monster.is_alive():
            action = input("\n请选择你的行动(1-攻击,2-逃跑):")
            if action == "1":
                monster.take_damage(player.attack)
                print(f"你对{monster.name}造成了{player.attack}点伤害!")
                if monster.is_alive():
                    player.take_damage(monster.attack)
                    print(f"{monster.name}对你造成了{monster.attack}点伤害!")
            elif action == "2":
                print("你逃跑了...")
                break
            else:
                print("无效的行动!")

        if player.is_alive():
            player.gain_exp(monster.exp_reward)
            print(f"\n你击败了{monster.name},获得了{monster.exp\_reward}点经验值!")
        else:
            print("\n你被击败了...")
            break

        if player.level == 4:
            print("\n恭喜你通关了!")
            break

if __name__ == "\_\_main\_\_":
    main()

这个小游戏中,玩家可以创建一个角色并与怪物战斗。玩家和怪物都有自己的属性,如等级、生命值、攻击力和防御力。玩家可以选择攻击怪物或逃跑。如果玩家击败怪物,将获得经验值并升级。如果玩家被怪物击败,游戏结束。当玩家达到等级4时,游戏通关。

4.养成类游戏

在这里插入图片描述

import random

class Pet:
    def \_\_init\_\_(self, name):
        self.name = name
        self.hunger = 0
        self.happiness = 100

    def feed(self):
        self.hunger -= random.randint(5, 15)
        if self.hunger < 0:
            self.hunger = 0
        self.happiness += random.randint(5, 10)
        if self.happiness > 100:
            self.happiness = 100

    def play(self):
        self.hunger += random.randint(5, 10)
        if self.hunger > 100:
            self.hunger = 100
        self.happiness += random.randint(10, 20)
        if self.happiness > 100:
            self.happiness = 100

    def status(self):
        print(f"{self.name}: Hunger: {self.hunger}, Happiness: {self.happiness}")

pet_name = input("Enter your pet's name: ")
pet = Pet(pet_name)

while True:
    action = input("Enter an action (feed, play, status, quit): ")
    if action == "feed":
        pet.feed()
    elif action == "play":
        pet.play()
    elif action == "status":
        pet.status()
    elif action == "quit":
        break
    else:
        print("Invalid action. Please try again.")

这个养成类游戏中,你可以给你的宠物喂食和玩耍,以提高它的饥饿度和幸福度。你可以通过输入不同的指令来执行不同的操作,如喂食、玩耍、查看宠物状态和退出游戏。

5.经济类游戏

在这里插入图片描述

import random

class Player:
    def \_\_init\_\_(self, name):
        self.name = name
        self.money = 1000
        self.inventory = {}

    def buy\_item(self, item, price):
        if self.money >= price:
            self.money -= price
            if item in self.inventory:
                self.inventory[item] += 1
            else:
                self.inventory[item] = 1
            print(f"{self.name}购买了{item},花费了{price}金币。")
        else:
            print(f"{self.name}的金币不足,无法购买{item}。")

    def sell\_item(self, item, price):
        if item in self.inventory and self.inventory[item] > 0:
            self.money += price
            self.inventory[item] -= 1
            print(f"{self.name}出售了{item},获得了{price}金币。")
        else:
            print(f"{self.name}的背包中没有{item},无法出售。")

    def show\_inventory(self):


现在能在网上找到很多很多的学习资源,有免费的也有收费的,当我拿到1套比较全的学习资源之前,我并没着急去看第1节,我而是去审视这套资源是否值得学习,有时候也会去问一些学长的意见,如果可以之后,我会对这套学习资源做1个学习计划,我的学习计划主要包括规划图和学习进度表。



分享给大家这份我薅到的免费视频资料,质量还不错,大家可以跟着学习

![](https://img-blog.csdnimg.cn/img_convert/21b2604bd33c4b6713f686ddd3fe5aff.png)



**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化学习资料的朋友,可以戳这里获取](https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 16
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值