本案例——人生重开模拟器,主要的目的就是熟悉和掌握基础语法(不涉及def定义函数)的基本操作~~
一、下面是本系统用到的主要语法:
基础语法(一):
常量、变量、类型(整数,浮点数,字符串,布尔值)、注释、输入输出、
运算符(算术运算符,关系运算符、逻辑运算符、赋值运算符)
基础语法(二):
条件语句:
if ; if....else ; if...elif...elif...else;
while
for
continue
break
二、整体框架
接下来我把整体的系统框架构思下来,最后会附上代码,代码段含解释~~:
三、代码示例:
接下来就是代码段的示例:
有部分涉及到逻辑思路的地方都写上了注释,我觉得特别适合新手掌握基础语法思路~~
***目前本案例的人生重开是到【青年阶段】,剩下的读者可以自行参照思路进行一次人生重开~~~**
import random import sys import time
print('--------------------------------------------') print('| |') print('|
花有重开日,人无再少年 |') print('| |') print('| 欢迎来到 人生重开模拟器 |') print('| |')
print('--------------------------------------------') #设置初始属性 #颜值 体质 智力 家境
总和不超过20 每一项取数1-10之间 #使用循环,使玩家在输入错误的时候,可以重新输入: 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(beg,end),就能生成[beg,end] 随机整数
point = random.randint(1, 6) print(f"point = {point}") if point % 2 == 1:
gender = 'boy' print("你是个男孩") else: gender = "girl" print("你是个女孩") #设定角色的出生点
#设置生成[1-3]的随机数 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("你出生在三线城市,父母是医生") strong += 1 elif
point == 2: print("你出生在镇上,父母是个体户") home += 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}岁。' #生成一个[1-3]的随机整数。 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 <= 3 and age >=7: info += '你长得太丑了,别的小孩都不喜欢你' if
iq > 5: info += '你决定用学习来填充自己!' iq += 1 else: if gender == 'boy': info +=
"你和别的小孩经常打架,划花了脸" strong += 1 face -= 1 else: info +="你经常被别的小孩欺负" iq -= 1 face
-= 1 #智商触发事件 elif iq < 2: info += "你看起来傻傻的..." if home >= 8 and age <= 6: info
+= " 你的父母把你送到更好的学校学习!" iq += 1 elif 4 <= home <= 7: if gender == 'boy': info +=
"你的父母鼓励你多运动,争取成为运动员" strong += 2 else: info +="你的父母鼓励你多打扮自己" face += 2 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)
#青年阶段 for age in range(11,21): info: str = f'你今年{age}岁。' #生成一个[1-3]的随机整数。 point
= random.randint(1,3) #性别触发事件 if gender == "girl" and face <= 2 and point == 3:
info += "你长得太丑了,遭遇了校园暴力后自杀." print(info) print("游戏结束!") sys.exit(0) #颜值触发事件
elif face > 7 and point >= 2: info += '你长得太漂亮了,是全校追捧的对象' if home >= 8: info
+="你的父母非常富有,直接送你出道了" face += 3 home += 2 elif 3 <= home <= 6 and point == 1:
info += "你的父母经济较为富裕,把你送进了艺校培训" strong += 1 face += 1 else: info +=
'你的家庭太穷了,没法负担起你的学费,你退学了' face -= 2 home -= 1 strong += 2 #体质触发事件 elif strong >
7 and age < 16: info += '你的体育才能非常出众' if gender == 'boy' and iq > 7: info +=
"你德智体能全面发展,是全校的校草" iq += 2 face += 1 strong += 1 elif 5 <= iq <= 7 and home
>=5: info += "你的父母很支持你走体育的道路,所以你越来越强壮了" iq -= 2 strong += 2 else: info
+='你荒废了你的体育才能' strong -= 2 face -= 1 #智商触发事件 elif 4<= iq <6: info
+="你看起来资质平平,没有什么特色" if home >=7: info += "你的父母给了你很好的教育资源" iq += 2 elif 4<= home
<= 5: if point == 1: info += '你知道自己的家庭普通,所以发奋学习' iq += 2 elif point == 2: info
+= '你因为家境普通,所以在外兼职' strong += 1 else: info +='你因为家庭普通,直接放弃了学习' iq -= 2 else:
info += '你因为每次都在班级倒数,直接辍学了' iq -= 2 strong += 1 #智力触发事件 elif iq >=8: if iq >=9
and point == 1 and age == 17: info += "你因为出色的成绩,获得了高校的录取通知书" iq += 3 face -= 1
strong -= 1 else: info += '因为你的出色成绩,你一直占据着年级前几' iq += 2 face -= 2 strong -= 1
#家境触发事件 elif home >= 2 and point >= 2: if iq >=7 and home < 3: info +=
'你因为家庭的困窘,不断的学习钻研' home += 1 iq += 2 elif 4<= iq <= 6 and home < 2: info +=
"你为了补贴家用,白天下课打工,晚上学习" strong -= 2 home -= 1 else: pass #健康成长事件 else: info +=
'你健康成长。' if point == 1: info += "你看起来更结实了" strong += 1 elif point == 2: info +=
"你看起来更漂亮了" face += 1 else: if face > 4: info += "你长残了" face -= 2 elif iq < 3:
info += "你更笨了" iq -= 1 else: pass #打印这一年发生的事情 print(info) print(f'颜值:{face},
体质{strong}, 智力:{iq}, 家境:{home}')
print("------------------------------------------------") time.sleep(1)
最后这里附上一个测试输入案例:
(在此我输入的是一个均为5属性的人生~~)
到最后也可以看到目前到青年为止的你依然健康成长,若是属性均为1,那么很有可能早年夭折~~~
结语:开启你自己的人生重开吧~~~