【Python】分支结构与循环结构
【摘要】 Python分支结构与循环结构,在循环结构中主要是for-in 和 while 循环。
分支结构
一条语句一条语句顺序执行:顺序结构
分支结构 (选择结构)
python中构造分支结构的关键字:if
、else
、elif
'''
判断输入的边长能否构成三角形,如果能则计算三角形的周长和面积
Author:AXYZdong
'''
a = float(input('a = '))
b = float(input('b = '))
c = float(input('c = '))
if a+b > c and a +c > b and b+c >a :
print('周长 = %f' % (a+b+c))
p = (a+b+c)/2
area = (p*(p-a)*(p-b)*(p-c))**0.5
print('面积 = %f' % (area))
else:
print('不能构成三角形')
循环结构
for-in 循环
明确知道 循环执行的次数 或者 要对一个容器进行迭代,推荐使用 for-in
循环。
例:计算1~100求和的结果
'''
1~100求和
Author:AXYZdong
'''
sum = 0
for x in range(101): # for x in range(1,101):
sum = sum + x
print(sum)
range(101)
:产生0~100范围内的整数,取不到101。range(1,101)
:产生1~100范围内的整数,相当于 [1,101)range(1,101,2)
:产生1~100范围内的奇数,其中2是步长,每次递增range(100,0,-2)
:产生100~1范围内的偶数,其中-2是步长,每次递减
1~100范围内偶数求和?
'''
用for循环实现1~100范围内偶数求和
Author:AXYZdong
'''
sum = 0
for x in range(2,101,2): # for x in range(100,0,-2):
sum = sum + x
print(sum)
range(2,101,2)
:从2开始以每次2的步长递增,产生2~100的范围(均为偶数)
while 循环
不知道具体循环次数的循环结构,推荐使用 while
循环。while 循环通过一个能够产生或转换出 bool
值的表达式来控制循环,表达式的值为 True
则继续循环;表达式为 False
则结束循环。
'''
猜数字游戏
Author:AXYZdong
'''
import random
ans = random.randint (1,10)
counter = 0
while True:
counter += 1
num = int(input('请输入:'))
if num > ans:
print('大一点')
elif num < ans:
print('小一点')
else:
print('恭喜你猜对了')
break
print('你一共猜了%d次'% (counter))
if counter > 5:
print('你运气太差了')
random.randint(参数1,参数2)
- 参数1、参数2必须是整数
- 函数返回值为参数1和参数2之间的任意数,闭区间 [参数1,参数2](python 3环境中已验证)
例:输入两个正整数,计算它们的最大公约数和最小公倍数。
最大公因数:两个数公共因子中最大的那个数
最小公倍数:两个自然数的积除以它们的最大公因数
'''
输入两个正整数,求它们的最大公约数和最小公倍数
Author:AXYZdong
'''
x = int(input('x = '))
y = int(input('y = '))
if x > y:
x,y = y,x
for common in range(x,0,-1):
if x%common == 0 and y%common == 0:
print('%d和%d最大公约数是%d' % (x,y,common))
print('%d和%d最小公倍数是%d' % (x,y,(x*y//common)) ) #两个自然数的积等于这两个数最大公因数乘以它们的最小公倍数
break
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “收藏” “关注”
一键三连哦!
如果以上内容有任何错误或者不准确的地方,欢迎在下面 👇 留个言。或者你有更好的想法,欢迎一起交流学习~~~
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)