人生重开模拟器是一款文字类小游戏. 玩家可根据提示输入角色的初始属性之后, 就可以开启不同的人生经历.  具体可以网上搜索“人生重启模拟器”,就能找到这款游戏的许多版本。

1.菜单栏的编写

菜单栏的编写是整个项目最简单的地方,只需要用到print函数

# 首先打印一个菜单栏
print('-----------------------------------------')
print('| 花有重开日,人无再少年 |')
print('| |')
print('| 欢迎来到人生重开模拟器 |')
print('-----------------------------------------')

2.玩家确定颜值、体质、智力、家境

首先我们定义四个变量,使用input函数进行输入,然后通过int转换为数字值

face = int(input("请输入你的颜值:"))
strong = int(input("请输入你的体质:"))
iq = int(input("请输入你的智商"))
home = int(input("请输入你的家境:"))

因为我们要求这四个属性值需要1-10,这四个值总和不超过20。所以需要用到循环条件判断,和break和continue语句

# 接下来,创建颜值,体质,智力,家境
# 这四个属性值都要在1-10之间,总和不要超过20 while True:
print("请输入你的属性值")
face = int(input("请输入你的颜值:"))
strong = int(input("请输入你的体质:"))
iq = int(input("请输入你的智商:"))
home = int(input("请输入你的家境:")) # 如果单个属性值超过10,提示用户重新输入
if (face > 10 or face < 1):
print("颜值输入错误,请重新输入")
continue
if (strong > 10 or strong < 1):
print("体质输入错误,请重新输入")
continue
if (iq > 10 or iq < 1):
print("智商输入错误,请重新输入")
continue
if (home > 10 or home < 1):
print("家境输入错误,请重新输入")
continue
if (face + strong + iq +home > 20):
print("属性值总和错误,请重新输入")
continue
print("颜值:",face, "体质:",strong,"智商:",iq,"家境:",home)

3.生成性别

random模块可以生成一个随机数

random.randint(beg,end)# 可以生成【beg,end】的随机数
#接下来生成角色性别
# 使用random可以生成随机数
point = random.randint(1,3)
if point == 1:
gender = '男'
print("你是男孩")
elif point == 2:
gender = '女'
print("你是一个女孩")
else:
gender = '男娘'
print("你是一个小男娘")

4.设定角色出生点

point = random.randint(1,3)
if home==10:
# 第一档
print("你出生在帝都,你的父母是高官政要")
home += 1
iq += 1
face += 1
elif 7 <= home <=9:
# 第二档
if point == 1:
print("你出生在大城市,你父母是公务员")
face += 2
elif point == 2:
print("你出生在大城市,你父母是企业高管")
home += 2
else:
print("你出生在大城市,你父母是大学教授")
iq += 2
elif 4 <= home <=6:
# 第三档
if point == 1:
print("你出生在三线城市,你父母是个体户")
home +=1
elif point == 2:
print("你出生在三线城市,你父母是医生")
face += 1
else:
print("你出生在三线城市,你父母是教师")
iq += 1
else:
# 第四档
if point == 1:
print("你出生在农村,你父母是农民")
strong += 1
face -= 2
elif point == 2:
print("你出生在穷乡僻壤,你父母是无业游民")
home -= 1
else:
print("你出生在镇上,你父母感情不和")
strong -= 1
print(f"当前的属性:颜值:{face},体质:{strong},智商:{iq},家境:{home}")

5.各个年龄段的变化

5.1 幼年阶段

# 幼年阶段
for age in range(1, 11):
info = f'你今年{age}岁, '
point = random.randint(1, 3)
# 性别触发的事件
if gender == 'girl' and home <= 3 and point == 1:
info += '你的家里人重男轻女思想非常严重, 你被遗弃了!'
print(info)
print('游戏结束!')
sys.exit(0)
# 体制触发的事件
elif strong < 6 and point < 3:
info += '你生了一场病, '
if home >= 5:
info += '在父母的细心照料下, 你康复了'
strong += 1
home -= 1
else:
info += '你的父母没精力管你, 你的身体状况更遭了'
strong -= 1
# 颜值触发的事件
elif face <= 4 and age >= 7:
info += '你长得太丑了, 别的小朋友不喜欢你, '
if iq > 5:
info += '你决定用学习填充自己!'
iq += 1
else:
if gender == 'boy':
info += '你和别的小朋友经常打架!'
strong += 1
iq -= 1
else:
info += '你经常被别的小朋友欺负'
strong -= 1
# 智力触发的事件
elif iq < 5:
info += '你看起来傻傻的, '
if home >= 7 and age >= 6:
info += '你的父母把你送到更好的学校学习'
iq += 1
elif 4 <= home <= 6:
if gender == 'boy':
info += '你的父母鼓励你多运动, 争取成为运动员'
strong += 1
else:
info += '你的父母鼓励你多打扮自己'
face += 1
else:
info += '你的父母为此经常吵架'
if point == 1:
strong -= 1
elif point == 2:
iq -= 1
else:
pass
# 健康成长事件
else:
info += '你健康成长, '
if point == 1:
info += '你看起来更结实了'
strong += 1
elif point == 2:
info += '你看起来更好看了'
face += 1
else:
info += '这一年没有特别的事情发生'
# 打印这一年发生的事情
print(info)
print(f'颜值: {face}, 体制: {strong}, 智力: {iq}, 家境: {home}')
print('---------------------------------------------')
# 为了方便观察, 加一个sleep
time.sleep(2)

5.2 青年阶段

# 青年阶段
for age in range(11, 21):
info = f'你今年{age}岁, '
point = random.randint(1, 3) # 教育触发的事件
if iq >= 7 and point == 1:
info += '你在学校表现突出, 被选为班长!'
if gender == 'boy':
strong += 1
else:
face += 1
elif iq < 5 and point == 2:
info += '你的学习成绩不理想, 需要更多努力'
if gender == 'boy':
strong -= 1
else:
face -= 1 # 职业选择事件
elif age >= 16:
if iq >= 8 and strong >= 7:
info += '你的学业成就优秀, 获得了奖学金, 考上了理想的大学!'
iq += 1
strong += 1
elif iq < 5 and strong < 5:
info += '你无法考上理想的大学, 面临职业选择困难'
if gender == 'boy':
strong -= 1
else:
face -= 1
else:
info += '你选择了一份普通的工作, 开始了职业生涯' # 情感生活事件
elif age >= 18:
if point == 1:
info += '你谈了一场甜蜜的恋爱, 与心爱的人交往中'
if gender == 'boy':
strong += 1
else:
face += 1
elif point == 2:
info += '你的恋爱关系出现了问题, 面临分手'
if gender == 'boy':
strong -= 1
else:
face -= 1 # 健康成长事件
else:
info += '你在青年阶段健康成长, '
if point == 1:
info += '你继续保持健康的体魄'
strong += 1
elif point == 2:
info += '你外貌更加成熟美好'
face += 1
else:
info += '这一阶段没有特别的事情发生' # 打印这一年发生的事情
print(info)
print(f'颜值: {face}, 体制: {strong}, 智力: {iq}, 家境: {home}')
print('---------------------------------------------')
# 加入延迟以模拟事件发生
time.sleep(2)

5.3中年阶段

# 中年阶段
for age in range(21, 61):
info = f'你今年{age}岁, '
point = random.randint(1, 3)
# 职业发展事件
if age >= 21 and age <= 40:
if iq >= 8 and strong >= 7:
info += '你在职场上取得了显著成就, 获得了晋升!'
iq += 1
strong += 1
home += 1
elif iq < 5 and strong < 5:
info += '你在职场上遇到了挑战, 需要调整策略'
iq -= 1
strong -= 1
home -= 1
else:
info += '你的职业生涯稳步发展' # 家庭生活事件
elif age >= 25:
if point == 1:
info += '你的家庭生活幸福美满'
home += 1
elif point == 2:
info += '你的家庭出现了一些小矛盾, 需要沟通解决'
home -= 1 # 健康问题
if age > 40:
if point == 1:
info += '你开始注重健康, 定期进行体检'
strong += 1
elif point == 2:
info += '你遇到了健康问题, 需要及时治疗'
strong -= 1 # 退休生活准备
if age >= 55:
info += '你开始考虑退休生活, 准备享受晚年'
home += 1 # 打印这一年发生的事情
print(info)
print(f'颜值: {face}, 体制: {strong}, 智力: {iq}, 家境: {home}')
print('---------------------------------------------')
# 加入延迟以模拟事件发生
time.sleep(2)

5.4 晚年阶段

# 晚年阶段
for age in range(61, 81):
info = f'你今年{age}岁, '
point = random.randint(1, 3) # 退休生活事件
if age >= 61:
if point == 1:
info += '你开始享受退休生活, 生活变得悠闲'
home += 1
elif point == 2:
info += '你开始感到无聊, 需要找点事情做'
home -= 1 # 健康问题
if age > 70:
if point == 1:
info += '你开始注重健康, 定期进行体检'
strong += 1
elif point == 2:
info += '你遇到了健康问题, 需要及时治疗'
strong -= 1 # 打印这一年发生的事情
print(info)
print(f'颜值: {face}, 体制: {strong}, 智力: {iq}, 家境: {home}')
print('---------------------------------------------')
print("你这一生结束了")
print(f'颜值: {face}, 体制: {strong}, 智力: {iq}, 家境: {home}')
# 加入延迟以模拟事件发生
time.sleep(2)

6.整体代码

# 人生重开模拟器
import random
import time
import sys
# 首先打印一个菜单栏
print('-----------------------------------------')
print('| 花有重开日,人无再少年 |')
print('| |')
print('| 欢迎来到人生重开模拟器 |')
print('-----------------------------------------') # 接下来,创建颜值,体质,智力,家境
# 这四个属性值都要在1-10之间,总和不要超过20 while True:
print("请输入你的属性值")
face = int(input("请输入你的颜值:"))
strong = int(input("请输入你的体质:"))
iq = int(input("请输入你的智商:"))
home = int(input("请输入你的家境:")) # 如果单个属性值超过10,提示用户重新输入
if (face > 10 or face < 1):
print("颜值输入错误,请重新输入")
continue
if (strong > 10 or strong < 1):
print("体质输入错误,请重新输入")
continue
if (iq > 10 or iq < 1):
print("智商输入错误,请重新输入")
continue
if (home > 10 or home < 1):
print("家境输入错误,请重新输入")
continue
if (face + strong + iq +home > 20):
print("属性值总和错误,请重新输入")
continue
print("颜值:",face, "体质:",strong,"智商:",iq,"家境:",home)
break #接下来生成角色性别
# 使用random可以生成随机数
point = random.randint(1,3)
if point == 1:
gender = '男'
print("你是男孩")
elif point == 2:
gender = '女'
print("你是一个女孩")
else:
gender = '男娘'
print("你是一个小男娘") # 设置角色出生点
point = random.randint(1,3)
if home==10:
# 第一档
print("你出生在帝都,你的父母是高官政要")
home += 1
iq += 1
face += 1
elif 7 <= home <=9:
# 第二档
if point == 1:
print("你出生在大城市,你父母是公务员")
face += 2
elif point == 2:
print("你出生在大城市,你父母是企业高管")
home += 2
else:
print("你出生在大城市,你父母是大学教授")
iq += 2
elif 4 <= home <=6:
# 第三档
if point == 1:
print("你出生在三线城市,你父母是个体户")
home +=1
elif point == 2:
print("你出生在三线城市,你父母是医生")
face += 1
else:
print("你出生在三线城市,你父母是教师")
iq += 1
else:
# 第四档
if point == 1:
print("你出生在农村,你父母是农民")
strong += 1
face -= 2
elif point == 2:
print("你出生在穷乡僻壤,你父母是无业游民")
home -= 1
else:
print("你出生在镇上,你父母感情不和")
strong -= 1
print(f"当前的属性:颜值:{face},体质:{strong},智商:{iq},家境:{home}") # 人生正式开始
# 幼年阶段
for age in range(1, 11):
info = f'你今年{age}岁, '
point = random.randint(1, 3)
# 性别触发的事件
if gender == 'girl' and home <= 3 and point == 1:
info += '你的家里人重男轻女思想非常严重, 你被遗弃了!'
print(info)
print('游戏结束!')
sys.exit(0)
# 体制触发的事件
elif strong < 6 and point < 3:
info += '你生了一场病, '
if home >= 5:
info += '在父母的细心照料下, 你康复了'
strong += 1
home -= 1
else:
info += '你的父母没精力管你, 你的身体状况更遭了'
strong -= 1
# 颜值触发的事件
elif face <= 4 and age >= 7:
info += '你长得太丑了, 别的小朋友不喜欢你, '
if iq > 5:
info += '你决定用学习填充自己!'
iq += 1
else:
if gender == 'boy':
info += '你和别的小朋友经常打架!'
strong += 1
iq -= 1
else:
info += '你经常被别的小朋友欺负'
strong -= 1
# 智力触发的事件
elif iq < 5:
info += '你看起来傻傻的, '
if home >= 7 and age >= 6:
info += '你的父母把你送到更好的学校学习'
iq += 1
elif 4 <= home <= 6:
if gender == 'boy':
info += '你的父母鼓励你多运动, 争取成为运动员'
strong += 1
else:
info += '你的父母鼓励你多打扮自己'
face += 1
else:
info += '你的父母为此经常吵架'
if point == 1:
strong -= 1
elif point == 2:
iq -= 1
else:
pass
# 健康成长事件
else:
info += '你健康成长, '
if point == 1:
info += '你看起来更结实了'
strong += 1
elif point == 2:
info += '你看起来更好看了'
face += 1
else:
info += '这一年没有特别的事情发生'
# 打印这一年发生的事情
print(info)
print(f'颜值: {face}, 体质: {strong}, 智力: {iq}, 家境: {home}')
print('---------------------------------------------')
# 为了方便观察, 加一个sleep
time.sleep(2) # 青年阶段
for age in range(11, 21):
info = f'你今年{age}岁, '
point = random.randint(1, 3) # 教育触发的事件
if iq >= 7 and point == 1:
info += '你在学校表现突出, 被选为班长!'
if gender == 'boy':
strong += 1
else:
face += 1
elif iq < 5 and point == 2:
info += '你的学习成绩不理想, 需要更多努力'
if gender == 'boy':
strong -= 1
else:
face -= 1 # 职业选择事件
elif age >= 16:
if iq >= 8 and strong >= 7:
info += '你的学业成就优秀, 获得了奖学金, 考上了理想的大学!'
iq += 1
strong += 1
elif iq < 5 and strong < 5:
info += '你无法考上理想的大学, 面临职业选择困难'
if gender == 'boy':
strong -= 1
else:
face -= 1
else:
info += '你选择了一份普通的工作, 开始了职业生涯' # 情感生活事件
elif age >= 18:
if point == 1:
info += '你谈了一场甜蜜的恋爱, 与心爱的人交往中'
if gender == 'boy':
strong += 1
else:
face += 1
elif point == 2:
info += '你的恋爱关系出现了问题, 面临分手'
if gender == 'boy':
strong -= 1
else:
face -= 1 # 健康成长事件
else:
info += '你在青年阶段健康成长, '
if point == 1:
info += '你继续保持健康的体魄'
strong += 1
elif point == 2:
info += '你外貌更加成熟美好'
face += 1
else:
info += '这一阶段没有特别的事情发生' # 打印这一年发生的事情
print(info)
print(f'颜值: {face}, 体制: {strong}, 智力: {iq}, 家境: {home}')
print('---------------------------------------------')
# 加入延迟以模拟事件发生
time.sleep(2) # 中年阶段
for age in range(21, 61):
info = f'你今年{age}岁, '
point = random.randint(1, 3)
# 职业发展事件
if age >= 21 and age <= 40:
if iq >= 8 and strong >= 7:
info += '你在职场上取得了显著成就, 获得了晋升!'
iq += 1
strong += 1
home += 1
elif iq < 5 and strong < 5:
info += '你在职场上遇到了挑战, 需要调整策略'
iq -= 1
strong -= 1
home -= 1
else:
info += '你的职业生涯稳步发展' # 家庭生活事件
elif age >= 25:
if point == 1:
info += '你的家庭生活幸福美满'
home += 1
elif point == 2:
info += '你的家庭出现了一些小矛盾, 需要沟通解决'
home -= 1 # 健康问题
if age > 40:
if point == 1:
info += '你开始注重健康, 定期进行体检'
strong += 1
elif point == 2:
info += '你遇到了健康问题, 需要及时治疗'
strong -= 1 # 退休生活准备
if age >= 55:
info += '你开始考虑退休生活, 准备享受晚年'
home += 1 # 打印这一年发生的事情
print(info)
print(f'颜值: {face}, 体制: {strong}, 智力: {iq}, 家境: {home}')
print('---------------------------------------------')
# 加入延迟以模拟事件发生
time.sleep(2) # 晚年阶段
for age in range(61, 81):
info = f'你今年{age}岁, '
point = random.randint(1, 3) # 退休生活事件
if age >= 61:
if point == 1:
info += '你开始享受退休生活, 生活变得悠闲'
home += 1
elif point == 2:
info += '你开始感到无聊, 需要找点事情做'
home -= 1 # 健康问题
if age > 70:
if point == 1:
info += '你开始注重健康, 定期进行体检'
strong += 1
elif point == 2:
info += '你遇到了健康问题, 需要及时治疗'
strong -= 1 # 打印这一年发生的事情
print(info)
print(f'颜值: {face}, 体制: {strong}, 智力: {iq}, 家境: {home}')
print('---------------------------------------------')
print("你这一生结束了")
print(f'颜值: {face}, 体制: {strong}, 智力: {iq}, 家境: {home}')
# 加入延迟以模拟事件发生
time.sleep(2)

python项目实战——人生重开模拟器的更多相关文章

  1. 人生重开模拟器「GitHub 热点速览 v.21.36」

    作者:HelloGitHub-小鱼干 人生是不能重来的,但是 lifeRestart 能满足你的重开心愿.初始值不满意,你可以一直随机生成或者自动添加颜值.智力.运气值,倒是一种"重生&qu ...

  2. "人生重开模拟器",10分钟轻松搭建!

    人生重开模拟器是最近爆火的一款非常好玩的模拟游戏,会带你走入一个有趣的世界,开启全新的人生旅程,即"人生重开". 然而实际上,这款游戏短短在3天内上线,在百度贴吧.朋友圈.QQ群. ...

  3. 给缺少Python项目实战经验的人

    我们在学习过程中最容易犯的一个错误就是:看的多动手的少,特别是对于一些项目的开发学习就更少了! 没有一个完整的项目开发过程,是不会对整个开发流程以及理论知识有牢固的认知的,对于怎样将所学的理论知识应用 ...

  4. Python项目实战:福布斯系列之数据采集

    1 数据采集概述 开始一个数据分析项目,首先需要做的就是get到原始数据,获得原始数据的方法有多种途径.比如: 获取数据集(dataset)文件 使用爬虫采集数据 直接获得excel.csv及其他数据 ...

  5. Jenkins部署Python项目实战

    一.背景 我们工作中常用Jenkins部署Java代码,因其灵活的插件特性,例如jdk,maven,ant等使得java项目编译后上线部署一气呵成,同样对于脚本语言类型如Python上线部署,利用Je ...

  6. 4.Python项目实战

    这里会每个周更新一个Python的大练习,作为 实战项目... elk

  7. Python项目实战

    编程只有不断练习才能掌握其精髓,多练练网上的习题和项目,才能掌握python的精髓. Python的模块和包是出了名的多,因此你不必自己从底层开始写起,只需要看懂模块和包的使用文档就可以了,因此掌握一 ...

  8. 【Python项目实战】Pandas:让你像写SQL一样做数据分析(一)

    1. 引言 Pandas是一个开源的Python数据分析库.Pandas把结构化数据分为了三类: Series,1维序列,可视作为没有column名的.只有一个column的DataFrame: Da ...

  9. 我来教你如何用Docker部署最近火爆的人生重开模拟器

    文章目录 获取项目源码包 Dockerfile 构建docker镜像 启动docerk容器 访问liferestart 如果人生可以重来... <可惜没如果> github项目地址:htt ...

  10. python项目实战-小游戏1

    项目规则: 1.玩家和敌人分别从现有的角色中选择3个角色 2.随机生成目前的血量,和攻击量 3.游戏规则:当玩家向敌人发起攻击,敌人当前的血量=之前的血量-玩家的血量,同理 4.3局两胜 5.自定义玩 ...

随机推荐

  1. VSCode配置git

    1.背景 vscode中基础git; 前提:本地已经安装好了git 有这样的菜单,并且可以正常上传下载代码 2.步骤 步骤一:找的git的安装路径: D:\Program Files\Git 步骤二: ...

  2. Apache SeaTunnel k8s 集群模式 Zeta 引擎部署指南

    SeaTunnel提供了一种运行Zeta引擎(cluster-mode)的方法,可以让Kubernetes在本地运行Zeta引擎,实现更高效的应用程序部署和管理.在本文中,我们将探索SeaTunnel ...

  3. vue开发者工具dev-tool的安装

    1.下载网址:https://github.com/Redxym/dev-tools 2.谷歌浏览器->扩展程序,拖动刚刚下载好的压缩包,将chrome文件夹添加至'加载已解压的扩展程序' // ...

  4. ρars/ey 题解

    给个链接:ρars/ey. 我们考虑一个树上背包. 设 \(f_{u,i}\) 表示在 \(u\) 号节点的子树内删除 \(i\) 个点的最小代价.显然有答案为 \(f_{1,siz_1-1}\). ...

  5. 秒懂全文:盘点13个各具特色的AI智能阅读助手工具

    在当今信息爆炸的时代,AI阅读工具正在革新我们的阅读方式,成为了提高效率.优化阅读体验的关键. 这类AI阅读辅助工具,只需要上传文件或者输入链接,便可以直接以聊天对话的形式进行一键总结和智能问答,满足 ...

  6. [nRF24L01+] 3. Radio Control 无线电控制

    3. Radio Control 无线电控制 nRF24L01+可以配置为:power down, standby, Rx/Tx mode 3.1. 无线控制状态图 当VDD电压大于1.9V时,进入上 ...

  7. Vim:从光标位置开始全局搜索和替换

    /\v SEARCHTERM :%s/\vBEFORE/AFTER/gc

  8. 4. 从0开始学ARM-ARM指令,移位、数据处理、BL、机器码

    <到底什么是Cortex.ARMv8.arm架构.ARM指令集.soc?一文帮你梳理基础概念[科普]> 关于ARM指令用到的IDE开发环境可以参考下面这篇文章 <1. 从0开始学AR ...

  9. docker安装cdh6.3.2集群(联网版)

    一.前言 本次采用的在线安装方式,cdh为6.3.2版本,系统为centos7.4, docker节点可以为任意多个,下文将以3个docker容器为示例进行展示.此方法也可用在docker swarm ...

  10. 移除 Parallels Access Sound 虚拟设备

    在安装了 Parallels 之后,发现 Mac 没声音,打开声音设置一看音频输出设备被设为了 Parallels Access Sound.把输出设备调回 MacBook 扬声器就有声音了. 但是音 ...