首页/新闻资讯/正文详情

【Python】(篇五)人生重开模拟器(Python实现代码)

发布时间:2026/9/27 10:18:15 来源:云帆数科 栏目:资讯中心
【Python】(篇五)人生重开模拟器(Python实现代码)
一.游戏背景介绍这是一款文字类小游戏。玩家输入角色的初始属性后程序将根据属性条件触发不同的人生事件。注完整程序代码较多此处仅实现核心的某一段判定逻辑主要目的是为了巩固前面学习的 Python 基础语法如变量、条件判断、随机数、模块导入等。二.设置初始属性在这款游戏中我们设定四个属性颜值face体质strong智力iq家境home我们约定每个属性的范围为 [1, 10]并且总和不能超过 20。如果玩家输入的初始属性不合理就会提示输入有误需要重新输入。#人生重开模拟器 print(-----------------------------|) print(| |) print(| 花有重开日人物在少年 |) print(| |) print(| 欢迎来到人生重开模拟器 |) print(| |) print(-----------------------------|) #设置属性 #使用循环当玩家在输入错误的时候可以重新输入 while True: print(请设置初始属性,可用总点数为20) face int(input(请输入颜值(1-10))) strong int(input(请输入体质1-10))) iq int(input(请输入智力1-10))) home int(input(请输入家境(1-10))) #通过条件语句对用户的属性进行校验检查 if face 1 or face 10: print(颜值输入错误) continue if strong 1 or strong 10: print(体质设置有误) continue if iq 1 or iq 10: print(智力设置有误) continue if home 1 or home 10: print(家境设置有误) continue if face strong iq home 20: print(总属性超过了20设置有误) continue #当上面的条件没有问题后就可以开始后续输入 print(初始属性输入完毕) print(f颜值:{face},体质{strong},智力:{iq},家境:{home}) break三.设置性别我们通过模板 random.randint(1, 6) 生成一个 [1, 6] 的随机整数类似于掷骰子。如果是单数则性别设为男孩。如果是双数则性别设为女孩。import random # 必须先把模块导入这个工具箱 import sys # 导入系统模块 import time #角色的性别 point random.randint(1,6) print(fpoint:{point}) if point % 2 1: gender boy print(你是个男孩) else: gender girl print(你是个女孩)四.设置出生点首先我们按照家境home分成四个档位10 是第一档加成最高。[7, 9] 是第二档也有一些加成。[4, 6] 是第三档加成较少。[1, 3] 是第四档会扣掉属性。像之前一样我们再扔一次骰子生成 [1, 3] 的随机数用来表示每一种细分情况。这里的代码主要就是各种 if-else 构成#家境加随机数 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(你出生在大城市父母是大学教授) iq 2 elif 4 home 6: #第三档 if point 1: print(你出生在三线城市父母是医生) strong 2 elif point 2: print(你出生在镇上你的父母是老师) iq 1 else: print(你出生在镇上你的父母是个体户) home 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})五.针对每一岁, 生成人生经历按照年龄将人生经历划分为四个阶段幼年阶段 [1, 10]青年阶段 [11, 20]壮年阶段 [20, 50]老年阶段 50 岁以上每个阶段会产生不一样的精力状态触发不同人生事件幼年阶段可塑性很高体质、颜值、智力的增长变化速度很快。青年阶段以读书求学为主父母的状态也会发生明显改变智力、家境属性会出现较大变动。壮年阶段整体状态趋于稳定各类属性变化幅度小大多由随机事件改变自身属性。老年阶段体质、颜值、智力会出现明显衰减年龄越大患病、离世的概率也会持续增加。下面以幼年阶段为例简易实现这套处理逻辑利用 for 循环逐年遍历年龄。每到一岁先摇一枚取值范围 [1,3] 的随机骰子根据得到的随机数字触发对应的事件。结合性别、年龄、各项属性使用 if-else 结构匹配不同事件。不同事件会对人物属性产生增益或者减益效果。每一年逻辑执行完毕后打印本年度发生的事件。如果触发夭折判定直接调用 sys.exit (0) 终止程序。添加 time.sleep (1) 让程序暂停 1 秒方便查看运行输出。#设置角色的出生点 #家境加随机数 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(你出生在大城市父母是大学教授) iq 2 elif 4 home 6: #第三档 if point 1: print(你出生在三线城市父母是医生) strong 2 elif point 2: print(你出生在镇上你的父母是老师) iq 1 else: print(你出生在镇上你的父母是个体户) home 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 8 and age 6: info 你的父母把你送到更好的学校去学习 iq 1 elif 4 home7: if gender boy: info 你的父母鼓励你多打扮自己 face 1 else : #家境4 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: #无事发生 pass #打印这一年发生的事情 print(info) print(f颜值:{face},体制:{strong},智力:{iq},家境:{home}) print(---------------------------------------------) time.sleep(1)综上所述我们看最后的运行结果

相关推荐

语音智能硬件开发实战:从选型到量产的避坑指南
语音智能硬件开发实战:从选型到量产的避坑指南

1. 语音智能硬件开发到底在做什么语音智能硬件开发这个词听起来挺唬人,但拆开看就三件事:设备能听、能想、能说。听是麦克风阵列加降噪算法把人的声音从环境噪音里捞出来;想是把声音转成文字,理解意图,再决定干什么&am… · 2026/9/27 10:18:09

USB转I2C实战:400KHz高速扫描与Excel自动化测试
USB转I2C实战:400KHz高速扫描与Excel自动化测试

1. 项目缘起与整体设计思路USB TO I2C 这类工具在嵌入式圈子里其实不算新鲜玩意,但真正把总线速率跑到 400KHz 并且用 Excel 做批量扫描测试的玩法,很多人第一次听到会觉得有点意思。我最初接触这个需求,是因为手头有一批 I2C 接口的传感器模… · 2026/9/27 10:18:09

网站制作基本流程全解析:这份避坑指南能救急
网站制作基本流程全解析:这份避坑指南能救急

网站制作基本流程全解析:这份避坑指南能救急 改个需求建站公司拖一周,这种憋屈事儿谁没遇到过?昨天刚说首页Banner图要换,今天回邮件说排期到下周,气得人想把合同拍桌上。其实这背后不是对方懒,而是你们对网站制作基本流程的颗粒度没对齐。很多老… · 2026/9/27 10:17:57

AngularFire Realtime Database 列表数据实战指南:AngularFireList 的读取、写入与删除全解析
AngularFire Realtime Database 列表数据实战指南:AngularFireList 的读取、写入与删除全解析

后端 【免费下载链接】angularfire Angular Firebase ❤️ 项目地址: https://gitcode.com/gh_mirrors/an/angularfire 点击查看 免费下载 本篇指南以 AngularFire 仓库中 site/src/rtdb/lists.md 文档为主体,结合 src/compat/database 目录下的真实源… · 2026/9/27 11:12:17

STM32CubeMX 6.14深度配置指南:从引脚复用到时钟树的硬件级实践
STM32CubeMX 6.14深度配置指南:从引脚复用到时钟树的硬件级实践

1. 这不是安装教程,是STM32开发的“第一道安检门”你打开IDE写完main函数,编译通过,烧录进板子——结果LED不亮、串口没反应、ADC读数全为0。查了三天寄存器手册,最后发现PA0引脚根本没配置成模拟输入模式,而是默认的浮… · 2026/9/27 11:12:17

STM32CubeMX 6.14安装与配置全指南:固件仓库、环境校验与外设映射
STM32CubeMX 6.14安装与配置全指南:固件仓库、环境校验与外设映射

1. 为什么STM32CubeMX 6.14值得花时间认真走一遍全流程?STM32CubeMX 6.14不是一次普通的小版本更新,它是我过去三年里在十几个工业控制、智能传感和边缘网关项目中,唯一一个让我主动放弃旧版、重新梳理整个开发链路的工具升级。很多人把它当成… · 2026/9/27 11:12:17

3款开源日记工具整理合集,可Docker一键部署!
3款开源日记工具整理合集,可Docker一键部署!

3款开源日记工具整理合集,可Docker一键部署!前言一、Journiv1.1 Journiv简介1.2 Journiv主要特点1.3 项目地址1.4 项目预览二、Hibiscus.txt2.1 Hibiscus简介2.2 Hibiscus主要特点2.3 项目地址2.4 项目预览三、DailyTxT3.1 DailyTxT简介3.2 DailyTxT特点… · 2026/9/27 11:12:11

52周交期危机:ARM+FPGA项目如何将等待期变为开发期
52周交期危机:ARM+FPGA项目如何将等待期变为开发期

采购把邮件转给我的时候,我盯着正文里那行Lead Time: 52 Weeks看了大概五秒。第一反应是供应商把“5.2”打成了“52”,第二反应才是确信自己没看错——一颗进口ARM处理器,加一颗配套的FPGA,交货周期52周。一年零一个月。这基本等于… · 2026/9/27 11:12:11

嵌入式偶发Bug排查实战:串口假故障、蓝牙断连与烧录失败定位
嵌入式偶发Bug排查实战:串口假故障、蓝牙断连与烧录失败定位

做嵌入式开发和硬件联调这几年,我最怕的不是那种必现的崩溃,而是“偶发的 bug”——串口偶尔收不到数据、蓝牙用着用着突然断开、烧录十次里有一两次失败。这种问题最折磨人,因为不好复现,工程师的直觉和经验往往派不上用场&#… · 2026/9/27 11:12:05

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现

简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01

汕头网站建设制作厂家避坑指南:5大注意事项救急
汕头网站建设制作厂家避坑指南:5大注意事项救急

汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01

多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习

简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码