30天python从零到一---第五天:人生重开模拟器 ,循环语句
Posted 披星戴月的贾维斯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了30天python从零到一---第五天:人生重开模拟器 ,循环语句相关的知识,希望对你有一定的参考价值。
🍎 博客主页:🌙@披星戴月的贾维斯
🍎 欢迎关注:👍点赞🍃收藏🔥留言
🍇系列专栏:🌙 Python专栏
🌙请不要相信胜利就像山坡上的蒲公英一样唾手可得,但是请相信,世界上总有一些美好值得我们全力以赴,哪怕粉身碎骨!🌙
🍉一起加油,去追寻、去成为更好的自己!
文章目录
提示:以下是本篇文章正文内容,下面案例可供参考
🍎1、循环语句
有些操作是需要反复执行的. 这种就需要使用循环。
循环一般分为两种,while循环和for循环。
🔥1.1、while循环🔥
基本语法格式:
while 条件:
循环体
- 条件为真, 则执行循环体代码.
- 条件为假, 则结束循环
写while循环需要注意的三个要点
- 1、循环变量的初始值
- 2、循环的判断条件
- 3、循环变量的更新语句
代码示例:打印1 - 10 的整数
num = 1
while(num <= 10):
print(num)
num+=1 #如果没这句 ,程序会死循环
代码示例: 计算 1-100 的和
sum = 0
num = 1
while num <= 100:
sum += num
num += 1
print(sum)
代码示例: 计算 5 的阶乘
result = 1
n = 1
while n <= 5:
result *= n
n += 1
print(result)
🔥1.2、for 循环🔥
基本语法格式
for 循环变量 in 可迭代对象:
循环体
注意:
- python 的 for 和其他语言不同, 没有 “初始化语句”, “循环条件判定语句”, “循环变量更新语句”, 而是更加简单
- 所谓的 “可迭代对象”, 指的是 “内部包含多个元素, 能一个一个把元素取出来的特殊变量”
range是一个内建函数,起到的效果就是得到一个”可迭代对象“
这个可迭代对象包含了一系列整数
range(begin, end) => [begin, end) 前闭后开区间
range还提供了第三个参数~表示”步长“, 默认的步长值是1
代码示例: 打印 1-10
for i in range(1, 11):
print(i)
代码示例: 打印 2, 4, 6, 8, 10
for i in range(2, 12, 2):
print(i)
代码示例: 打印 10-1 :通过控制步长即可
for i in range(10, 0, -1):
print(i)
代码示例: 求 1 - 100 的和
s = 0
for i in range(1, 101):
s += i
print(s)
- 小技巧:使用shift +F6 可以针对变量进行重命名~ 会智能地修改我们的代码,把需要修改的名字都统一替换了。
🔥1.3、continue和break🔥
continue 表示结束这次循环, 进入下次循环.
代码示例: 模拟拆快递. 拆第 3 个快递的时候不小心拆坏了
for i in range(1, 6):
if i == 3:
continue
print(f"拆完第 i 个快递")
break 表示结束整个循环
代码示例: 输入若干个数字, 求平均值. 使用 “分号” 作为结尾.
sum = 0
count = 0
while True:
num = input("请输入数字:")
if num == ';':
break
num = float(num)
sum += num
count += 1
print(sum / count)
🍎2、人生重开模拟器
这是一款之前很火的文字类小游戏. 玩家输入角色的初始属性之后, 就可以开启不同的人生经历.
大家可以在网上搜索 “人生重开模拟器”, 就可以玩到这个游戏的各种版本.
完整的程序代码较多, 此处我们只实现其中的一部分逻辑.
1. 设置初始属性
在游戏中我们设定四个属性.
- 颜值 (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("初始属性设定完成!")
break
2. 设置性别
代码逻辑: 通过 random.randint(1, 6) 生成一个 [1, 6] 的随机整数, 类似于掷色子.
- 如果是单数, 则性别设为男孩
- 如果是双数, 则性别设为女孩.
男孩和女孩会遇到不同的事件.
代码示例:
point = random.randint(1, 6) # 掷色子
if point % 2 == 1:
gender = 'boy'
print("你是个男孩")
else:
gender = 'girl'
print("你是个女孩")
3. 设置出生点
首先按照家境(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('你出生在大城市, 你的父母是大企业高管')
home += 2
else:
print('你出生在大城市, 你的父母是大学教授')
iq += 2
elif 4 <= home <= 6:
if point == 1:
print('你出生在三线城市, 你的父母是教师')
iq += 1
elif point == 2:
print('你出生在镇上, 你的父母是医生')
strong += 1
else:
print("你出生在镇上, 你的父母是个体户")
home += 1
else:
if 1 <= point <= 2:
print('你出生在村里, 你的父母是辛苦劳作的农民')
strong += 1
face -= 2
elif 3 <= point <= 4:
print('你出生在穷乡僻壤, 你的父母是无业游民')
home -= 1
else:
print('你出生在镇上, 你父母感情不和')
strong -= 1
🍎3、总结
本文总共介绍了循环语句的概念,使用等,还介绍了Python实现一个人生重开模拟器的部分代码,剩下的部分的代码我们下一节再讲,希望大家读后也能有所收获!
从零到一学习Flutter——布局
环境
开发机器:Mac
$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.7.1, on macOS 13.1 22C65 darwin-arm64, locale
zh-Hans-CN)
安装环境的流程就不重复写了,可以参考官方文档进行安装。
第一个应用
我们直接用flutter create testapp
命令就可以直接创建一个工程。
工程里面,我们目前编码用到的就是lib
文件夹下的main.dart
。
删了所有内容,只保留以下内容:
void main()
runApp(const Center(
child: Text("Hello world"),
));
Flutter
是可以支持跨平台的,因此运行的时候可以根据需要指定运行的平台。
$ flutter run
Multiple devices found:
macOS (desktop) • macos • darwin-arm64 • macOS 13.1 22C65 darwin-arm64
Chrome (web) • chrome • web-javascript • Google Chrome 109.0.5414.119
[1]: macOS (macos)
[2]: Chrome (chrome)
Please choose one (To quit, press "q/Q"): 2
我这里以web
以上是关于30天python从零到一---第五天:人生重开模拟器 ,循环语句的主要内容,如果未能解决你的问题,请参考以下文章
30天python从零到一---第二天:python基础语法