【Python】基础语法练习---人生重开模拟器

人生重开模拟器游戏:
http://remake.solaking.com/#google_vignette

此处只做简单的模拟,旨在联系Python语法:
为了简单起见此处只模拟人生中1-10岁的经历:
效果演示:
在这里插入图片描述
代码实现:

# 人生重开模拟器
# pycharm自动导入的模块
import random
import sys
import timeprint('+-------------------------------+')
print('|                               |')
print('|      花有重开日,人无再少年       |')
print('|                               |')
print('|     欢迎来到:人生重开模拟器      |')
print('|                               |')
print('+-------------------------------+')# 设置初始属性
while True:print("请分别设置颜值,体质,家境,智力属性!(注意:总点数不超过20)")face = int(input("请输入颜值属性点数(1-10): "))body = int(input("请输入体质属性点数(1-10): "))family = int(input("请输入家境属性点数(1-10): "))iq = int(input("请输入智力属性点数(1-10): "))# 输入有误的情况下进行重新输入if face<0 or face>10:print("颜值属性设置有误,请重新输入!")continueif body<0 or body>10:print("体质属性设置有误,请重新输入!")continueif family<0 or family>10:print("家境属性设置有误,请重新输入!")continueif iq<0 or iq>10:print("智力属性设置有误,请重新输入!")continueif face + body + family + iq > 20:print("属性设置点数超过20,设置有误,请重新输入!")continue# 设置成功!打印属性print("属性设置完毕,您重开人生的属性设置为:")print(f"颜值: {face},体质: {body},家境: {family},智力: {iq}")break# 生成角色的性别
# random.randint(1,10)生成[1,10]的随机数,包含1,10
# random是Python中的一个模块(别人写好的代码给我们用)
point = random.randint(1,10)
print(point)
if point%2 == 1:gender='boy'print("哇哇哇~你出生了!你是一个男孩!")
else:gender='girl'print("哇哇哇~你出生了!你是一个女孩!")# 设置角色出生点
'''
家境+随机数
1档:家境为 10 ,带来一些属性加成
2档:家境为 7-9 ,也会带来一些属性加成
3档:家境为 4-6 ,会带来少量加成
4档:家境为 1-3 ,扣属性
'''
point = random.randint(1,5)
if family == 10:# 1档print("你出生在帝都,你的父母是高官政要.")family += 1face += 2iq += 1
elif 7 <= family <= 9:# 2档if point == 1:print("你出生在大城市,父母是医生.")iq += 1if point == 2:print("你出生在大城市,父母是企业家.")family+=3iq+=1if point==3:print("你出生在大城市,父母是公务员.")iq += 2if point==4:print("你出生在大城市,父母是大学教授.")iq+=1family+=1if point==5:print("你出生在大城市,父母是企业高管.")family+=2face+=1
elif 4 <=family<=6:# 3档if point==1:print("你出生在二线城市,父母是医生.")family += 1if point==2:print("你出生在三线城市,父母是高中老师.")iq+=1if point==3:print("你出生在三线城市,父母是公务员.")family+=1if point==4:print("你出生在二线城市,父母是厨师.")body += 2if point==5:print("你出生在三线城市,父母是小卖部老板")family+=1
else:# 4挡if point==1:print("你出生在小县城,父母是农民.")family -= 1if point==2:print("你出生在小县城,父母是小卖部老板.")face-=1if point==3:print("你出生在农村,你一出生,父母就丢下你不管了")family-=2face-=1if point==4:print("你出生在偏远山村,父亲在几个月出意外去世了.")body -=2family-=1if point==5:print("你出生在大山里,母亲生下你后难产去世了.")body -= 2family -= 1
print(f"颜值: {face},体质: {body},家境: {family},智力: {iq}")# 幼年阶段
for age in range(1,11):# 一整年都打印到一个字符串中,在这一年的结尾统一打印info = f'你今年{age}岁.'# 生成一个1-5的随机整数point = random.randint(1,5)# 接下来写可能发生的各种事情# 性别触发的事情if gender == 'girl' and family <= 3 and point < 3:info +='你的家人重男轻女,你被遗弃了!'print(info)print('游戏结束!')sys.exit(0)# 体质触发elif body < 3 and point < 3:info += '你生了一场病.'if family > 4:info += '你在父母的悉心照料下康复了.'body += 1family -= 1else:info += '你的父母没有精力管你,你的身体情况更加糟糕了.'body -= 1#  颜值触发事件elif face > 9 and age > 5 and family > 5:info += '你被星探发现了,去做了童星'face += 1family += 1elif face < 3 and age < 6:info += '你长得太丑了,别的小朋友不喜欢你'if gender == 'boy':info += '你经常和别的小朋友打架!'body += 1iq -= 1else:info += '你变得很喜欢哭,身体不好'body -= 1# 智商触发elif iq > 8 and age > 4 :info += '你很聪明,老师都对你赞不绝口.'if family > 5:info += '你的父母为你报了奥数班,你参加了各种奥数比赛并取得了优异的成绩.'iq += 2else:info += '你的父母让你好好努力学习.'iq += 1else:info += '你健康成长.'if point == 1:info += '你更好看了.'face += 1elif point == 2:info += '你看起来更结实了.'else:info += '无事发生.'
#     打印发生的事情print(info)print(f"颜值: {face},体质: {body},家境: {family},智力: {iq}")print('--------------------------------------------------')# 暂停1秒time.sleep(1)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/597887.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

发到网站上的大量图片如何才能防止盗图?答案是加自己的水印logo

批很多摄影师&#xff0c;摄影爱好者&#xff0c;喜欢把自己拍摄的照片&#xff0c;后期加个小水印&#xff0c;很有专属感。还有一些做电商&#xff0c;微店的伙伴&#xff0c;经常需要发产品图&#xff0c;也需要放上产品信息&#xff0c;店名等水印&#xff0c;防止盗图。 …

【JavaWeb】Day35.MySQL概述——数据库设计-DDL(二)

表操作 关于表结构的操作也是包含四个部分&#xff1a;创建表、查询表、修改表、删除表。 1.创建 语法 create table 表名( 字段1 字段1类型 [约束] [comment 字段1注释 ], 字段2 字段2类型 [约束] [comment 字段2注释 ], ...... 字段n 字段n类型 [约束] [comment …

Hackthebox IClean

靶机信息IP/难度Medium网址https://app.hackthebox.com/machines/IClean状态Active系统Linux Python XSS, SSTI 端口扫描 PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.6 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: | 256 2cf9077…

寻找排序数组中的最小值

题目描述 已知一个长度为 n 的数组&#xff0c;预先按照升序排列&#xff0c;经由 1 到 n 次 旋转 后&#xff0c;得到输入数组。例如&#xff0c;原数组 nums [0,1,2,4,5,6,7] 在变化后可能得到&#xff1a; 若旋转 4 次&#xff0c;则可以得到 [4,5,6,7,0,1,2]若旋转 7 次…

【MYSQL之进阶篇】视图、存储过程、存储函数以及触发器

&#x1f525;作者主页&#xff1a;小林同学的学习笔录 &#x1f525;mysql专栏&#xff1a;小林同学的专栏 1.视图 1.1 定义 视图是MySQL数据库中的虚拟表&#xff0c;它基于一个或多个实际表的查询结果。视图提供了一种简单的 方法来封装和重用复杂的查询&#xff0c;同时…

2024HW --->反序列化漏洞!

对于反序列化&#xff0c;这个漏洞也是常用的&#xff0c;不过涉及到的方面非常非常广&#xff0c;比其他漏洞也难很多 于是本篇文章就分成PHP和JAVA的反序列化来讲讲 1.反序列化 想要理解反序列化&#xff0c;首先就要理解序列化 序列化&#xff1a;把对象转换为字节序列的过…

LeetCode-78. 子集【位运算 数组 回溯】

LeetCode-78. 子集【位运算 数组 回溯】 题目描述&#xff1a;解题思路一&#xff1a;回溯&#xff0c;回溯三部曲解题思路二&#xff1a;0解题思路三&#xff1a;0 题目描述&#xff1a; 给你一个整数数组 nums &#xff0c;数组中的元素 互不相同 。返回该数组所有可能的 子…

Android Glide

1.引入glide implementation com.github.bumptech.glide:glide:4.14.2 // Skip this if you dont want to use integration libraries or configure Glide. annotationProcessor com.github.bumptech.glide:compiler:4.14.2 //Glide 注解处理器 2.AndroidManifest.xml 中添加…

加州大学欧文分校英语基础语法专项课程02:Questions, Present Progressive and Future Tenses 学习笔记

Questions, Present Progressive and Future Tenses Course Certificate 本文是学习 Questions, Present Progressive and Future Tenses 这门课的学习笔记&#xff0c;如有侵权&#xff0c;请联系删除。 文章目录 Questions, Present Progressive and Future TensesWeek 01: …

【STL学习】(3)vector容器

前言 本章主要内容为两个部分&#xff1a; vector是什么&#xff1f;vector常用接口的使用。 一、vector的介绍 vector是表示可变大小数组的容器就像数组一样&#xff0c;vector也采用的连续空间来存储元素。也意味着可以采用下标对vector的元素进行访问&#xff0c;和数组一样…

Tensorflow2.0笔记 - 自定义Layer和Model实现CIFAR10数据集的训练

本笔记记录使用自定义Layer和Model来做CIFAR10数据集的训练。 CIFAR10数据集下载&#xff1a; https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz 自定义的Layer和Model实现较为简单&#xff0c;参数量较少&#xff0c;并且没有卷积层和dropout等&#xff0c;最终准确率…

UNITY实战进阶-BatchRendererGroup+Jobs+Burst+RVO2+GPUAnimation 实现万人团战(一)

研究思路&#xff1a;GPUAnimation把动画放入GPU中处理&#xff0c;BatchRendererGroup进行动态批量渲染处理&#xff0c;JobsBurst进行多线程处理逻辑&#xff08;移动、攻击等&#xff09;&#xff0c;RVO2采用Jobs的寻路导航。 准备工作&#xff1a; Editor > Project S…