Python人生重开模拟器代码展示

简介: 本文主要是人生重开模拟器的代码演示

基础知识补充:(shift +F6)可以针对变量进行重命名,自动的把所有需要修改的名字都统一替换了。

while循环的使用:

基本语法格式:

while 条件:

    循环体

如果条件为真,则执行循环体代码,为假则结束循环。

while循环的条件:

1,循环变量的初始值。

2,循环的判定条件。

3,循环变量的更新语句。

(如果忘记循环变量的语句,循环会一直执行,停不下来了,直到手动强制结束程序。称为死循环。)

for循环的使用:

for 循环变量 in 可迭代对象:
循环体
注意:1,python的for和其他语言不同,没有”初始化语句“,“循环变量条件”,循环变量更新语句

2,所谓的“可迭代对象”,指的是“内部包含多个元素”,能一个一个把元素区出来的特殊变量。

这串代码里面range是一个内建函数。

起到的效果就是得到一个“可迭代对象”

这个可迭代对象中就包含了一系列的整数。

range(beg,end)=>(beg,end),(前闭后开区间)

range里面的第一个参数是起始值,第二个是最后的值,第三个是步值。

continue 立即结束当前这次循环,进入下次循环。

break 立即结束整个循环。

下面我用代码来展示一下 continue 和break的使用
for i in range(1,6):
if i==3:
continue
print(f"这是第{i}个包子")
输出的结果直接跳过第三个包子了,然后继续往下执行。

而break的使用

这串代码则是直接跳出了整个循环。

以下这串代码则是将break语句运用到了求平均值当中。

import random
import sys
import time
#欢迎界面
print('+-----------------------------------------------------+')
print('|            花有重开日,人无再少年                      |')
print('|                                                     |')
print('|            欢迎来到,人生重开模拟器                     |')
print('|                                                     |')
print('|                                                     |')
print('+-----------------------------------------------------+')
#首先我们需要设置初始属性,颜值,体质,智力,家境,总和不能超过20,每一项取值都是1-10之间的
while True:
    print('请设置初始属性(总和为二十)')
    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

#生成角色性别
point=random.randint(1,6)
if point %2==0:
    gender='boy'
    print("你是个男孩")
else :
    gender='girl'
    print("你是个女孩")
#设置角色的出生点
point = random.randint(1,3)
if home ==10:
    print("你出生在大城市")
    home+=1
    strong+=2
    face+=2
if home<10 and home>7 :
    if point == 1 :
        print("你出生在三线城市")
        home+=1
    elif point == 2:
        print("你出生在医世家")
        strong +=1
    else :
        print("你出生在老师世家")
        iq+=1
if home> 4 and home<8 :
    if point ==1:
        print("你出生在五线城市")
        face+=1
    elif point ==2:
        print("你出生在普通小康家庭")
        home+=1
    else :
        print("你出生在小县城,但是非常幸福")
        home+=1
if home <5:
    print("你出生在普通农民家庭")
    if point==1 :
        home+=1
    elif point==2:
        strong -=1
    else :
        iq-=1
print(f"颜值:{face},体质:{strong},智力:{iq},家境:{home}")
#幼年阶段
#先使用一个循环,按照年龄,从110
# 针对每一年,都生成一个随机数[13]
# 根据角色,性别,年龄,各种属性,触发各种事件,随机数会对时间的结果造成影响。
# 这里的事件可能会对属性带来变更
# 每一年执行结束,都打印这一年发生的事件(让每年只发生一个事件)
# 也可能会遇到夭折的情况,使用exit函数来结束程序
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:
        if home>5:
            info+='在你父母的悉心照顾下,你的病得到了康复'
            strong+=1
            home-=1
        else :
            info+='你的父母没有经历管你,你的病更糟糕了'
            strong -=1
    elif face >=7 and age<=4 :
        info+='你长的太丑了,别的小朋友不喜欢你'
        if iq>5:
            info+='你决定用学习证明自己'
            iq+=1
        else :
            info+='你经常和其他小朋友打架'
            strong-=1
    elif iq<5:
        info+='你看起来傻傻的'
        if home >=8 and age>=6:
            info+='你的父母把你送到更好的学校学习'
            iq+=1
        elif  4<=home<=7:
            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 :
            pass
    print(info)
    print(f"颜值:{face},体质:{strong},智力:{iq},家境:{home}")
    print("----------------------------------------------")
    time.sleep(1)
相关文章
|
1天前
|
程序员 Python
程序员必看!Python闭包与装饰器的高级应用,让你的代码更优雅、更强大
【7月更文挑战第7天】Python中的闭包和装饰器是高级特性,用于增强代码功能。闭包是内部函数记住外部作用域的变量,常用于动态函数和函数工厂。示例展示了`make_multiplier_of`返回记住n值的`multiplier`闭包。装饰器则是接收函数并返回新函数的函数,用于不修改原函数代码就添加功能。`my_decorator`装饰器通过`@`语法应用到`say_hello`函数上,展示了在调用前后添加额外行为的能力。这两种技术能提升代码的优雅性和效率。
11 3
|
20小时前
|
算法 安全 大数据
揭秘!Python堆与优先队列:数据结构的秘密武器,让你的代码秒变高效战士!
【7月更文挑战第8天】Python的heapq模块和queue.PriorityQueue提供堆与优先队列功能,助你提升算法效率。堆用于快速找大数据集的第K大元素,如示例所示,时间复杂度O(n log k)。PriorityQueue在多线程中智能调度任务,如模拟下载管理器,按优先级处理任务。掌握这些工具,让代码运行更高效!
6 1
|
22小时前
|
算法 数据中心 Python
Python雪花代码
在这段代码中,`SnowFlake`类用于生成唯一的ID。每次调用 `generate_id`方法时,它都会生成一个新的、唯一的ID。这个ID由时间戳、数据中心ID、工作机器ID和序列号组成,确保了在不同的时间、不同的数据中心、不同的工作机器上都能生成唯一的ID。
8 1
|
1天前
|
开发者 Python
Python元类实战:打造你的专属编程魔法,让代码随心所欲变化
【7月更文挑战第7天】Python的元类是编程的变形师,用于创建类的“类”,赋予代码在构建时的变形能力。
11 1
|
1天前
|
监控 安全 数据库
逆天改命!用自定义上下文管理器,让你的Python代码效率飙升
【7月更文挑战第7天】Python上下文管理器简化资源管理,通过自定义实现优雅控制。使用with语句自动执行资源获取和释放,确保异常安全。例如,FileContextManager类通过__enter__打开文件,__exit__关闭并处理异常。自定义上下文管理器可封装重复逻辑,增强功能如日志和监控,提升代码效率与质量。利用这一工具,代码更简洁、高效且易于维护。**
8 1
|
1天前
|
Python
Python黑魔法揭秘:闭包与装饰器的高级玩法,让你代码飞起来
【7月更文挑战第7天】Python的闭包和装饰器是提升代码效率的神器。闭包是能记住外部作用域变量的内部函数,常用于动态函数创建。示例中,`make_multiplier_of`返回一个保留`n`值的闭包。装饰器则是一个接收函数并返回新函数的函数,用于在不修改原函数情况下添加功能,如日志或性能追踪。`@my_decorator`装饰的`say_hello`函数在执行时会自动加上额外操作。掌握这两者,能让Python代码更优雅、强大。**
|
1天前
|
Python
从入门到精通,Python元类:让你的代码拥有自我进化的超能力
【7月更文挑战第7天】元类是Python中类的类,用于定义类的创建和行为。它们允许在创建类时动态修改,常用于注册、属性修改或实现单例。要使用元类,需定义继承`type`的类,重写`__new__`或`__init__`。例如,一个简单的元类能自动给新类添加属性。虽然初学者会感到挑战,但通过实践能揭示其潜力,赋予代码超凡的灵活性。**
8 0
|
1天前
|
监控 测试技术 Python
探索Python魅力:利用闭包与装饰器优化代码结构
【7月更文挑战第7天】Python中的闭包和装饰器是强大工具。闭包是能记住外部作用域变量的内部函数,常用于动态函数创建和数据封装。装饰器是接收函数并返回新函数的函数,用于在不修改原代码的情况下扩展功能,如日志或性能监控。通过示例展示了如何使用它们优化代码结构和提升效率。掌握这两者,能写出更优雅高效的Python代码。
|
2天前
|
Python
告别混乱!Python上下文管理器的自定义实践,让你的代码更加整洁有序
【7月更文挑战第6天】Python的上下文管理器通过`__enter__`和`__exit__`方法自动处理资源的获取与释放,如文件操作。使用with语句结合自定义类(如`FileManager`示例),能确保文件在使用后正确关闭,防止资源泄漏,提升代码整洁度和健壮性。自定义上下文管理器是代码模块化和错误处理的好实践。
|
2天前
|
设计模式 Python
深度揭秘!Python元类:掌握它,让你的代码拥有创造类的能力
【7月更文挑战第6天】Python元类探秘:**元类是类的类,用于控制类的创建。通过定义元类,可自定义类的行为,如动态添加方法或改变继承结构。示例中,`my_metaclass`在创建类时添加`new_method`。元类强大且适用于高级编程,如动态修改、注册类或实现设计模式。理解并善用元类能提升Python编程技巧。
7 0