三大控制流程:
1、顺序流程
2、分支流程
3、循环流程
顺序流程控制
按照顺序执行命令
输入半径,输出圆的周长与面积
代码:
import math
r = float(input("请输入半径:"))
C = 2*r*math.pi
S = math.pi*(r**2)
print("圆的周长为%.1f" %(C))
print("圆的面积为%.1f" %(S))
输出结果:
分支流程控制
根据判断结果选择执行命令
r = int(input("请输入成绩:"))
if r > 60:
print("及格")
else:
print("不及格")
运行结果
循环流程控制
循环语句类型:
1.while循环语句:while循环语句的命令会一直执行,直到while后条件的布尔值为假
2.for循环语句(for item in num:)
- for:关键字
- item:元素
- in:关键字
- num:集合
break:终止循环语句,无论循环条件是否为false或循环是否运行完毕都会终止该循环语句
continue:跳过本次循环剩下的语句,进入下一轮循环
range语法
range(start, end, step =1)返回一个包含所有 k 的列表, start <= k < end , k每次递增 step
实例:
需求1: 求1~100之间所有偶数的和;
需求2: 求1~100之间所有奇数的和;
需求3: 用户输入一个整形数, 求该数的阶乘; 3!=3*2*1=6
1.
add = 0
for item in range(0,101,2):
add+=item
print(add)
2.
add = 0
for item in range(1,100,2):
add+=item
print(add)
3.
num = int(input("请输入整形数:"))
add = 1
for item in range(1,num+1):
add*=item
print(add)
random模块
函数 | 函数功能 |
---|---|
random.random() | 生成一个0到1的随机浮点数,0<=n<1.0 |
random.uniform(a,b) | 生成一个指定范围内的随机浮点数,a<=n<=b |
random.randint(a,b) | 生成一个指定范围的整数,a<=n<=b |
random.choice(abcdef) | 从序列中获取一个随机元素 |
random.shuffle(1,2,3,4,5,6) | 将元素打乱顺序 |
随机生成一个年份,年份的范围在2000-2200年之间
import random1
print(random.randint(2000,2200))
运行结果
案例
1、闰年检测计算器
- 要求:随机生成一个1900~2000之间的年份, 判断给定年份是否是闰年?
- 规则: 一个闰年就是能被4整除但是不能被100整除 或者 year能被400整除.
- 输出:年份2000年是闰年。/ 年份1983年不是闰年
- 代码:
import random
year = random.randint(1900,2000)
if (year%4==0 and year%100!=0) or year%400==0:
print("年份%d是闰年"%(year))
else:
print("年份%d不是闰年"%(year))
运行结果
2、偶数判断器:
- 需求:随机生成一个0~100之间的整数, 判断该数是否为偶数?
- 规则:偶数是能够被2所整除的整数。0是一个特殊的偶数。
- 输出:数值10是偶数。 / 数值11不是偶数。
- 代码:
import random
num = random.randint(0,100)
if num%2==0:
print("数值%d是偶数"%(num))
else:
print("数值%d不是偶数"%(num))
运行结果:
3、解一元二次方程:
- 需求:求解一元二次方程。用户依次输入a、b、c对应的值。
- 输出:方程的解为1和2。 / 方程无解。 / 方程的解只有一个,值为2。
- 代码:
import math
a = float(input('请输入a的数值:'))
b = float(input('请输入b的数值:'))
c = float(input('请输入c的数值:'))
num = b*b-4*a*c
if num<0:
print("方程无解")
elif num==0:
print("方程的解只有一个,值为%.1f"%(-b/(2*a)))
else:
print("方程的解为%.1f和%.1f"%(((-b + math.sqrt(num))/2/a), ((-b - math.sqrt(num))/2/a)))
运行结果: