直接讲多分支结构(Chained)吧,比较简单,就概括一下:
比如
举例1: 将考试分数转换为等级
分数 >= 90
A
分数 >= 80
B
分数 >= 70
C
分数 >= 60
D
分数 < 60
E
Python语句实现:
score =98
if score>=90:
print 'A'
elif score>=80:
print 'B'
elif score>=70:
print 'C'
elif score>=60:
print 'D'
else:
print 'E'</span>
输出 A
举例2:求一元二次方程的解
python 代码实现:
import math运行结果如下:
a=float(raw_input('input a: '))
b=float(raw_input('input b: '))
c=float(raw_input('input c: '))
if a==0:
print 'not quadratic'
else:
delta=b**2-4*a*c
if delta <0:
print 'no real root!'
elif delta ==0:
print 'only one root is',-b/(2*a)
else:
root =math.sqrt(delta)
s1=(-b+root)/(2*a)
s2=(-b-root)/(2*a)
print 'two distinct solutions are: ',s1,s2
举例3:计算1+2+3+…+10的值
注意:range 函数生成 0, 1, …, 10 序列
代码实现:
s = 0
i=1
for i in range(11):
s += i
print 'sum is ',s
输出 55
举例4:计算常数 e
思路:(1)调用函数,(2)自己写函数
代码实现
import math
e = 1
for i in range(1,100):
e += 1.0/math.factorial(i)
print 'e is ',e
输出:e is 2.71828182846
e = 1输出:e is 2.71828182846
fib=1
for i in range(1, 100):
fib *= i
e +=1.0/fib
print 'e is ', e
可以看出两种方法结果是一样的,不过注意第二种,for循环下面第二行或更多行,要和第一行保持左边对齐,否则运行则单独为一条语句
注意: