3个适合新手练习的python小游戏

 更新时间:2022年01月12日 08:55:55   作者:爱摸鱼的菜鸟码农  
这篇文章主要分析的是3个适合新手练习的python小游戏,初学者嘛就应该多练手,下文分享的python小游戏欢迎大家来玩,需要的小伙伴也可以参考一下

学Python之前我们先来几个简单的小游戏练练手,这三个小游戏一个比一个复杂,建议新手慢慢来:

1.猜拳

import random  #导入随机模块
 
num = 1
yin_num = 0
shu_num = 0
while num <= 3:
    if shu_num == 2 or yin_num == 2:
        break
    user = int(input('请出拳 0(石头) 1(剪刀) 2(布)'))
    if user > 2:
        print('不能出大于2的值')
    else:
        data = ['石头', '剪刀', '布']
        com = random.randint(0, 2)
        print("您出的是{},电脑出的是{}".format(data[user], data[com]))
        if user == com:
            print('平局')
            continue
        elif (user == 0 and com == 1) or (user == 1 and com == 2) or (user == 2 and com == 0):
            print('你赢了')
            yin_num += 1
        else:
            print('你输了')
            shu_num += 1
    num += 1

2.数字炸弹

import random
import time
 
bomb = random.randint(1, 99)
print(bomb)
start = 0
end = 99
while 1 == 1:
 
    people = int(input('请输入{}到{}之间的数:'.format(start, end)))
    if people > bomb:
        print('大了')
        end = people
    elif people < bomb:
        print('小了')
        start = people
    else:
        print('BOOM!!!')
        break
    print('等待电脑了输入{}到{}之间的数:'.format(start, end))
    time.sleep(1)
    com = random.randint(start + 1, end - 1)
    print('电脑输入:{}'.format(com))
    if com > bomb:
        print('大了')
        end = com
    elif com < bomb:
        print('小了')
        start = com
    else:
        print('BOOM!!!')
        break

3.赌大小

import time
import random
# 让用户注册
name = input('请填写用户名:')
age = input("{}您好,请输入您的年龄 : ".format(name))
user_info = {'name': name, 'age': int(age)}  # 用户信息
user_properties = ['X 1-5']  # 用于存放用户道具 默认道具
properties = ['X3 (250G)', 'X1-5 (300G)']  # 道具列表 显示用
 
# 根据用户年龄 给与不同的初始金币
if 10 < user_info['age'] < 18:
    glod = 1000
elif 18 <= user_info['age'] <= 30:
    glod = 1500
else:
    glod = 500
user_info['glod'] = glod
 
# 输出相关提示信息
print("{}您好,欢迎游玩本游戏,您的初始金币为:{}".format(user_info['name'], user_info['glod']))
print("\n")
time.sleep(1)
print('游戏说明'.center(50, '*'))
print('*'.ljust(53), '*')
print('*', end='')
print("电脑每次投掷三枚骰子,总点数>=10为大,否则为小".center(32), end='')
print('*')
print('*'.ljust(53), '*')
print('*' * 54)
print("\n")
 
#             开始游戏
result = input('是否开始游戏 yes or no :  ')
go = True
if (result.lower() == 'yes'):
    while go:
        dices = []
        # 开始投掷
        for i in range(0, 3):
            dices.append(random.randint(1, 6))
        total = sum(dices)  # 计算总和
        user_input = input('请输入big OR small : ')  # 等待用户输入
        u_input = user_input.strip().lower()
        time.sleep(1)
        # 判断用户输入
        print('骰子点数为:{}'.format(dices), end=' ')
        if (total >= 10 and u_input == 'big') or (total < 10 and u_input == 'small'):
            print('您赢了!!!')
            multi = 1  # 倍数
            if len(user_properties) > 0:  # 如果用户有道具 选择是否使用道具
                use_pro = input('是否使用道具: ')
                if use_pro.lower() == 'yes':
                    use_pro = int(input('请选择使用第几个道具{} :'.format(user_properties)))
                    use_pro -= 1
                    # 判断道具类型
                    if user_properties[use_pro] == 'X 3':
                        multi = 3
                        print('奖金翻3倍')
                    elif user_properties[use_pro] == 'X 1-5':
                        multi = random.randint(1, 5)
                        print('奖金翻{}倍'.format(multi))
                    user_properties.remove(user_properties[use_pro])  # 删除道具
 
            user_info['glod'] += 100 * multi;  # 金额增加
        else:
            print('您输了!')
            user_info['glod'] -= 100;  # 错误 用户金币减 100
 
        # 判断用户金币 是否够下次玩 不够则退出程序
        if (user_info['glod'] <= 0):
            print('您的金币已经用完,感谢您的游玩')
            break
 
        if user_info['glod'] % 1000 == 0:  # 用户金币 是1000的倍数是 可购买道具
            shop = input('您现在有金币:{},是否购买道具 yes or no: '.format(user_info['glod']))
            if shop.lower() == 'yes':
                good_num = int(input('请选择要购买第几个道具 {}'.format(properties)))
                if good_num == 1:
                    user_properties.append('X 3')  # 给用户添加道具
                    user_info['glod'] -= 250
                    print('购买成功!消耗金币250')
                elif good_num == 2:
                    user_properties.append('X 1-5')  # 给用户添加道具
                    user_info['glod'] -= 300  # 用户金币减 300
                    print('购买成功!消耗金币300')
                else:
                    print('没有该道具,您失去了这次机会')
        else:
            #  一直提示 太烦
            # conti = input('您现在有金币:{},是否继续游玩,yes or no: '.format(user_info['glod']))
            print('您现在有金币:{} '.format(user_info['glod']))
else:
    print('欢迎下次游玩,再见!')

到此这篇关于3个适合新手练习的python小游戏的文章就介绍到这了,更多相关python小游戏练习内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python实现Linux命令xxd -i功能

    Python实现Linux命令xxd -i功能

    这篇文章主要介绍了Python实现Linux命令xxd -i功能的相关资料,需要的朋友可以参考下
    2016-03-03
  • Python 十六进制整数与ASCii编码字符串相互转换方法

    Python 十六进制整数与ASCii编码字符串相互转换方法

    今天小编就为大家分享一篇Python 十六进制整数与ASCii编码字符串相互转换方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • python字符串的index和find的区别详解

    python字符串的index和find的区别详解

    这篇文章主要介绍了python字符串的index和find的区别,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • Python 复平面绘图实例

    Python 复平面绘图实例

    今天小编就为大家分享一篇Python 复平面绘图实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • Python web框架fastapi中间件的使用及CORS跨域问题

    Python web框架fastapi中间件的使用及CORS跨域问题

    fastapi "中间件"是一个函数,它在每个请求被特定的路径操作处理之前,以及在每个响应之后工作,它接收你的应用程序的每一个请求,下面通过本文给大家介绍Python web框架fastapi中间件的使用及CORS跨域问题,感兴趣的朋友一起看看吧
    2024-03-03
  • Python使用eval函数解析和执行字符串

    Python使用eval函数解析和执行字符串

    在Python中,eval函数是一个非常强大的函数,它可以将字符串作为代码进行解析和执行,本文主要介绍了如何使用eval函数解析和执行字符串,需要的可以了解下
    2024-01-01
  • 通过Python 获取Android设备信息的轻量级框架

    通过Python 获取Android设备信息的轻量级框架

    今天跟大家分享一下,如何通过Python实现一个轻量级的库来获取电脑上连接的Android设备信息,需要的朋友参考下吧
    2017-12-12
  • 支持PyTorch的einops张量操作神器用法示例详解

    支持PyTorch的einops张量操作神器用法示例详解

    这篇文章主要为大家介绍了支持PyTorch的einops张量操作神器用法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2021-11-11
  • 利用ctypes提高Python的执行速度

    利用ctypes提高Python的执行速度

    这篇文章给大家介绍了如何利用ctypes提高Python的执行速度,对大家学习使用python具有一定的参考借鉴价值。有需要的朋友们一起来看看吧。
    2016-09-09
  • pydantic进阶用法示例详解

    pydantic进阶用法示例详解

    这篇文章主要为大家介绍了pydantic进阶用法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03

最新评论