# ### 代码块: 以冒号作为开始,用缩进来划分作用域,这个整体叫做代码块

if 5 == 5:

print(1)

print(2)

# 注意点: 要么全部使用4个空格,要么全部使用1个缩进 ,这样才叫同一个作用域

"""不能混写"""

# ### 流程控制:

'''

流程: 代码执行的过程

流程控制: 对代码执行的过程进行管控

顺序结构: 代码默认从上到下依次执行

分支结构: 细分在分为如下

循环结构: while  .. for ..

分支结构:

单项分支:

双项分支:

多项分支:

巢状分支:

'''

# 单项分支:

'''

if  条件表达式:

code1

code2

如果条件表达式成立,返回True 执行下面的代码块,

如果条件表达式不成立,返回False 不执行下面代码块

'''

zhangyaowen = "帅哥"

if zhangyaowen == "帅哥":

print("请你吃烤串")

print("请你喝啤酒")

print("请你吃大腰子")

# 双项分支  ( 必须从中选一个分支执行 2选1)

'''

if 条件表达式:

code1

code2

else:

code3

code4

如果条件表达式成立,执行if下面的代码块

如果条件表达式不成立,执行else下面的代码块

if中的代码块可以称之为真区间

else中的代码块可以称之为假区间

'''

zhangyaowen = "野兽"

if zhangyaowen == "盲流子":

print("打他")

print("掐他")

print("吊起来,喂他辣椒水")

else:

print("哄他")

print("爱他")

print("骗他兜里的钱")

# input  等待用户输入字符串

res = input("请输入您的姓名:")

print(res,type(res))

'''

提示用户输入用户名和密码:

如果用户名是admin , 并且密码是000 ,

提示用户恭喜你,登陆成功

否则提示用户名或密码错误

'''

# ### 多项分支

'''

if 条件表达式1:

code1

code2

elif 条件表达式2:

code3

code4

elif 条件表达式3:

code5

code6

else:

code7

如果条件表达式1成立,直接执行if当中的代码块,如果不满足

依次向下判断,看是否条件表达式2成立,成立则执行对应代码块,

反之,继续向下判断 条件表达式3 ,如果成立执行对应代码块,

反之,继续向下判断 如果都没有满足的条件,直接执行else中的代码块

elif 这个条件可以是0个 也可以是多个

else 这个条件可以是0个 也可以是1 个

elif 如果有一个满足,剩下的条件表达式统统不执行.只执行那一个代码块

'''

# 双向分支 (二选一)

youqian = True

if youqian == True:

print("我就嫁给他")

else:

print("你是个好人")

youqian = False

youfang = False

youche = False

youyanzhi = False

youtili = False

# 多项分支 (多选一)

if youqian == True:

print("我就嫁给他1")

elif youfang == True:

print("我就嫁给他2")

elif youche == True:

print("我就嫁给他3")

elif youyanzhi == True:

print("我就嫁给他4")

elif youtili == True:

print("我就嫁给他5")

else:

print("快走吧脑弟,一会好赶不上二路汽车了7")

# 巢状分支 (单项分支 双项分支 多项分支互相嵌套使用)

youqian = True

youfang = True

youche = True

youyanzhi = False

youtili = True

if youqian == True:

if youfang == True:

if youche == True:

if youyanzhi == True:

if youtili == True:

print("你就是我的如意郎君,1")

else:

print("恭喜你,我的1号备胎2")

else:

print("我向来与丑的人无缘,没缘分3")

else:

print("你是个大好人啊4")

# ###循环结构 : while  .. for

'''

while 循环 可以提高代码的效率,减少代码的冗余

while 条件表达式:

code1

code2

如果条件表达式成立,返回True , 就执行其中的代码块

'''

# 基本语法:打印1 ~ 100

# (1)初始化变量i

i = 1

# (2)写循环判断条件

while i<=100:

print(i)

# (3)自增自减的条件

i+=1

"""

# 代码解析:

首先初始化i = 1

然后判断 1<=100 满足 返回True 执行代码块

然后print(1)

i+=1 i = i+1 i=> 2

回到条件表达式当中进行判断 也就是回到16行

2 <= 100 满足 返回True 执行代码块

然后print(2)

i+=1 i = i+1 2+1 i =>3

回到条件表达式当中进行判断 也就是回到16行

3 <= 100 满足 返回True 执行代码块

然后print(3)

i+=1 i = i+1 3+1 i =>4

什么时候跳出条件?

当i = 101的时候

101 <= 100  不满足 返回False 不执行代码块

循环终止...

"""

# (1)第一种方法

# 1~100的累加和

i  = 1

total = 0

while i<=100:

# 写上逻辑

# print(i)

total += i

i+=1

print(total)

# 代码解析:

total += i => total = total + i => 0 + 1 => 1

i+=1 => i = i+1 => 1+1 => 2

2 <= 100 满足 返回真True

total += i => totoal = total + i => 0 + 1 + 2 => 3

i+=1 => i = i+1 => 2+1 => 3

3 <= 100 满足 返回真True

total += i => totoal = total + i => 0 + 1 + 2 + 3 => 6

i+=1 => i = i+1 => 3+1 => 4

4 <= 100 满足 返回真True

total += i => totoal = total + i => 0 + 1 + 2 + 3 + 4 + 5 + ...+ 100 => 5050

当i = 101 的时候

101 <= 100 不满足 循环终止...

# (2) 死循环写法

# while True:

# print(1)

i = 1

flag = True

total = 0

while flag:

total += i

i+=1

# 添加一个能够跳出的条件

if i == 101:

flag = False

print(total)

# 打印一行10个小星星

# help 可以查看帮助文档

help(print)

i = 1

while i<=10:

# end = '' 默认不换行

print("*",end='')

i+=1

python小白——进阶之路——day4天-———流程控制while if循环的更多相关文章

  1. python小白——进阶之路——day2天-———数据类型和Number类型和str字符串

    ### -python的六大标准数据类型(1)Number 数字类型(int float bool complex)(2)String 字符串类型(3)List 列表类型(4)Tuple 元组类型(5 ...

  2. python小白——进阶之路——day1天---认识python和变量、注释

    ###-python的认知 89年开发的语言,创始人范罗苏姆(Guido van Rossum),别称:龟叔(Guido) (1)版本: python2.x原码不规范,重复较多 python3x:原码 ...

  3. python小白——进阶之路——day3天-———运算符

    (1)算数运算符:  + - * / // % ** (2)比较运算符:  > < >= <= == != (3)赋值运算符:  = += -= *= /= //= %= ** ...

  4. python小白——进阶之路——day3天-———容器类型数据+Number类型强制类型转换

    -->Number 部分 int :     整型   浮点型 布尔类型  纯数字字符串 float:    整型   浮点型 布尔类型  纯数字字符串 complex:  整型   浮点型 布 ...

  5. python小白——进阶之路——day2天-———变量的缓存机制+自动类型转换

    # ###同一文件,变量的缓存机制 ''' -->Number 部分 1.对于整型而言,-5~正无穷范围内的相同值 id一致 2.对于浮点数而言,非负数范围内的相同值 id一致 3.布尔值而言, ...

  6. python小白——进阶之路——day2天-———容器类型数据(list,set ,tuple,dict,str)

    #容器类型数据 : list tuple # ###列表的特性:可获取,可修改,有序 # 声明一个空列表 listvar = [] print(listvar,type(listvar)) # (1) ...

  7. 『Python基础』第6节:流程控制之while循环

    在生活中经常遇到循环的事情, 比如循环列表播放歌曲等. 在Python中, 也有循环, 就是其流程控制语句while. 1. 基本循环 while 条件: 循环体 # 如果条件为真, 那么就执行循环体 ...

  8. python全栈开发-Day2 布尔、流程控制、循环

    python全栈开发-Day2 布尔 流程控制 循环   一.布尔 1.概述 #布尔值,一个True一个False #计算机俗称电脑,即我们编写程序让计算机运行时,应该是让计算机无限接近人脑,或者说人 ...

  9. SSIS从理论到实战,再到应用(4)----流程控制之For循环

    原文:SSIS从理论到实战,再到应用(4)----流程控制之For循环 上期回顾: SSIS从理论到实战,再到应用(3)----SSIS包的变量,约束,常用容器 在SSIS体系中,控制流可能经常会遇到 ...

随机推荐

  1. web类协议脚本-飞机订票系统示例

    以下是LR自带的飞机订票系统的Demo,希望能帮助大家. Action() { int iRand; int iTmp; char *strTmpA; char *strTmpB; char *str ...

  2. WebService简单介绍(一)

    分布式系统或软件如何通信?使用WebService服务.说它是服务可以,web通信中间件也ok,web通信组件....... 特点 自包含 自描述 跨平台.跨语言 基于开放和标准 (用了xml,嗯,开 ...

  3. Java开发笔记(十九)规律变化的for循环

    前面介绍while循环时,有个名叫year的整型变量频繁出现,并且它是控制循环进出的关键要素.不管哪一种while写法,都存在三处与year有关的操作,分别是“year = 0”.“year<l ...

  4. linux_shell 编程学习-初识she'll

    一.she'll编程规范 1.she'll脚本命名一般为英文的大小写; 2.不能用特殊符号.空格来命名; 3.she'll脚本后缀以.sh结尾; 4.不建议she'll命名为纯数字,一般以脚本功能命名 ...

  5. Eureka相关知识点

    本文讲述的是 Eureka server, 服务提供者.消费者的一些概念和配置说明. Eureka Server 服务注册中心 Eureka的高可用设计 Eureka侧重点是AP,高可用;Eureka ...

  6. ASP.NET SignalR介绍

    是什么? 简单来说,ASP.NET SignalR是一个开源的实时通讯(real-time)库,有了ASP.NET SignalR,我们可以在 详细介绍参考:https://docs.microsof ...

  7. 一个可以自动生成css样式的插件happycss

    一直在页面写css, 重复写着样式,发现布局中,特别是h5,大量的样式都是margin,padding,width,height, 而,当我们需要给一个标签写样式的时候,避免内联样式,我们又需要取cl ...

  8. ArcGIS Server注册数据库——以oracle为例

    原创文章,转载须标明出处自: https://www.cnblogs.com/gisspace/p/9089117.html ------------------------------------- ...

  9. JAVA forname classnotfoundexception 错误

    今日在使用Class.forName方法的时候报了错误: JAVA forname classnotfoundexception 原因是Class.forName(className);里面的clas ...

  10. AndroidTV端的requestFocus()问题

    每次开机盒子或者电视的时候,发现给某些控件设置请求焦点 requestFocus 会失效 最终的解决办法就是延时请求 view.postDelayed(new Runnable() { @Overri ...