Python中的分支和循环具体是什么?

2020-09-29 17:08发布

4条回答
aijingda
2楼 · 2020-09-29 18:31

分支结构:if

2.1 if 单分支结构 - 满足某个条件就执行某个操作,不满足就不执行

语法:
if 条件语句:
代码块

说明:
if - 关键字,固定写法
条件语句 - 可以是任何有结果的表达式;比如:独立的数据、运算表达式(不能是赋值运算)、函数调用表达式

: - 固定写法
代码块 - 和 if 保持一个缩进的一条或者多条语句; 满足条件才会执行的一条或者多条语句。(至少要有一条语句)

执行过程:先判断条件语句是否为True(如果不是布尔值就先h转换成布尔再判断), 如果为True就执行if语句中的代码块,否则就不执行。


for循环

1.for循环

语法:
for 变量 in 序列:
循环体

说明:
for - 关键字;固定写法
变量 - 可以是已经赋值过的变量也可以是没有赋值过的变量
in - 关键字;固定写法
序列 - 任何容器型数据类型的数据;字符串、列表、元组、集合、字典、迭代器、生成器、range…
: - 固定写法
循环体 - 和 for 保持一个缩进的一条或者多条语句;需要被重复执行的一条或者多条语句

执行过程:
让变量去序列中取值,一个一个的取,取完为止,每取一个值执行一次循环体。
(for 循环的循环次数由序列中元素的个数决定)


天天
3楼 · 2020-09-29 19:05

分支:至今,我们所写的Python代码都是顺序执行,但是有时候在代码中是需要进行逻辑判断的,比如用户 输入用户名和密码,输入正确则验证通过,否则即验证失败。这个时候就会产生两个分支,而且两个分支只会有一条分支会走下去。当然,还有很多类似的场景,我们将这种结果称为 "分支结构" 或 “选择结构”。

循环:如果在程序中我们将执行一系列的重复指令,比如我想计算1 - 100的和 或者 我想输出99次 helloWorld,难道要一个个去写么,如果真是这样,那么编程的工作就太不合理了,所以,我们还需要了解一下循环结构,如果我们学会了循环结构,就可以重复的执行某些操作指令。

在Python中构造循环结构有两种做法,一种是for-in循环,一种是while循环。


小狮子
4楼 · 2020-10-12 16:39

if单分支结构

  • 满足条件执行某个操作,不满足就不执行。

  • 语法:

if 条件语句:(注意缩进和 : )
   代码块(不用缩进自动缩进,手动缩进按Tap就可以)
其他代码(if外面的代码)123

  • 说明:
    1.if - 关键字;固定写法
    2.条件语句 - 任何有结果的表达式(具体的数据,除了赋值语句以外的任何运算表达式,条件语句可以是除了赋值语句以外的任何表达式
    ,函数调用表达式)

  1. : - 一定要写。

  2. 代码块 -和if保持一个缩进的一条或者多条语句;需要在满足条件才会执行的代码才写在代码块。

  • 执行过程:
    先判断条件语句是否为True(如果不是布尔就看条件语句结果的布尔值是否为True),为True
    就执行if 里面的代码块否则不执行。

if 双分支结构
  • 满足条件执行某个操作,不满足执行另一个操作

  • 语法:

if 条件语句:
 代码块1(条件满足要执行代码块1)
else:
 代码块2(条件不满足要执行代码块2) 
12345
  • 执行过程
    先判断条件语句是否为True(如果不是布尔就转换成布尔)如果为True就执行代码块1,否则就执行代码块2

if多分支结构
  • 根据不同的条件执行不同的操作。

  • 语法:

if 条件语句1:
 代码块1elif 条件语句2:
 代码块2elif 条件语句3;
 代码块3...else:
 代码块N(前面的条件都不满足时)
其他代码12345678910
  • 执行过程
    先判断条件语句1是否为True,如果是就执行代码1,然后if语句结构直接结束;否则
    就判断条件语句2是否为True,如果为True就执行代码2,然后整个if语句结构直接结束;
    否则就判断条件语句3,以此类推
    如果前面所有的条件语句都不成立,就直接else后面的代码块。


浅浅77
5楼 · 2020-10-14 09:34
  • 一.条件语句

    • 1.if语句

    • 2.if-else语句

    • 3.if-elif-else语句

  • 二.循环语句

    • 1.for循环

    • 2.while循环

  • 三.循环嵌套

  • 四.continue、break和pass以及else语句

    • 1.continue语句

    • 2.break语句

    • 3.pass语句

    • 4.else语句

 

一.条件语句

条件语句可以给定一个判断条件,并在程序执行过程中判断该条件是否成立。程序根据判断结果,执行不同的操作,这样就可以改变代码的执行顺序,从而实现更多的功能。

Python中条件语句通常有if语句、if-else语句和if-elif-else语句。

 

1.if语句

if结构:满足条件就执行某个操作,不满足就不执行。语法: if 条件语句:      代码段

1
2
3
4
# 如果num是奇数打印'奇数'
num = 11
if num % 2 !=0:
 print('奇数')

运行结果:

奇数 1

 

2.if-else语句

if-else结构:满足条件执行某个操作,不满足条件的时候执行另外一个操作。

语法:if

条件语句:    

代码段1(满足条件要执行的代码)   

else:    

代码段2(不满足条件要执行的代码)

1
2
3
4
5
6
# 根据成绩合格范围打印'合格'或者'不合格'
grade = 96
if grade >= 60:
 print('合格')
else:
 print('不合格')

运行结果:

合格 1

 

3.if-elif-else语句

if-elif-else结构:满足不同的条件执行不同的操作,后面的条件是在前面的条件不成立的时候进行判断的。

语法:if 条件语句1:    

 代码段1    

elif 条件语句2:    

 代码段2    

elif 条件语句3:     

代码段3    

……    

else:     

代码段N

1
2
3
4
5
6
7
8
# 根据成绩合格范围打印'优秀(90以上)''合格(60-90)'、'不合格(60以下)'
grade = 96
if grade > 90:
 print('优秀')
elif 60 <= grade < 90:
 print('合格')
else:
 print('不合格')

运行结果:

优秀 1

 

二.循环语句

循环的意思是让程序重复地执行某些语句。在实际应用中,当碰到需要多次重复地执行一个或多个任务时,可考虑使用循环语句来解决。其特点是在给定条件成立时,重复执行某个程序段。

 

1.for循环

语法:for 变量名

in 序列:     

循环体

1
2
3
# 循环十次hello world!
for index in range(10):
 print(index, 'hello world!')

运行结果:

0 hello world! 1 hello world! 2 hello world! 3 hello world! 4 hello world! 5 hello world! 6 hello world! 7 hello world! 8 hello world! 9 hello world!

注释:range函数可以产生指定范围的数字序列,配合for循环使用可以更加方便的控制for循环的循环次数。

1)range(N)---产生0~N-1的数字序列例如:range(3) -> 0,1,2 1)range(M,N)---产生M~N-1的数字序列例如:range(1,4) -> 1,2,3 1)range(M,N,step)---从M开始每隔step产生下一个数字,到N前一个数为止例如:range(0,4,2) -> 0,2

 

2.while循环

语法:while 条件语句:      循环体

1
2
3
4
num = 0
while num < 4:
 print('num:',num)
 num += 1

运行结果:

num: 0 num: 1 num: 2 num: 3

for与while的使用情景:

使用for循环情景:1.循环次数确定的时候  2.遍历序列使用while循环情景:1.死循环   2.循环次数不确定的时候

 

三.循环嵌套

在Python语言中是可以允许在一个循环体里面嵌入另一个循环,例如for-for循环,while-while循环,也可以在while循环中可以嵌入for循环,反之,亦行。

1
2
3
4
5
6
7
8
9
10
i = 2
while i < 10:
 j = 2
 while j <= i / j:
 if not i % j:
 break
 j = j + 1
 if j > i / j:
 print(i, " 是素数")
 i = i + 1

运行结果:

2 是素数 3 是素数 5 是素数 7 是素数

 

四.continue、break和pass以及else语句

 

1.continue语句

作用:是循环体中的关键字,用来跳过当前循环的剩余语句,然后继续进行下一轮循环。

1
2
3
4
5
for x in range(4):
 print(x, 'hello')
 if x % 2 == 0:
 continue
 print(x, 'world')

运行结果:

0 hello 1 hello 1 world 2 hello 3 hello 3 world

 

2.break语句

作用:是循环体中的关键字,用来终止循环语句,即使循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。(如果使用嵌套循环,break语句将停止最深层的循环,并开始执行下一行代码。)

1
2
3
4
5
for x in range(4):
 print(x, 'hello')
 if x % 2 == 0:
 break
 print(x, 'world')

运行结果:

0 1

 

3.pass语句

作用:是空语句,不做任何事情,一般用做占位语句,是为了保持程序结构的完整性。

1
2
3
4
5
for x in range(4):
 print(x, 'hello')
 if x % 2 == 0:
 pass
 print(x, 'world')

运行结果:

0 hello 0 world 1 hello 1 world 2 hello 2 world 3 hello 3 world

 

4.else语句

作用: 可以通过判断else中代码有没有执行来判断循环有没有遇到break。

 1)完整的for循环             2)完整的while循环
  for 变量 in 序列:            while 条件语句:
    循环体                 循环体
  else:                 else:
     代码段                 代码段

没有遇到break的情景:

1
2
3
4
for x in range(4):
 print(x)
else:
 print('hello')

运行结果:

0 1 2 3 hello

遇到break的情景:

1
2
3
4
5
for x in range(4):
 print(x)
 break
else:
 print('hello')

运行结果:

0

总结

以上所述是小编给大家介绍的Python中的分支和循环结构,希望对大家有所帮助!

相关问题推荐

  • 回答 3

    换行。比如,print hello\nworld效果就是helloworld\n就是一个换行符。\是转义的意思,&#39;\n&#39;是换行,&#39;\t&#39;是tab,&#39;\\&#39;是,\ 是在编写程序中句子太长百,人为换行后加上\但print出来是一整行。...

  • 回答 42

    十种常见排序算法一般分为以下几种:(1)非线性时间比较类排序:a. 交换类排序(快速排序、冒泡排序)b. 插入类排序(简单插入排序、希尔排序)c. 选择类排序(简单选择排序、堆排序)d. 归并排序(二路归并排序、多路归并排序)(2)线性时间非比较类排序:...

  • 回答 70
    已采纳

    前景很好,中国正在产业升级,工业机器人和人工智能方面都会是强烈的热点,而且正好是在3~5年以后的时间。难度,肯定高,要求你有创新的思维能力,高数中的微积分、数列等等必须得非常好,软件编程(基础的应用最广泛的语言:C/C++)必须得很好,微电子(数字电...

  • 回答 28

    迭代器与生成器的区别:(1)生成器:生成器本质上就是一个函数,它记住了上一次返回时在函数体中的位置。对生成器函数的第二次(或第n次)调用,跳转到函数上一次挂起的位置。而且记录了程序执行的上下文。生成器不仅记住了它的数据状态,生成器还记住了程序...

  • 回答 9

    python中title( )属于python中字符串函数,返回’标题化‘的字符串,就是单词的开头为大写,其余为小写

  • 回答 6

    第一种解释:代码中的cnt是count的简称,一种电脑计算机内部的数学函数的名字,在Excel办公软件中计算参数列表中的数字项的个数;在数据库( sq| server或者access )中可以用来统计符合条件的数据条数。函数COUNT在计数时,将把数值型的数字计算进去;但是...

  • 回答 1

    head是方法,所以需要取小括号,即dataset.head()显示的则是前5行。data[:, :-1]和data[:, -1]。另外,如果想通过位置取数据,请使用iloc,即dataset.iloc[:, :-1]和dataset.iloc[:, -1],前者表示的是取所有行,但不包括最后一列的数据,结果是个DataFrame。...

  • Python入门简单吗2021-09-23 13:21
    回答 45

    挺简单的,其实课程内容没有我们想象的那么难、像我之前同学,完全零基础,培训了半年,直接出来就工作了,人家还在北京大公司上班,一个月15k,实力老厉害了

  • 回答 4

    Python针对众多的类型,提供了众多的内建函数来处理(内建是相对于导入import来说的,后面学习到包package时,将会介绍),这些内建函数功用在于其往往可对多种类型对象进行类似的操作,即多种类型对象的共有的操作;如果某种操作只对特殊的某一类对象可行,Pyt...

  • 回答 8

     相当于 ... 这里不是注释

  • 回答 4

    还有FIXME

  • 回答 3

    python的两个库:xlrd和xlutils。 xlrd打开excel,但是打开的excel并不能直接写入数据,需要用xlutils主要是复制一份出来,实现后续的写入功能。

  • 回答 8

    单行注释:Python中的单行注释一般是以#开头的,#右边的文字都会被当做解释说明的内容,不会被当做执行的程序。为了保证代码的可读性,一般会在#后面加一两个空格然后在编写解释内容。示例:#  单行注释print(hello world)注释可以放在代码上面也可以放在代...

  • 回答 2

    主要是按行读取,然后就是写出判断逻辑来勘测行是否为注视行,空行,编码行其他的:import linecachefile=open(&#39;3_2.txt&#39;,&#39;r&#39;)linecount=len(file.readlines())linecache.getline(&#39;3_2.txt&#39;,linecount)这样做的过程中发现一个问题,...

  • 回答 4

    或许是里面有没被注释的代码

  • 回答 26

    自学的话要看个人情况,可以先在B站找一下视频看一下

没有解决我的问题,去提问