【Python初级】006-循环语句

循环语句-if-for-while

目录:

1:条件执行和if语句

---------条件执行和if语句

---------else子句

---------elif子句

---------嵌套代码块

---------更复杂的条件

---------断言

2:循环

---------while循环

---------for循环

---------循环遍历字典元素

---------迭代工具

---------跳出循环

---------循环中的else子句

---------列表表推导式----轻量级循环

 

1:条件执行和if分支语句

    ---------条件执行和if语句

 例子:2.7版本

name = raw_input(‘What is your name? :‘)

if name.endswith(‘Genal‘):

print ‘Hello,Genal‘

========================= RESTART: C:/Python27/if.py =========================

What is your name? :Genal

Hello,Genal

注:endswith表示判断()是否是以变量值中的内容结尾的。

例子:

按照100分制,在100到90分之间用A来代表,90到80分之间用B来代表,80到60分之间用C来代表,60分到0分用D来代表。

3.4版本

if控制流语句执行条件原理

if语句也叫做控制流语句,给出条件来决定下一步怎么操作。原理就是如果条件为真,则执行语句块内容被执行;如果条件为假,则语句块不会被执行。

python if条件语句的执行规则

看下面这个例题,你会更清楚if条件语句的执行规则是怎么样的。
a = 2 ,b = 8

if a<b:                      python if语句条件为真True
    print ‘a<b‘            会被执行

if a>b:                      条件为假False
    print ‘a>b‘            不会被执行

执行代码块print字符串内容是不固定的,你可以写入你想要输出的内容,如果不存在要执行的语句,可以使用pass语句。

     ---------else子句

脚本

name = raw_input(‘What is your name? :‘)

if name.endswith(‘Genal‘):

print ‘Hello,Genal‘

else:

print ‘Hello,stranger‘

结果

========================= RESTART: C:/Python27/if.py =========================

What is your name? :Alix

Hello,stranger

    ---------elif子句

elif子句的作用是检查多个条件

 

脚本

score = int (input (‘请输入您的分数来测试您的级别:‘))

if 100 > score >= 90:

print (‘A‘)

elif 90 > score >= 80:

print (‘B‘)

elif 80 > score >= 60:

print (‘C‘)

elif 60 > score >= 0:

print (‘D‘)

else:

print (‘输入错误‘)

执行脚本结果

>>>

请输入您的分数来测试您的级别:0

D

>>> ================================ RESTART ================================

>>>

请输入您的分数来测试您的级别:101

输入错误

>>>

注释:

else和elif语句也可以叫做子句,因为它们不能独立使用,两者都是出现在if、for、while语句内部的。else子句可以增加一种选择;而elif子句则是需要检查更多条件时会被使用,与if和else一同使用,elif是else if 的简写。我们在这里使用的是elif从句,它事实上把两个相关联的if else-if else语句合并为一个if-elif-else语句。这使得程序更加简单,并且减少了所需的缩进数量。当条件一旦满足,执行动作就会停止,不进行匹配后续的条件。

if和else、elif语句使用时要注意以下两点:

1、else、elif为子块,不能独立使用
2、一个if语句中可以包含多个elif语句,但结尾只能有一个else语句


循环类型


描述


while循环


重复一个或一组声明语句,当给定的条件为真。它测试的条件在执行循环体之前。


for循环


执行的语句多次的顺序,它管理循环变量的代码。


内嵌循环


您可以使用一个或多个循环内部,使用任何while在do..while循环。

     ---------嵌套代码块

例子

代码

name = raw_input(‘What is your name? :‘)

if name.endswith(‘Genal‘): #匹配的第一个条件,必须要是Genal结尾

if name.startswith(‘Mr.‘): #匹配的第二个条件,开头是Mr.,结尾是Genal。

print ‘Hello. Mr. Genal‘

elif name.startswith(‘Mrs.‘): #匹配的第二个条件,开头是Mrs.,结尾是Genal。

print ‘Hello. Mrs. Genal‘

else:  #满足第一个条件,但是不满足第二个条件,执行下面语句

print ‘Hello,Genal‘

else:  #第一个条件都不满足的,直接执行下面语句

print ‘Hello,stranger‘

结果

========================= RESTART: C:/Python27/if.py =========================

What is your name? :Mr.Genal

Hello. Mr. Genal

>>>

========================= RESTART: C:/Python27/if.py =========================

What is your name? :Mrs.Genal

Hello. Mrs. Genal

>>>

========================= RESTART: C:/Python27/if.py =========================

What is your name? :Genal

Hello,Genal\

>>>

========================= RESTART: C:/Python27/if.py =========================

What is your name? :Mr.Alinx

Hello,stranger

     ---------更复杂的条件

这里应用到更加复杂的条件就是用到了比较运算符。

例子:相等运算符

代码

num = input(‘Enter your namber :‘)

if num > 2:

if num == 5:

print ‘You are good.The number is 5‘

elif num == 8:

print ‘You are good,The number is 8‘

else:

print ‘Is not this‘

else:

print ‘You are wrong‘

结果

========================= RESTART: C:/Python27/if.py =========================

Enter your namber :5

You are good.The number is 5

>>>

========================= RESTART: C:/Python27/if.py =========================

Enter your namber :8

You are good,The number is 8

>>>

========================= RESTART: C:/Python27/if.py =========================

Enter your namber :1

You are wrong

>>>

========================= RESTART: C:/Python27/if.py =========================

Enter your namber :7

Is not this

例子:is 同一性运算符

>>> x = y = [1,2,3]

>>> z = [1,2,3]

>>> x == y

True

>>> x ==z

True

>>> x is y

True

>>> x is z

False

解析:Python中的对象包含三要素:id、type、value。其中id用来唯一标识一个对象,type标识对象的类型,value是对象的值。is判断的是a对象名是否就是b对象名,是通过id来判断的。==判断的是a对象的值是否和b对象的值相等,是通过value来判断的。

                                                                                        

例子:in 成员资格运算符

代码

name = raw_input(‘Please enter your name:‘)

if ‘e‘ in name:

print ‘Your name contains the letter "e".‘

else:

print ‘Your name does not contains the letter "e".‘

 

结果

========================= RESTART: C:/Python27/in.py =========================

Please enter your name:Genal

Your name contains the letter "e".

>>>

========================= RESTART: C:/Python27/in.py =========================

Please enter your name:Alix

Your name does not contains the letter "e".

 

     ---------断言

accert :断言 目的就是与其让程序在后期崩溃,还不如在早期就崩溃掉。

例子:

>>> age = 10

>>> assert 0 < age < 100

>>> age = -1

>>> assert 0 < age < 100

Traceback (most recent call last):

File "<pyshell#8>", line 1, in <module>

assert 0 < age < 100

AssertionError

2:循环控制语句:

循环控制语句改变其正常的顺序执行。当执行留下作用域,在该范围内创建的所有对象自动销毁。

 ---------while循环

Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:

while 判断条件:

执行语句……

python while循环语句和if语句有哪些不同之处

要想知道while与if两种语句有何不同,首先要知道while语句的工作原理。
if语句是条件为真True,就会执行一次相应的代码块;而while中的代码块会一直循环,直到循环条件不能满足不再为真。

python while语句一般标准语法

while循环语句的语法如下所示:
python while 条件:
    执行代码块

while循环中的执行代码块会一直循环执行,直到当条件不能被满足为假False时才退出循环,并执行循环体后面的语句。python while循环语句最常被用在计数循环中

例子:

代码

#!/usr/bin/python

count = 3

while (count < 5):

print ‘The count is:‘, count

count = count + 1

print "Good bye!"

执行代码结果

The count is: 3
The count is: 4
Good bye!

例子:

x = 1

while x < 10:

print x

x += 1                                                
============= RESTART: C:/Python27/in.py =============

1

2

3

4

5

6

7

8

9

>>>

解析:

变量x的初始值为1,条件是x小于10的情况时,执行代码块x+=1的操作,直到x的值不再小于10就不执行x+=1

 ---------for循环

  While语句非常灵活,它可以用来在任何条件为真的情况下重复执行一个代码块,一般情况下这样就够了,但是有时候,要执行一个集合(序列)的代码块。

 

代码

nember = [‘xue‘,‘yu‘,‘我是一棵草‘,‘I love you‘]

for echo in nember:

print (echo,len(echo))

执行代码结果

>>> ================================ RESTART ================================

>>>

xue 3

yu 2

我是一棵草 5

I love you 10

#3代表字符串‘xue’有3个字符

for循环的近亲 range()

Range()的语法

-- 这个BIF有三个参数,其中用中括号括起来的两个便是这两个参数与是可选的

-- step=1 表示第三个参数的值默认值是1

-- range 这个BIF的作用是生成一个从START参数的值开始到stop参数的值结束的数字序列

 

举例

代码:

for i in range(2,6):

print(i)

 

代码执行结果

>>> ================================ RESTART ================================

>>>

2

3

4

5

>>>

#range指出的范围是2到6,默认是从2开始,到结束的‘-1’

当指定的参数只有1个数时

>>> for i in range(5):

print(i)

0

1

2

3

4

>>>

#这里range只指定一个参数,默认会从0开始,到结束‘-1’

当指定的参数为3个数时

>>> for i in range(1,10,3):

print(i)

1

4

7

#从开始到结束是指前两个数,第三个数指的是连续两个数之间的差。

     ---------循环遍历字典元素

---------迭代工具

---------跳出循环

---------循环中的else子句

---------列表表推导式----轻量级循环

终止循环break-break 用于退出循环

代码:

echo = ‘I love you‘

answer = input(‘please said:‘)

while True:

if answer == echo:

break

answer = input (‘Sorry Please said again:‘)

print(‘You are good‘)

代码执行结果

>>> ================================ RESTART ================================

>>>

please said:I hate you! #判断语句不为真,继续循环执行

Sorry Please said again:You are a dog! #判断语句不为真,继续循环执行

Sorry Please said again:I love you #判断语句为真,跳出循环

You are good

>>>

执行过程:

定义变量echo的值为‘I love you’,执行回车语句‘input’,则将echo变量的值赋给新变量answer,判断语句为真时,跳出循环,结束语句。当判断语句为假时,执行语句循环,直到判断语句为真时,才会跳出循环。

Python支持以下控制语句。点击以下链接,查看其详细信息。


控制语句


描述


break语句


终止循环语句并将执行立即循环下面的语句。


continue语句


导致循环跳过循环体的其余部分,并立即重新测试其状态重申之前状态位置。


pass语句


在Python中的pass语句使用当语句要求不希望任何命令或代码来执行。

Continue语句 continue 用于跳过该次循环

导致循环跳过循环体的其余部分,并立即重新测试其状态重申之前状态位置。

代码:

for i in range(10):

if i%2 != 0:

print (i)  #条件成立的时候,打印这句,即变量值

Continue #条件成立执行继续执行下一个变量值

i +=2  #上述条件不成立,执行这句

print (i)

代码分析:

定义变量‘i’的值为range(‘10’) 执行条件语句,i%2执行相除取余数,是否与0不相等,不相等条件为真就打印出变量的值。并且继续执行变量的值+2,再打印出变量的值,继续判断条件语句是否为真,直到条件语句不为真时,就不打印结果、

代码执行结果

>>> ================================ RESTART ================================

>>>

2

1

4

3

6

5

8

7

10

9

>>>

结果分析:

2 是由变量第一个值0,0%2取余为0,0!=0,条件不为真  不打印变量值0,执行i=0+2=2

1 是由变量第二个值1, 1%2余1, 1!=0条件为真,打印变量值 1 不执行I+=2

4 是由变量第三个值2,2%2取余为0,0!=0 条件不为真,不打印变量值2,执行i=0+2=2+2=4

3 是由变量第四个值3,3%2余1, 1!=0 条件为真, 打印变量值3,不执行i+=2

6 是由变量第五个值4,4%2余0,0!=0条件不为真,不打印变量值4,执行i=0+2=4+2=6

5 是由变量第六个值5, 5%2余1,  1!=0 条件为真, 打印变量值5,不执行i+=2

8 是由变量第七个值6, 6%2余0 ,0!=0条件不为真,不打印变量值6,执行i=0+2=6+2=8

7 是由变量第八个值7,7%2余1,  1!=0 条件为真, 打印变量值7,不执行i+=2

10是由变量第九个值8, 8%2余0 ,0!=0条件不为真,不打印变量值8,执行i=0+2=8+2=10

9 是由变量第十个值9, 9%2余1,  1!=0 条件为真, 打印变量值9,不执行i+=2

变量值执行结束,结果出现上述内容

总结

i+=2 此语句 只有条件为真时才打印,(打印变量的值,和+2的结果 ),天剑不为真时 就不会打印

时间: 2024-12-16 18:57:42

【Python初级】006-循环语句的相关文章

python基础之循环语句

一.if条件语句: 语法: 1.if单分支(单重条件判断) if expression: expr_true_suite 注释:expession为真执行代码expr_true_suite if单分支(单重条件判断) if not  active or over_time >= 10: print('Warning:service is dead') warn_tag+=1 2.if+else循环语句 if 1<2: print('ok') else: print('no') 3.多分支if+

python基础:循环语句和判断语句

小生博客:http://xsboke.blog.51cto.com 小生 Q Q:1770058260 -------谢谢您的参考,如有疑问,欢迎交流 一. python语句块和缩进 缩进是Python语法的一部分:在python语句中,空格是用来区分块的,每一块的语句,缩进量(空格)应该是相同的 Python语言利用缩进表示语句块的开始和退出(Off-side规则),而非使用花括号或者某种关键字: 增加缩进表示语句块的开始,而减少缩进则表示语句块的退出. 在Python中,冒号(:)用来标识语

Python中使用循环语句打印三角形、菱形

前言:在学习开发语言循环语句的使用过程中,经常会打印各种形状来验证对循环语句的熟练掌握程度,接下来就使用python来打印多种形状练习. 如下示例中:变量i用于控制外层循环(图形行数),j用于控制空格的个数,k用于控制星号(*)的个数 1. 打印三角形  1.1 打印直角三角形 #/usr/bin/python rows = int(raw_input('please input a rows:')) i=j=k=1 if rows >= 3: for i in range(0,rows+1):

python条件及循环语句

1.条件语句 2.循环语句 3.迭代器 4.列表解析 5.生成器表达式 1.条件语句 最简单的条件语句: if expression: expr_true_suite 如上,if是关键字,expression是条件表达式,条件表达式支持多重条件判断,可以用布尔操作符and.or和not连接,expr_true_suite是代码块,expression为true时执行,代码块如果只有一行,上面的整个条件语句便可全部写到一行,但可读性差. 带elif和else的条件语句: if expression

20:python中的循环语句

20.1 while语句 问题描述: 求5!. 提示: 求5的阶乘,即5*4*3*2*1 我总觉得不直观,我想最后打印的是形如:5!= 5*4*3*2*1 = 120 20.1.1 print如何去掉自动换行 怎么去掉换行? 去掉了换行,但是,中间夹有空格,怎么去掉空格? 20.1.2 print如何去掉空格 个人练习:怎么实现从键盘输入一个数(需要判断大于0),计算它的阶乘. 20.2 for语句 问题描述: 写程序把字符串'I love python'以单个字符的形式打印出来. 效果如下:

Python基础-----while循环语句

while循环语句会执行条件成立下的代码块,同样需要注意缩进与冒号. 1 #!/usr/bin/evc python 3 2 # -*- coding:utf-8 -*- 3 4 ''' 5 while 条件为真: 6 代码块 7 ''' 8 #条件为真则代码块中的内容会永远执行下去 原文地址:https://www.cnblogs.com/Meanwey/p/9496592.html

Python中的循环语句

Python中有while循环和for循环 下面以一个小例子来说明一下用法,用户输入一些数字,输出这些数字中的最大值和最小值 1 array = [5,4,3,1] 2 3 for i in array: 4 print(i) 5 6 largest = None 7 smallest = None 8 while True: 9 num = input("Enter a number: ") 10 if num == "done" : break if len(n

python——判断、循环语句

简单判断语句:if- 一重判断语句:if-else- 多重判断语句:if elif else- Score=input("请输入你的分数") Score=int(score) If score<60: print("成绩不合格") elif 60<=score<80: print("成绩为良好") elif 80<=score<90: print("成绩为优秀") else: pass if语句执

Python 之 for循环语句

1.最简单的for循环语句 for i in range(10): #i为0.1.2.3.4.5.6.7.8.9 print(i) 2.改变步长的for循环语句 for i in range(0,10,2): #i为0.2.4.6.8 print(i) 原文地址:http://blog.51cto.com/12965094/2343499

Python 之 While 循环语句(实例)

#while 循环 numbers=[1,2,4,6,7,8,12] enent=[] odd=[] while len(numbers) > 0: number=numbers.pop() if(number % 2 == 0): enent.append(number) print number, '是偶数' print numbers else: odd.append(number) print number,'不是偶数' print enent print odd # continue