Python学习日记:if和for循环
1.分支结构语句
1>单分支结果:在顺序流程中,如果条件达到了,就按照按照达到条件后的流程走,如果没有达到,就按照原流程走
# 如果时间在18点之前,可以去一趟洗车店
print('从学校出发')
# 需要记录当前的时间点
hour = 17
# 要求时间在18点之前 进行洗车的操作
if hour < 18:
print('洗车店洗车')
print('回到家中')
2>双分支结构:有两种流程,满足条件走流程1,不满足走流程2
# 做一个成绩判定器: 判断输入的成绩是及格还是不及格
score = float(input('成绩:'))
if score >= 60:
print('及格')
else:
print('不及格')
3>多分支结构:有多个流程,满足条件1就走流程1,满足条件2就走流程2 … 满足条件N就走流程N
# 给成绩分等级
"""
>=90 A
>=80 B
>=70 C
>=60 D
<60 E
"""
score = float(input('请输入成绩:'))
if score >= 90:
print('A')
elif score >= 80: # score 肯定是小于90
print('B')
elif score >= 70: # score < 80
print('C')
elif score >= 60:
print('D')
else:
print('E')
2.循环语句
循环:周而复始的做一件事情
1.for循环
语法:for 变量 in 容器型数据:
循环体
# 逐个将字符串s中的元素取出来
s = 'hello'
for ch in s:
print(ch)
输出结果为
h
e
l
l
o
# 获取字符串中小于l的字符
# 循环获取之后,要对其进行判断,判断是否是小于l的
for ch1 in s:
if ch1 < 'l':
print(ch1)
2.range使用
range(start, stop, step)—>start:起始值(包含),stop:终止值(不包含),step:步长(正负都可以)
※如果步长为负数:要求起始值大于终止值,为递减数列;如果步长为整数,要求起始值小于终止值,为递增数列。
3.联系题
'''
需求计算加油的金额
92号,8元/升,加30升以上,打八折,否则原价
95号,8.8元/升,加25升以上,打八折,否则原价
98号,9.5元/升,加20升以上,打九折,加25升以上,打八五折,加30升以上,打八折,否则原价
'''
yh = int(input('请输入要加的油号:'))
sl = float(input('请输入要加的数量:'))
if yh == 92:
if sl > 30:
jg = sl * 8 * 0.8
else:
jg = sl * 8
elif yh == 95:
if sl > 25:
jg = sl * 8.8 * 0.8
else:
jg = sl * 8.8
elif yh == 98:
if sl > 30:
jg = sl * 9.5 * 0.8
elif sl > 25:
jg = sl * 9.5 * 0.85
elif sl > 20:
jg = sl * 9.5 * 0.9
else:
jg = sl * 9.5
print('油号',yh,sl,'升','共计',jg,'元')
# 1. 录入一个整数,判断其是否是3的倍数并且个位数为5
s = int(input('请输入数字:'))
unm = s % 3 == 0 and s % 10 == 5
print(unm)
# 2. 假设今天的上课时间为15678秒,编程计算今天上课时间是多少⼩时,多少分钟,多少秒;以‘XX时XX分XX秒’的⽅式表示出来
z = 15678
mz = z % 60
fz = z // 60 % 60
xs = z // 60 // 60
print(xs,'时',fz,'分',mz,'秒')
# 3. 写程序判断输入的整数(num)是否是水仙花数 [水仙花数是一个三位数, 并且每位上的立方之和结果等于数值本身 比如 153 = 1**3+5**3+3**3]
num = int(input('请输入一个整数:'))
q = (num % 10) ** 3 + ((num // 10 % 10)**3) +((num // 100 % 10) ** 3) == num
print(q)
# 4. 使用range生成1到100的整数,使用for循环将其中的3的倍数取出
for i in range(1,101):
if i % 3 == 0:
print(i)
# 5. 使用range生成10开始到1000结束步长为100的等差数列,并将其中的7的倍数取出
for i in range(10,1001,100):
if i % 7 == 0:
print(i)