Python基础到实战一飞冲天(二)-python基础(十一)--if嵌套
off999 2024-11-23 20:46 27 浏览 0 评论
# 11_ Python基础到实战一飞冲天(二)-python基础(十一)--if嵌套石头剪刀布随机数案例
## 一、if嵌套-05-火车站安检-检查刀的长度
### 1、if 嵌套应用:火车站安检案例代码
```python
# 02_分支-- dzs_07_火车站安检.py
# pycharm中,按 Ctrl + /可以快速添加或者取消注释
# pycharm中,选中代码块,按 Tab 键,增加缩进,按 Shift + Tab 减少缩进。
# 定义布尔型变量 has_ticket 表示是否有车票
has_ticket = True
# 定义整数型变量 knife_length 表示刀的长度,单位:厘米
knife_length = 18
# 首先检查是否有车票,如果有,才允许进行 安检
if has_ticket:
print("有车票,可以开始安检...")
# 安检时,需要检查刀的长度,判断是否超过 20 厘米
# 如果超过 20 厘米,提示刀的长度,不允许上车
if knife_length >= 20:
print("不允许携带 %d 厘米长的刀上车" % knife_length)
# 如果不超过 20 厘米,安检通过
else:
print("安检通过,祝您旅途愉快……")
# 如果没有车票,不允许进门
else:
print("大哥,您要先买票啊")
print("")
```
### 2、示例:在 pycharm 中测试 if 嵌套应用:火车站安检案例
## 二、石头剪刀布-01-明确目标和需求
### 1、综合应用 —— 石头剪刀布案例:**目标**
1)强化 **多个条件** 的 **逻辑运算**。
2)体会 `import` 导入模块(“工具包”)的使用。
### 2、案例**需求**
1)从控制台输入要出的拳 —— 石头(1)/剪刀(2)/布(3)
2)电脑 **随机** 出拳 —— 先假定电脑只会出石头,完成整体代码功能
3)比较胜负:规则:石头 胜 剪刀 | 剪刀 胜 布 | 布 胜 石头。
## 三、石头剪刀布-02-玩家和电脑出拳
### 1、 石头剪刀布案例:基础代码实现
* 先 **假定电脑就只会出石头**,完成整体代码功能(创建 dzs_08_石头剪刀布案例.py)
```python
# 02_分支-- dzs_08_石头剪刀布案例.py
# pycharm中,按 Ctrl + /可以快速添加或者取消注释
# pycharm中,选中代码块,按 Tab 键,增加缩进,按 Shift + Tab 减少缩进。
# 从控制台输入要出的拳 —— 石头(1)/剪刀(2)/布(3)
player = int(input("请出拳 石头(1)/剪刀(2)/布(3):"))
# 电脑 随机 出拳 - 假定电脑永远出石头
computer = 1
# 先打印输出出拳结果
print("玩家选择的拳头是 %d -- 电脑出的拳是 %d " %(player, computer))
# 比较胜负
```
### 2、 石头剪刀布案例:基础代码 示例
## 四、石头剪刀布-03-判断胜负
### 1、 石头剪刀布案例:基础代码补全
* 先 **假定电脑就只会出石头**,完成整体代码功能(创建 dzs_08_石头剪刀布案例.py)
```python
# 02_分支-- dzs_08_石头剪刀布案例.py
# pycharm中,按 Ctrl + /可以快速添加或者取消注释
# pycharm中,选中代码块,按 Tab 键,增加缩进,按 Shift + Tab 减少缩进。
# 从控制台输入要出的拳 —— 石头(1)/剪刀(2)/布(3)
player = int(input("请出拳 石头(1)/剪刀(2)/布(3):"))
# 电脑 随机 出拳 - 假定电脑永远出石头
computer = 1
# 先打印输出出拳结果
print("玩家选择的拳头是 %d -- 电脑出的拳是 %d " %(player, computer))
# 比较胜负
if (player == 1 and computer == 2) or (player == 2 and computer == 3) or (player == 3 and computer == 1):
print("噢耶!玩家赢了,电脑弱爆了!!!")
elif player == computer:
print("心有灵犀,平局,再来一盘!")
else:
print("玩家输了,不行,我要和电脑决战到天亮!")
```
### 2、 石头剪刀布案例:基础代码补全 示例
## 五、石头剪刀布-04-[扩展]增加换行调整条件判断代码格式
### 1、 石头剪刀布案例:基础代码 规范与完善
* 先 **假定电脑就只会出石头**,完成整体代码功能(创建 dzs_08_石头剪刀布案例.py)
```python
# 02_分支-- dzs_08_石头剪刀布案例.py
# pycharm中,按 Ctrl + /可以快速添加或者取消注释
# pycharm中,选中代码块,按 Tab 键,增加缩进,按 Shift + Tab 减少缩进。
# 从控制台输入要出的拳 —— 石头(1)/剪刀(2)/布(3)
player = int(input("请出拳 石头(1)/剪刀(2)/布(3):"))
# 电脑 随机 出拳 - 假定电脑永远出石头
computer = 1
# 先打印输出出拳结果
print("玩家选择的拳头是 %d -- 电脑出的拳是 %d " %(player, computer))
# 比较胜负
# 如果条件判断的内容太长,可以在最外侧的条件增加一对大括号
# 再在每一个条件之间,使用回车,PyCharm 可以自动增加 8 个空格
if ((player == 1 and computer == 2) or
(player == 2 and computer == 3) or
(player == 3 and computer == 1)):
print("噢耶!玩家赢了,电脑弱爆了!!!")
elif player == computer:
print("心有灵犀,平局,再来一盘!")
else:
print("玩家输了,不行,我要和电脑决战到天亮!")
```
### 2、 石头剪刀布案例:基础代码规范与完善 示例
## 六、石头剪刀布-05-随机数的使用
### 1、python 随机数的处理
1)在 `Python` 中,要使用随机数,首先需要导入 **随机数** 的 **模块** —— “工具包”。
```python
import random
```
2)导入模块后,可以直接在 **模块名称** 后面敲一个 `.` 然后按 `Tab` 键,会提示该模块中包含的所有函数。
3) `random.randint(a, b)` ,返回 `[a, b]` 之间的整数,包含 `a` 和 `b`
4) 例如:
```python
random.randint(12, 20) # 生成的随机数n: 12 <= n <= 20
random.randint(20, 20) # 结果永远是 20
random.randint(20, 10) # 该语句是错误的,下限必须小于上限
```
### 2、ipython3 中演示随机数 示例:
```python
python@ubuntu:~$ ipython3
Python 3.5.2 (default, Jan 26 2021, 13:30:48)
Type "copyright", "credits" or "license" for more information.
IPython 2.4.1 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
In [1]: import random
In [2]: random.
random.BPF random.expovariate random.randrange
random.LOG4 random.gammavariate random.sample
random.NV_MAGICCONST random.gauss random.seed
random.RECIP_BPF random.getrandbits random.setstate
random.Random random.getstate random.shuffle
random.SG_MAGICCONST random.lognormvariate random.triangular
random.SystemRandom random.normalvariate random.uniform
random.TWOPI random.paretovariate random.vonmisesvariate
random.betavariate random.randint random.weibullvariate
random.choice random.random
In [2]: random.randint(1, 10)
Out[2]: 3
In [3]: random.randint(1, 10)
Out[3]: 10
In [4]: random.randint(1, 10)
Out[4]: 7
In [5]: random.randint(1, 10)
Out[5]: 8
In [6]: type(random.randint(1, 10))
Out[6]: int
```
## 七、石头剪刀布-06-电脑随机出拳
### 1、 石头剪刀布案例:导入随机数工具包,完善代码
(创建 dzs_08_石头剪刀布案例.py)
```python
# 02_分支-- dzs_08_石头剪刀布案例.py
# pycharm中,按 Ctrl + /可以快速添加或者取消注释
# pycharm中,选中代码块,按 Tab 键,增加缩进,按 Shift + Tab 减少缩进。
# 导入随机工具包
# 注意:导入工具包代码应该放在最顶部,这样可以方便下方代码随时使用工具包的工具。
import random
# 从控制台输入要出的拳 —— 石头(1)/剪刀(2)/布(3)
player = int(input("请出拳 石头(1)/剪刀(2)/布(3):"))
# 电脑 随机 出拳 - 假定电脑永远出石头
# computer = 1
computer = random.randint(1, 3)
# 先打印输出出拳结果
print("玩家选择的拳头是 %d -- 电脑出的拳是 %d " %(player, computer))
# 比较胜负
# 如果条件判断的内容太长,可以在最外侧的条件增加一对大括号
# 再在每一个条件之间,使用回车,PyCharm 可以自动增加 8 个空格
if ((player == 1 and computer == 2) or
(player == 2 and computer == 3) or
(player == 3 and computer == 1)):
print("噢耶!玩家赢了,电脑弱爆了!!!")
elif player == computer:
print("心有灵犀,平局,再来一盘!")
else:
print("玩家输了,不行,我要和电脑决战到天亮!")
```
### 2、 石头剪刀布案例:导入随机数工具包,完善代码 示例
## 八、循环-01-目标确定
### 1、循环:学习目标
* 程序的三大流程。
* while 循环基本使用。
* break 和 continue。
* while 循环嵌套。
### 2、循环:就是让 **特定代码 重复** 执行,避免了程序员重复写代码。
## 九、循环-02-三大流程介绍
### 1、程序的三大流程
* 在程序开发中,一共有三种流程方式:
1)**顺序** —— **从上向下**,顺序执行代码。
2)**分支** —— 根据条件判断,决定执行代码的 **分支**。
3)**循环** —— 让 **特定代码 重复** 执行。
### 2、程序三大流程示意图:
## 十、循环基础-01-基础语法介绍和常用的应用场景
### 1、 `while` 循环基本使用
* 循环的作用就是让 **指定的代码** 重复的执行。
* `while` 循环最常用的应用场景就是 **让执行的代码** 按照 **指定的次数** **重复** 执行。
* 需求 —— 打印 5 遍 `Hello Python`
* 思考 —— 如果要求打印 100 遍怎么办?
### 2、 `while` 语句基本语法
```python
初始条件设置 —— 通常是重复执行的 计数器
while 条件(判断 计数器 是否达到 目标次数):
条件满足时,做的事情1
条件满足时,做的事情2
条件满足时,做的事情3
...(省略)...
处理条件(计数器 + 1)
```
### 3、**注意**:
* `while` 语句以及缩进部分是一个 **完整的代码块**。
```python
# 03_循环-- dzs_01_while重复执行.py
# pycharm中,按 Ctrl + /可以快速添加或者取消注释
# pycharm中,选中代码块,按 Tab 键,增加缩进,按 Shift + Tab 减少缩进。
i = 1
while i <= 10 :
Print(“hello python”)
I = i + 1
```
`上一节关联链接请点击:`
相关推荐
- 笔记本电脑选哪个品牌比较好
-
1、苹果APPLE/美国2、戴尔DELL/美国3、华为HUAWEI/中国4、小米MI/中国5、微软Microsoft/美国6、联想LENOVO/中国7、惠普HP/美国8、华硕ASUS/...
- 10系列显卡排名(10系显卡性能排行)
-
十系显卡指NVIDIAGeForce10系列,是英伟达研发并推出的图形处理器系列,被用以取代NVIDIAGeForce900系列图形处理器。新系列采用帕斯卡微架构来代替之前的麦克斯韦微架构,并...
-
- 最新win7系统下载(windows7最新版本下载)
-
最简单的方法就是,下载完镜像文件后,直接把镜像文件解压,解压到非C盘,然后在解压文件里面找到setup.exe,点击运行即可。安装系统完成后,在C盘找到一个Windows.old(好几个GB,是旧系统打包在这里,垃圾文件了)删除即可。扩展资...
-
2026-01-15 06:43 off999
- 哪个电脑管家软件好用(哪个电脑管家好用些)
-
腾讯电脑管家吧,因为这个是杀毒和管理合一的,占用内存小,因此显得更为简洁,使电脑运行更加流畅此外电脑诊所,工具箱以及4+1的杀毒模式让腾讯电脑管家也收到了广泛的关注4+1杀毒引擎,管家反病毒引擎、金山...
- 怎么进入win7安全模式(怎么进入win7安全模式界面)
-
方法如下:1、首先进入Win7系统,然后使用Win键+R组合键打开运行框,输入“Msconfig”回车进入系统配置。2、在打开的系统配置中,找到“引导”选项,然后单击,选择Win7的引导项,然后在“安...
- 怎么分区固态硬盘(怎样分区固态硬盘)
-
固态硬盘的分区方法与传统机械硬盘基本相同,以下是一个简单的步骤:1.打开磁盘管理工具:在Windows操作系统中,按下Win+X键,选择"磁盘管理"。或者打开控制面板,在"...
-
- 笔记本声卡驱动怎么下载(笔记本如何下载声卡)
-
1、在浏览器中输入并搜索,然后下载并安装。2、安装完成后打开360驱动大师,它就会自动检测你的电脑需要安装或升级的驱动。3、检测完毕后,我们可以看到我们的声卡驱动需要安装或升级,点击安装或升级,就会开始自动安装或升级声卡了。4、升级过程中会...
-
2026-01-15 05:43 off999
- win10加快开机启动速度(加快开机速度 win10)
-
一、启用快速启动功能1.按win+r键调出“运行”在输入框输入“gpedit.msc”按回车调出“组策略编辑器”?2.在“本地组策略编辑器”依次打开“计算机配置——管理模块——系统——关机”在右侧...
-
- excel的快捷键一览表(excel的快捷键一览表超全)
-
Excel快捷键大全的一些操作如下我在工作中经常使用诸如word或Excel之类的办公软件。我相信每个人都不太熟悉这些办公软件的快捷键。使用快捷键将提高办公效率,并使您的工作更加轻松快捷。。例如,在复制时,请使用CtrI+C进行复制,...
-
2026-01-15 05:03 off999
- 华硕u盘启动按f几(华硕u盘装系统按f几进入)
-
F8。1、开机的同时按F8进入BIOS。2、在Boot菜单中,置secure为disabled。3、BootListOption置为UEFI。4、在1stBootPriority中usb—HD...
- 手机云电脑怎么用(手机云端电脑)
-
使用手机云电脑,您首先需要安装相应的云电脑应用。例如,华为云电脑APP。在安装并打开应用后,您将看到一个显示器的图标,这就是您的云电脑。点击这个图标,您将被连接到一个预装有Windows操作系统和必要...
- ie11浏览器怎么安装(ie11浏览器安装步骤)
-
如果IE浏览器11版本你发现无法正常安装,那么很可能是这样几个原因,一个就是电脑的存储空间不够到时无法安装,再有就是网络的问题,如果没有办法安装的话就不要再安装了,本身这个IE浏览器并不是多好用,你最...
- 台式机重装系统win7(台式机怎么重装win7)
-
下面主要介绍两种方法以重装系统:一、U盘重装系统准备:一台正常开机的电脑和一个U盘1、百度下载“U大师”(老毛桃、大白菜也可以),把这个软件下载并安装在电脑上。2、插上U盘,选择一键制作U盘启动(制作...
- 字母下划线怎么打出来(字母下的下划线怎么去不掉)
-
第一步,在电脑上找到文字处理软件WPS,双击即自动新建一个新文档。第二步,在文档录入需要处理的字母和数字,双击鼠标或拖动鼠标选择要处理的内容。第三步,在页面的左上方的横向菜单栏,找到字母U的按纽,点击...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
python入门到脱坑 输入与输出—str()函数
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
系统u盘安装(win11系统u盘安装)
-
Python 批量卸载关联包 pip-autoremove
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
