python常用的控制语句_Python_02-控制语句

目录:

1         控制结构...

1.1      分支语句...

1.1.1   if语句的嵌套...

1.2      for循环...

1.2.1   Python 循环中的控制语句...

1.3      while循环语句...

1.3.1   举例...

1       控制结构

Python支持三种不同的控制结构:if,for和while,不支持C语言中的switch语句。

1.1   分支语句

格式:

if EXPRESSION1:

STATEMENT1

elif EXPRESSION2:

STATEMENT2

else:

STATEMENT3

if    :

else :

说明: 不需加括号,例如a==b即可,但后面却有一个冒号是不可少的“:”;

else后也有一个冒号“:”。

、要以缩进的格式书写,因为python中,缩进量相同的是同一块。这与C语言的一对大括号{}不同。

if语句用来检验一个条件,如果为真,我们运行一块语句(称为 if-块),否则我们处理另外一块语句(称为 else-块)。 else从句是可选的。

示例1

score=int(input())

if score<60:

print("D")

elif score<80:

print("C")

elif score<90:

print("B")

else:

print("A")

示例2

# if elif else语句

score = int(input("score:"))

if(score >= 90) and (score <= 100):

print ("A")

elif(score >= 80) and (score < 90):

print( "B")

elif(score >= 60) and (score < 80):

print ("C")

else:

print ("D")

1.1.1   if语句的嵌套

编写条件语句时,应该尽量避免使用嵌套语句。嵌套语句不便于阅读,而且可能会忽略一些可能性。

例子:

x = -1

y = 99

if(x >= 0):

if(x > 0):          #嵌套的if语句

y = 1

else:

y = 0

else:

y = -1

print ("y =", y)

如何实现类似switch语句功能:

1.2   for循环

格式:

for    in    :

示例1:

mylist = "for statement"

for cc in mylist:

print(cc)

else: #最终执行

print("End list")

示例2:

#!/usr/bin/python

for letter in 'Python': # First Example

print 'Current Letter :', letter

fruits = ['banana', 'apple', 'mango']

for fruit in fruits: # Second Example

print 'Current fruit :', fruit

print "Good bye!"

1.2.1   通过序列索引迭代

另外一种执行循环的遍历方式是通过索引,如下实例:

#!/usr/bin/python

fruits = ['banana', 'apple',  'mango']

for index in range(len(fruits)):

print ('Current fruit :', fruits[index])

print( "Good bye!")

以上实例输出结果:

Current fruit : banana

Current fruit : apple

Current fruit : mango

Good bye!

以上实例我们使用了内置函数len()和range(),函数len()返回列表的长度,即元素的个数。range返回一个序列的数。

函数range()是一个内置函数:生成某个范围内的数字列表。

例如:

range(1,6)就会生成[1,2,3,4,5]这样一个列表,

range(8)会生成[0,1,2,3,4,5,6,7]这样一个列表。

示例:

for i in range(1,5,1):

print(i)

它在一序列的对象上递归,即逐一使用队列中的每个项目,对每个项目执行一次循环体。

应用中常用的格式是

for  in  range(N1, N2, N3)  :

其中,N1表示起始值,N2表示终止值,N3表示步长。依次取从N1开始,间隔N3,到N2-1终止的数值,执行。

当然可以有嵌套循环,比如说有一个列表list=['China','England','America'],要遍历输出每个字母。

实现:

list=['China','England','America']

for i in range(len(list)):

word=list[i]

for j in range(len(word)):

print (word[j] )

例如:

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

print(i)

print ('The for loop is over' )

结果为:

C:\Python31>python for.py

1

4

7

The for loop is over

在这个程序中,打印了一个序列的数,而这个序列是使用内建的range函数生成的。例如,range(1,5)给出序列[1, 2, 3, 4]。默认地,range的步长为1。range(1,10,3)给出[1,4,7]。range向上延伸到第二个数,但不包含第二个数。

for循环在这个范围内递归——for i in range(1,10,3)等价于for i in [1, 4, 7],这就如同把序列中的每个数(或对象)赋值给i,然后一次对每个i的值执行这个程序块。

最后加一点,Python中的for和while循环都可以加else子句,else子句在整个循环执行条件不符合时执行(这种用法现在一般用得比较少了)。

#这两段循环功能完全相同

count=5

while count>0:

print ('i love python')

count=count-1

else:

print ('over')

count=5

while count>0:

print ('i love python')

count=count-1

print ('over')

1.2.2   Python 循环中的控制语句

①break

break语句与C语言中的一样,跳出最近的for或while循环。

②continue

continue语句同样是从C语言借用的,它终止当前迭代而进行循环的下一次迭代。

③pass

pass语句什么都不做,它只在语法上需要一条语句但程序不需要任何操作时使用。pass语句是为了保持程序结构的完整性。

④else子句

在循环语句中还可以使用else子句,else子句在序列遍历结束(for语句)或循环条件为假(while语句)时执行,但循环被break终止时不执行。如下所示:

例子:

#循环结束执行else子句

for i in range(2, 11):

print(i)

else:

print('for statement is over.')

#被break终止时不会执行else子句

for i in range(5):

if(i == 4):

break;

else:

print(i)

else:

print('for statement is over') #不会输出

1.3   while循环语句

while  :

注意,后有一个冒号,要使用缩进的格式。while语句的功能是党成立(为真)时,执行循环体,然后再次检验,如果成立,再次执行循环体,直到不再成立,然后执行后面的程序。

1.3.1   举例

a = 0

while a < 5:

a = a + 1

print (a)

else:

print ("a's value is five")

例子:

count=5

while count>0:

count=count-1

if count==3:

continue

print ("i love python!" )

>>>

i love python!

i love python!

i love python!

i love python!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值