python语法入门之流程控制

流程控制是指控制流程,具体指控制程序执行的流程。

流程控制分为三种:

1.顺序结构 程序从上而下的正常执行(正常执行的代码就是顺序结构)
2.分支结构 赋予程序人的思维逻辑进行判断。(用if进行判断)
3.循环结构 让程序进行重复的判断。(用while,或者for)

分支结构

分支结构就是根据条件与你定义的参数进行判断。若满足条件1则执行代码块1,若不满足,则与下面条件相对比。。直到语句结束。

if语句用法:

if 条件1: #如果条件1成立,则执行代码块1,若不成立,则执行下一个判断

代码块1

elif 条件2: # 如果条件2成立,则执行代码块2,若不成立,则执行下一个判断

代码块2

.........

elif 条件n: # 如果条件n成立,则执行代码块n,若不成立,则执行下一个判断

代码块n

else: #如果以上的条件都没成立,则执行代码块n+1

代码块n+1

if语句是从上往下执行的,一但满足条件,则会执行相应的代码块,并结束这个if语句。

例如:

如果:成绩>=90,那么:优秀

如果成绩>=80且<90,那么:良好

如果成绩>=70且<80,那么:普通

其他情况:很差

score = input('请输入成绩:')
score = int(score)            #因为input输入的无论什么,都会变成字符串类型的。
if score >= 90:  #字符串类型是没有办法和数字进行比较,所以必须先改为int类型
   print('优秀')
elif score >= 80:
   print('良好')
elif score >= 70
   print('普通')
else:
   print('很差')

if嵌套的使用

女人的年龄>=18并且<22岁并且身高>170并且体重<100并且是漂亮的

那么:表白,否则:叫阿姨 如果表白成功,那么:在一起 否则:打印。。。

age = 18
height = 171
weight = 98
is_beautiful = True
if 22 > age >= 18 and height > 170 and weight < 100 and is_beautiful:
   print('I love you', end=' ')
   a = input('我想让你得到我,可以吗:')
   if a == '可以':
       print('在一起')
   else:
       print('什么爱情不爱情的,爱nmlgb的爱情,爱nmlg啊')
else:
   print('阿姨好')

循环结构

循环结构就是如果满足条件则会一直循环改代码块

因为人类某些时候需要重复做某件事情,所以就衍生出了循环结构

while循环语法

while   条件:
代码块1
  代码块2
       代码块3
       。。。

执行逻辑为,如果满足条件,则会执行代码块1,再执行代码块2,代码块3.。。。代码块执行完之后会重新判断是否满足条件,若满足,则会再次执行代码块。

break:结束本层循环,只能结束当前这层循环。

continue:跳过本层循环,直接进行下一次循环。

案例:进行一个用户登陆系统,输入密码输错3次,则锁定用户3分钟。登陆成功则可以输入命令。输入exit则退出程序。

import time
from_db_username = 'white'
from_db_password = '123'

count = 0
while count < 3:
   username = input('请输入您的用户名:')
   password = input('请输入您的密码:')
   if from_db_username == username and from_db_password == password:
       print('登陆成功')
       while True:
           cmd = input('>>>:')
           if cmd == 'exit':
               break
           else:
               print(f'执行命令{cmd}')
       break
   else:
       print('登陆失败3次,锁定用户3分钟')
   count += 1
if count == 3:
   print('锁定用户3分钟')
   time.sleep(180)

案例: 打印1到10之间,除7以外的所有数字 。

count = 0
while count < 10:
   count += 1
   if count == 7:
       continue
   else:
       print(count)

for循环

for循环语法

循环结构的第二种实现方式是for循环,for循环可以做的事情while循环都可以实现,之所以用for循环是因为在循环取值(即遍历值)时for循环比while循环的使用更为简洁 。

for 变量名 in 可迭代对象:

代码块1

代码块2

代码块3

........

案例

for循环嵌套: 请用for循环嵌套的方式打印如下图形
*****
*****
*****

for i in range(3):
   for j in range(5):
       print('*', end='')
   print()
打印九九乘法表
for i in range(1, 10):                   #先取出1到9的数字
   for j in range(1, i+1): #定义一个j取1到i的数字
       print(f'{j}*{i}={i*j}', end=' ') #进行格式话输出输出格式为 1*1=1 同时将换行符换
       if i * j < 10: #为空格
           print(end=' ') #i*j小于10的话则多输出一个空格
   print() #当j执行结束后将换行符取消掉,再进行i的下一轮循环

python语法入门之流程控制的更多相关文章

  1. 053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结

    053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结 本文知识点: 流程控制知识总结 流程控制知识总结 选择结构语句 循环结构语句 ...

  2. 052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试——debug2 多断点调试程序

    052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试--debug2 多断点调试程序 本文知识点: Eclipse下程序调 ...

  3. 051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试——debug入门1

    051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试--debug入门1 本文知识点: 程序调试--debug入门1 程序 ...

  4. 050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句

    050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句 本文知识点:continue语句 continue语句 continue ...

  5. 049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句

    049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句 本文知识点:break语句 break语句 break语句前情回顾 1.swi ...

  6. 048 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 10 案例——阶乘的累加和

    048 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 10 案例--阶乘的累加和 本文知识点:通过案例练习嵌套循环应用 案例练习--阶乘的累加和 案例题目 ...

  7. 047 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 09 嵌套while循环应用

    047 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 09 嵌套while循环应用 本文知识点:嵌套while循环应用 什么是循环嵌套? 什么是循环嵌套? ...

  8. 046 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 08 for循环的注意事项

    046 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 08 for循环的注意事项 本文知识点:for循环的注意事项 for循环的注意事项 for循环有3个 ...

  9. 045 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 07 for循环应用及局部变量作用范围

    045 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 07 for循环应用及局部变量作用范围 本文知识点:for循环应用及局部变量作用范围 for循环 w ...

随机推荐

  1. .net core 3.0 Signalr - 04 使用Redis做底板来支持横向扩展

    在实际的系统中,可能需要多台机器部署;然而,Signalr的连接信息是跟站点走的,举个例子 推送系统部署了A.B两个服务器,张三访问A服务器,李四访问B服务器,当张三通过A服务器向李四推送的时候,A服 ...

  2. C# HttpWebRequest 后台调用接口上传大文件以及其他参数

    直接上代码,包各位看客能用!!! 1.首先请求参数的封装 /// <summary> /// 上传文件 - 请求参数类 /// </summary> public class ...

  3. Kafka 学习笔记之 Producer/Consumer (Scala)

    既然Kafka使用Scala写的,最近也在慢慢学习Scala的语法,虽然还比较生疏,但是还是想尝试下用Scala实现Producer和Consumer,并且用HashPartitioner实现消息根据 ...

  4. 编译安装msyql

    环境: ubuntu18.04.2 mysql5.7.21 #创建mysql属组 groupadd mysql useradd -g mysql mysql #查看属组 tail /etc/passw ...

  5. mysqlbinlog增量恢复(基于使用事件位置position的恢复)

    1.在xtrabackup 备份+还原文章中我们记录了备份到的binlog文件名和position点位置使用如下命令就可以进行增量的恢复了shell> mysqlbinlog --stop-po ...

  6. Java微服务(二):负载均衡、序列化、熔断

    本文接着上一篇写的<Java微服务(二):服务消费者与提供者搭建>,上一篇文章主要讲述了消费者与服务者的搭建与简单的实现.其中重点需要注意配置文件中的几个坑. 本章节介绍一些零散的内容:服 ...

  7. Springboot 系列(十四)迅速启用 HTTPS 加密你的网站

    1. 获取 HTTPS 证书 正常情况下 HTTPS 证书需要从证书授权中心获得,这样获得的证书才具有公信力,也会被各种浏览器客户端所认可.常见的证书品牌如 Symantec,GeoTrustm,Tr ...

  8. Redis 哨兵机制以及灾难演练

    #### 哨兵都采用这个配置即可 ##### 1.修改sentinel.conf配置文件 ![image](https://img2018.cnblogs.com/blog/1334966/20191 ...

  9. Node.js新手必须知道的4个JavaScript概念

    如果只需要知道一种编程语言就可以构建一个全栈的应用程序,是不是特别了不起?Ryan Dahl为了把这个想法成为现实,创造了node.js.Node.js是建立在Chrome强劲的V8 JavaScri ...

  10. mvc请求管道(一)

    一.前言 在平常做后台开发的时候,经常会说到请求管道,很多开发者都知道这个,也能说几句,可能没法详细的去介绍,今天就来详细的说一下这个. 二.到达IIS之前 请看下面这个流程图.从用户打开浏览器到请求 ...