第三、四章 if语句 + 循环

第三章  if语句

bool类型

两种:True和False

bool_1 = True
bool_2 = False
print(f"bool_1变量的内容是:{bool_1}," + f"类型是:{type(bool_1)}")
print(f"bool_2变量的内容是:{bool_2}," + f"类型是:{type(bool_2)}")

# python中字符串可以直接比较
result = "itcast" == "itheima"
print(f"result变量的内容是:{result}," + f"类型是:{type(result)}")

if else语句

age = int(input("请输入你的年龄:"))

if age >= 18 :
    print("您已成年,需要买票10元")
else:
    print("您未成年,可以免费游玩")
print("祝您游玩愉快")

输入20:

输入15:

练习案例:我要买票吗?

print("欢迎来到黑马动物园。")
high = int(input("请输入你的身高(cm):"))

if high >= 120 :
    print("您的身高超出120cm,游玩需要购票10元。")
else:
    print("您的身高未超出120cm,可以免费游玩。")
print("祝您游玩愉快")

输入:130

输入:111

if elif else语句                                                                                         

print("欢迎来到黑马动物园。")

if int(input("请输入你的身高(cm):")) < 120 :
    print("欢迎你小朋友,可以免费游玩。")
elif int(input("请输入你的VIP等级(1-5):")) >3:
    print("您的VIP等级高于3级,可以免费游玩。")
elif int(input("请告诉我今天几号:")) == 1:
    print("今天是1号免费日,可以免费游玩。")
else:
    print("不好意思,条件都不满足,需要买票10元")

练习案例:猜猜心里数字 

target_num = 10

if int(input("请输入第一次猜想的数字:")) == 10 :
    print("猜对啦!")
elif int(input("不对,再猜一次:")) == 10:
    print("猜对啦!")
elif int(input("不对,再最后猜一次:")) == 10:
    print("猜对啦!")
else:
    print(f"Sorry,全部猜错啦,想的是{target_num}")

判断语句的嵌套使用

公司要发礼物,条件是:
1.必须是大于等于18岁小于30岁的成年人
2.同时入职时间需满足大于两年,或者级别大于3才可领取

age = int(input("请输入您的年龄:"))
if age >= 18 :
    if age < 30:
        year = int(input("请输入您的入职时间:"))
        if year > 2:
            print("快来领取礼物吧!")
        else:
            level = int(input("请输入您的级别(1-5):"))
            if level > 3 :
                print("快来领取礼物吧!")
            else:
                print("Sorry,年龄符合,但入职时间和级别都不符合,不可领取礼物")
else:
    print("Sorry,未成年不可领取礼物")

   判断语句综合案例 

案例需求:
定义一个数字(1~10,随机产生),通过3次判断来猜出来数
案例要求:
1.数字随机产生,范围1-10
2.有3次机会猜测数字,通过3层嵌套判断实现
3.每次猜不中,会提示大了或小了                 

import random
num = random.randint(1,10)
guess_num = int(input("请输入第一次猜想的数字:"))
if  guess_num == num :
    print("猜对啦!")
else:
    if guess_num > num :
        print("猜大啦!")
    else:
        print("猜小啦!")
    
    guess_num = int(input("请输入第二次猜想的数字:"))
    if guess_num == num:
        print("猜对啦!")
    else:
        if guess_num > num:
            print("猜大啦!")
        else:
            print("猜小啦!")
        
        guess_num = int(input("请输入第三次猜想的数字:"))
        if guess_num == num:
            print("猜对啦!")
        else:
            if guess_num > num:
                print("猜大啦!")
            else:
                print("猜小啦!")

                           

第四章 循环

while循环

while基本用法

案例一:求1-100的和 
i = 1
sum = 0
while i < 101:
    sum += i
    i += 1
print(f"1到100的和为{sum}")
1到100的和为5050

案例二:猜中1-100内的数字

import random
num = random.randint(1,100)
# 记录猜测次数
count = 1
# 判断循环是否继续的标志
flag = True

while flag:
    guess_num = int(input("请输入你猜的数字:"))
    if guess_num == num:
        flag = 0
    else:
        if guess_num < num:
            print("你猜小了")
        else:
            print("你猜大了")
        count += 1
print(f"你猜对了!你一共猜了{count}次")
请输入你猜的数字:59
你猜大了
请输入你猜的数字:25
你猜小了
请输入你猜的数字:37
你猜小了
请输入你猜的数字:45
你猜大了
请输入你猜的数字:38
你猜小了
请输入你猜的数字:40
你猜小了
请输入你猜的数字:43
你猜大了
请输入你猜的数字:41
你猜对了!你一共猜了8次

进程已结束,退出代码为 0

while的嵌套

案例三:打印9*9乘法表
# 控制行数并且控制第二个数
i = 1
# 打印九行
while i < 10:
    # j控制第一个数
    j = 1
    while j <= i:
        print(f"{j}*{i}={j * i}\t", end = '')
        j += 1
    i += 1
    # 这就是输出一个换行的意思
    print()

注意:

控制print的方法:

(1)不输出换行        print("  ", end = '')

(2)只输出换行        print()

1*1=1	
1*2=2	2*2=4	
1*3=3	2*3=6	3*3=9	
1*4=4	2*4=8	3*4=12	4*4=16	
1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81	

进程已结束,退出代码为 0

案例四:表白100天,每天都送10朵玫瑰花
i = 1
while i < 101:
    print(f"今天是给小可送花的第{i}天")
    j = 1
    while j < 11:
        print(f"给小可送的第{j}朵花")
        j += 1
    i += 1
    print("小可,我喜欢你!")
print(f"坚持到第{i-1}天,表白成功")
# 截取部分
今天是给小可送花的第100天
给小可送的第1朵花
给小可送的第2朵花
给小可送的第3朵花
给小可送的第4朵花
给小可送的第5朵花
给小可送的第6朵花
给小可送的第7朵花
给小可送的第8朵花
给小可送的第9朵花
给小可送的第10朵花
小可,我喜欢你!
坚持到第100天,表白成功

for循环

形式

        for 临时变量 in 待处理数据集(序列):

                循环满足条件时的代码

注意:临时变量作用域限定在循环内,但不遵守该规则程序也能运行,只是说不规范

基本用法

遍历字符串
name = "itheima"
for x in name:
    # 将name的内容,逐个取出赋予x临时变量
    # 在循环体内对x进行处理
    print(f"{x}")
i
t
h
e
i
m
a

进程已结束,退出代码为 0

案例:数一数字符串里有几个a

# 统计a的个数
count = 0
name = "itheima is a brand of itcast"
for x in name:
    if x == 'a':
        count += 1

print(f"{name}中共含有:{count}个字母a")
itheima is a brand of itcast中共含有:4个字母a
range配合使用
三种语法
语法一:range(num)

描述:从0开始,到num结束(不包含num),数字间隔为1逐个取出

for x in range(10):
    # 从0开始,到10结束(不包含10),数字间隔为1逐个取出
    print(f"{x} ", end = '')
0 1 2 3 4 5 6 7 8 9 
进程已结束,退出代码为 0
语法二:range(num1, num2)

描述:从num1开始,到num2结束(不包含num2),数字间隔为1逐个取出

for x in range(1,10):
    # 从1开始,到10结束(不包含10),数字间隔为1逐个取出
    print(f"{x} ", end = '')
1 2 3 4 5 6 7 8 9 
进程已结束,退出代码为 0
语法三:range(num1, num2, step)

描述:从num1开始,到num2结束(不包含num2),数字间隔为step逐个取出

for x in range(0,10,2):
    # 从0开始,到10结束(不包含10),数字间隔为2逐个取出
    print(f"{x} ", end = '')
0 2 4 6 8 
进程已结束,退出代码为 0

案例一:1到num有几个偶数

import random
num = 100
count = 0
for x in range(1,num):
    if x%2==0:
        count += 1
print(f"1到{num} (不含{num}本身)范围内,共有{count}个偶数", end = '')
1到100 (不含100本身)范围内,共有49个偶数
进程已结束,退出代码为 0

案例二:表白100天,每天都送10朵玫瑰花

i = 0
for i in range(1,101):
    print(f"今天是给小可送花的第{i}天")
    j = 0
    for j in range(1,11):
        print(f"给小可送的第{j}朵花")
    print("小可,我喜欢你!")
print(f"坚持到第{i}天,表白成功")
今天是给小可送花的第100天
给小可送的第1朵花
给小可送的第2朵花
给小可送的第3朵花
给小可送的第4朵花
给小可送的第5朵花
给小可送的第6朵花
给小可送的第7朵花
给小可送的第8朵花
给小可送的第9朵花
给小可送的第10朵花
小可,我喜欢你!
坚持到第100天,表白成功

案例三:打印9*9乘法表

# 控制行数并且控制第二个数
i = 1
# 打印九行
for i in range(1,10):
    # j控制第一个数
    j = 1
    while j <= i:
        print(f"{j}*{i}={j * i}\t", end = '')
        j += 1
    # 这就是输出一个换行的意思
    print()
1*1=1	
1*2=2	2*2=4	
1*3=3	2*3=6	3*3=9	
1*4=4	2*4=8	3*4=12	4*4=16	
1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81	

进程已结束,退出代码为 0

continue和break:

continue会跳出本次循环,break会跳出本层循环

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

内容创作策略:打造影响力强大的技术博客

CSDN的朋友你们好&#xff0c;我是未来&#xff0c;今天给大家带来专栏【程序员博主教程&#xff08;完全指南&#xff09;】的第6篇文章——“博客内容创作策略”。本文为技术博主提供了一个精简的内容创作策略指南&#xff0c;涵盖了设定目标、分析竞争、关键词研究、内容规划…

包拯断案 | 集群备份续集:三招解决定时备份延迟@还故障一个真相

今天&#xff0c;小编给大家讲述自己亲身遇到的一个数据库集群备份问题&#xff0c;希望帮助DBA运维的你绕开这个烦恼&#xff0c;轻松找到答案&#xff01; 1、数据库集群在进行定时备份时&#xff08;从节点备份&#xff09;&#xff0c;出现了主从延迟较大的告警&#xff0c…

Jmeter 性能-稳定性测试TPS计算

1、普通计算公式 TPS 总请求数 / 总时间按照需求得到基础数据&#xff0c;比如在去年第xxx周&#xff0c;某平台有5万的浏览量那么总请求数我们可以估算为5万&#xff08;1次浏览都至少对应1个请求&#xff09; 总请求数 50000请求数 总时间&#xff1a;由于不知道每个请求…

Java研学-RBAC权限控制(二)

三 PageHelper 1 分页所需 // 原分页所需 1. 定义QueryObject类&#xff0c;传递分页参数&#xff0c;currentPage&#xff0c;pageSize&#xff0c;get start();方法 2. selectForCount()方法&#xff0c;总条数小于等于0说明不需要分页&#xff0c;大于0说明可以分页 3. se…

“揭秘性能测试工具:优化软件性能的关键秘籍“

性能测试工具的设计宗旨是为了模拟用户对软件应用程序或系统的各种操作&#xff0c;旨在评估关键的性能指标&#xff0c;包括响应时间、吞吐量、并发能力和资源利用率。 通过这些工具模拟的多用户环境&#xff0c;我们能够产生与实际工作负载相似的条件&#xff0c;并监测系统…

OpenCV4.9更多形态转换

返回&#xff1a;OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇:OpenCV4.9处理平滑图像 下一篇:OpenCV4.9更多形态转换 基于这两者&#xff0c;我们可以对图像进行更复杂的转换。在这里&#xff0c;我们简要讨论 OpenCV 提供的 5 个操作&#xff1a; …

使用Docker部署Node.js

第一步&#xff1a;在Node.js项目的根目录中新建Dockerfile文件 # 使用官方 Node.js 镜像作为基础镜像 FROM node:latest# 设置工作目录 WORKDIR /usr/src/app# 将项目文件复制到容器中 COPY . .# 将npm源设置为淘宝镜像 RUN npm config set registry https://registry.npmmir…

Cuda编程-NPP库

Cuda编程先前有过研究&#xff0c;现在记录下Cuda相关的库使用 目录 0.参考文档1.NPP简介1.1 头文件1.2 库文件1.3 编译时链接关系1.4 NPP函数的命名方式1.5 General Conventions 一般约定1.6 Image Processing Conventions 图像处理约定 2.举例&#xff1a;NPP实现YUV转BGR2.1…

Day 20 654.最大二叉树 617.合并二叉树 700.二叉搜索树中的搜索 98.验证二叉搜索树

最大二叉树 给定一个不含重复元素的整数数组。一个以此数组构建的最大二叉树定义如下&#xff1a; 二叉树的根是数组中的最大元素。左子树是通过数组中最大值左边部分构造出的最大二叉树。右子树是通过数组中最大值右边部分构造出的最大二叉树。 通过给定的数组构建最大二叉…

苍穹外卖开发笔记(1.项目介绍和开发环境)

目录 一、项目介绍二、环境搭建1、web管理端前端部署2、后端环境搭建3、数据库搭建4、前后端联调5、导入接口文档 三、完善登录功能四、学习知识1、前端发送的请求&#xff0c;是如何请求到后端服务的&#xff1f; 一、项目介绍 二、环境搭建 由于本项目主要点在于学习后端开发…

头歌-机器学习 第13次实验 特征工程——共享单车之租赁需求预估

第1关&#xff1a;数据探索与可视化 任务描述 本关任务&#xff1a;编写python代码&#xff0c;完成一天中不同时间段的平均租赁数量的可视化功能。 相关知识 为了完成本关任务&#xff0c;你需要掌握&#xff1a; 读取数据数据探索与可视化 读取数据 数据保存在./step1/…

如何使用Android手机通过JuiceSSH远程访问本地Linux服务器

文章目录 1. Linux安装cpolar2. 创建公网SSH连接地址3. JuiceSSH公网远程连接4. 固定连接SSH公网地址5. SSH固定地址连接测试 处于内网的虚拟机如何被外网访问呢?如何手机就能访问虚拟机呢? cpolarJuiceSSH 实现手机端远程连接Linux虚拟机(内网穿透,手机端连接Linux虚拟机) …

SSL中的CA证书

目录 一、CA概述 二、数据加密 三、身份认证 一、CA概述 SSL如何保证网络通信的安全和数据的完整性呢&#xff1f;就是采用了两种手段&#xff1a;身份认证和数据加密。身份认证就需要用到CA证书。 CA是证书的签发机构&#xff0c;它是公钥基础设施&#xff08;Public Key In…

Python --- Python + Vs code的安装与使用(windows平台)

Python Vs code的安装与使用 今天是我第一次开始尝试用Python&#xff0c;然后我想借此机会记录一下整个安装过程和上手过程。之前一直都是用的matlab&#xff0c;这个东西不仅大而且收费&#xff0c;但不可否认的是。matlab的很多东西都做的比较好&#xff0c;但我一直用的都…

经典文章:卷积神经网络的运作原理

https://brohrer.mcknote.com/zh-Hans/how_machine_learning_works/how_convolutional_neural_networks_work.html 参考资料 https://aitechtogether.com/article/38900.html https://www.ruanyifeng.com/blog/2017/07/neural-network.html http://neuralnetworksanddeeplea…

企业工商信息查询API接口有哪些

当今社会我们几乎每天都在和一些企业打交道&#xff0c;有时候需要确认下这家企业经营范围&#xff0c;注册地址等信息&#xff0c;那怎么办呢&#xff0c;这个时候就需要一些企业工商信息查询的API接口了。 有的时候你可以只知道这家公司的大概企业名称&#xff0c;比如数脉&…

springboot-开源项目-追踪法-简单有效,从F12到SQL数据库表

使用的技术栈&#xff1a;springbootmybatis&#xff0c;edge浏览器 插件&#xff1a;MybatisX 第一步&#xff1a; 按F12,选择网络 第二步&#xff1a; 进入IDEA编辑器&#xff0c;键盘按两次shift键&#xff0c;点击第一个&#xff0c;快速定位到该操作 3&#xff1a; 我…

锐化空间滤波器(提高清晰度的另一种方式)

书上一阶微分的定义可以理解&#xff0c;毕竟这里不死数学上的曲线的概念&#xff0c;而是像素点上的曲线。所以&#xff0c;不同于数学的严格单调递增曲线的导数是大于等于零&#xff0c;这里的严格单调递增曲线&#xff0c;只能是大于零。 至于二阶微分的定义&#xff0c;就…

子线程中创建 handler导致okhttp请求失败,从 ScheduledExecutorService 挖的坑开始

子线程创建方法1&#xff1a; ScheduledExecutorService schedulePool Executors.newScheduledThreadPool(2);schedulePool.schedule(new Runnable() {Overridepublic void run() {dorequest();}}, 2, TimeUnit.SECONDS); 子线程创建方法2&#xff1a; new Thread(new Runnab…

功能测试_验证新浪邮箱登录的正确性

案例&#xff1a;验证验证新浪邮箱登录的正确性 功能测试_等价类设计用例&#xff1a; 步骤&#xff1a; 1:明确需求&#xff1a;邮箱能否登录 2:划分等价类&#xff1a;有效等价类、有效取值、无效等价类、无效取值 3&#xff1a;提取数据编写用例&#xff1a;用例编号、…