Python学习日记:if和for循环

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)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值