首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

python(二)—选择和循环结构

python(二)—选择和循环结构

一、选择结构

选择结构有三种,分别为单分支,双分支,多分支选择结构

if语句的执行过程是:计算表达式的值,若值为true,则执行if后面的语句块,若为false,则直接执行后续语句

·单分支选择一般格式为:

if 条件句:

语句块

·双分支选择结构一般格式为:

if 条件句:

语句块

else:

语句块

·多分支选择结构一般格式:

if 条件句:

语句块

elif 条件句:

语句块

else:

语句块

下面演示一个例子:

s = int(input("your grade:")) #input输入是返回数值字符串类型(str),调用int()函数转换为整型

if s > 90:

print ("优秀")

elif s >=60:

print("及格")

else:

print("不及格")

your grade:50

不及格

elif是else if的缩写,完全可以有多个elif,if语句执行有个特点,它是从上往下判断,如果在某个判断上是True,把该判断对应的语句执行后,就忽略掉剩下的elif和else

二、循环结构

1、while语句

while的表达式表示循环条件,先计算表达式的值,结果解释为true或者false,如果是true,执行循环体中的语句,如果是false,才结束循环。

·while语句一般表达式为:

while 表达式:

语句块(循环体)#循环体可以是单语句,也可以是多语句,多语句必须缩进对齐

例如:

p,n,r = 1,0,0.3

while p < 2:

n+=1 #相当于 n=n+1

p*=1+ r

print (n,p)

注意:如果表达式永远为true,循环体将会无限的执行下去(“死”循环),所以要修改表达式的值,使其趋向false的值,尽量避免死循环,进入死循环后,可用Ctrl+C退出死循环。例如:

n = 1

while n ==1:

print('good')

·在while语句中使用else语句

else会在循环正常执行完情况下执行,例如:

n = int(input())

while n < 3:

print(n)

n+=1

else:

print("n>=3",n)

2、for循环

for语句的一般格式为:

for 目标变量 in 序列对象:

语句块

for语句将序列对象中元素逐个赋值给目标变量,目标变量的作用的存储每一次循环引用的序列对象元素,每一次赋值,执行一遍语句块,序列遍历后,结束循环后,执行for后面的语句。列表,元组,字符串都可以当序列,用于for循环时,元组和列表都是同样的作用,循环的次数取决于序列元素的个数,而不是值。例如:

·遍历列表循环

fs = ['a','b','c']

for f in fs:

print(f)

a

b

c

·遍历元组循环

ys = ('a','b','c')

for y in ys:

print(y)

·遍历字符串循环

st = "hello,world"

for i in st:

print(i)

·在循环体中也可以引用目标变量,这样能控制循环次数

s = 0

for i in ['1','2','3']:

print(i)

s=i+1

print(s)

·可以在循环体中修改目标变量的值,当程序执行循环再次回到循环开始是,会被当成下一个元素,退出循环后,该变量就是循环序列中最后的元素,例如:

s = ['1','2','3']

for i in s:

print(i)

i=5

print("修改后i的值",i)

print("结束循环后i的值",i)

print("结束循环后s的值",s)

·for语句也支持else快,功能和while一样,如果循环离开没有遇到break语句,就会执行else语句。例如;

for i in ['1','2','3']:

print(i)

else:

print("hello,world")

1

2

3

hello,world

·range对象在for循环中的使用

rang()函数返回的是可迭代的对象,python调用内置函数iter()获得迭代器,自动调用内置函数next()获取元素,如果遍历一个数列,可以用range 对象,例如:

for i in rang(0,1):

print(i)

1

·注意:在这里说明一下range的用法

>>> range(5) #代表从0到5(不包含5)

[0, 1, 2, 3, 4]

>>> range(1,5) #代表从1到5(不包含5)

[1, 2, 3, 4]

>>> range(1,5,2) #代表从1到5,间隔2(不包含5)

[1, 3]

3、break语句

break用在循环体中,让循环停止,继续执行循环结构后面的语句。例如:

n = 5

while n>0:

print(n)

n=n-1

if n==2:break

print("循环结束后的n:",n)

5

4

3

循环结束后的n: 2

4、continue语句

continue语句执行时,不会退出循环结构,而是结束本次循环,重新开始下一轮循环,也是就跳过continue后面的语句,例如

n = 0

while n < 10:

n = n + 1

if n == 3: # 当n=3,执行continue语句

continue # continue语句会直接继续下一轮循环,后续的print()语句不会执行

print(n)

1

2

4

5

·注意:continue和break的区别就是continue只结束本次循环,而不是终止整个循环,break是跳出所在的循环体

5、pass语句

pass是一个空语句,代表空操作。循环体可以包括一个或多个语句,但不能空语句,所以当只是想让程序循环一定次数,循环过程什么都不操作,就可以调用pass。例如

for x in rang(0,10):#该语句会循环10次,但是循环之外,什么都没操作

pass

for i in 'hello':

if i=='o':

pass

print("world")

print(i)

h

e

l

l

world

o

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171209G016SF00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券