Python中分支结构:
1.在Python中,要构造分支结构可以使用if
、elif
和else
关键字。
所谓关键字就是有特殊含义的单词,像if
和else
就是专门用于构造分支结构的关键字,很显然你不能够使用它作为变量名(事实上,用作其他的标识符也是不可以)。
2.Python中没有用花括号来构造代码块而是使用了缩进的方式来设置代码的层次结构,如果if
条件成立的情况下需要执行多条语句,只要保持多条语句具有相同的缩进就可以了,换句话说连续的代码如果又保持了相同的缩进那么它们属于同一个代码块,相当于是一个执行的整体。
3.例题:
"""
分段函数求值
3x - 5 (x > 1)
f(x) = x + 2 (-1 <= x <= 1)
5x + 3 (x < -1)
"""
x = float(input(‘x = ‘))
if x > 1:
y = 3 * x - 5
else:
if x >= -1:
y = x + 2
else:
y = 5 * x + 3
print(‘f(%.2f) = %.2f‘ % (x,y))
Python中循环:
1.在Python中构造循环结构有两种做法,一种是for-in
循环,一种是while
循环。
1.1 for ...in...循环:
如果明确的知道循环执行的次数或者是要对一个容器进行迭代(后面会讲到),那么我们推荐使用for-in
循环:
例题:
"""
用for循环实现1~100求和
"""
sum = 0
for x in range(101):
sum += x
print(sum)
注意一点:
需要说明的是上面代码中的range
类型,range
可以用来产生一个不变的数值序列,而且这个序列通常都是用在循环中的,例如:
-
range(101)
可以产生一个0到100的整数序列。
-
range(1,100)
可以产生一个1到99的整数序列。
-
range(1,100,2)
可以产生一个1到99的奇数序列,其中的2是步长,即数值序列的增量。
1.2 while循环:
如果要构造不知道具体循环次数的循环结构,我们推荐使用while
循环,while
循环通过一个能够产生或转换出bool
值的表达式来控制循环,表达式的值为True
循环继续,表达式的值为False
循环结束
例题:
"""
输入一个正整数判断它是不是素数
"""
from math import sqrt
num = int(input(‘请输入一个正整数: ‘))
end = int(sqrt(num))
is_prime = True
for x in range(2,end + 1):
if num % x == 0:
is_prime = False
break
if is_prime and num != 1:
print(‘%d是素数‘ % num)
else:
print(‘%d不是素数‘ % num)

代码:
z=0
f=0
sum=0
count=0
d=1
def yun(d):
global z,f,sum,count
while d!=0:
d=int(input(‘Enter an integer,the ends if it is 0:‘))
if d>0:
z+=1
if d<0:
f+=1
sum+=d
if d!=0:
count+=1
print(‘正数个数:%d‘ % z)
print(‘负数个数:%d‘ % f)
print(‘和为:%d‘ % sum)
print(‘平均数是:%f‘ % (sum/count))
yun(d)
?
