输入正整数n(5<n<100),利用循环语句输出1到n(不含n)中5的倍数,将其存放到列表a中

 

n=eval(input('input n:'))
a = []
if type(n)!=int or n<=5 or n>=100:
    print('input error!')
else:
    
    for i in range(1,n):
        if i%5==0:
            a.append(i)
        else:
            continue
    print(a)

直接上码了。每行都给你加了注释,希望你能理解清楚。

判断是否属于数字的方法很多,python 3.6 后有个 isinstance 方法,但是不确定你的版本是否支持,所以用了 type

# python 官方文档说最好加这一段
if __name__ == '__main__':
    # 原有代码段增加异常处理,避免 eval 方法处理输入内容是非整数时提示python错误提示
    try:
        # 变量 n 与 a 是原有内容,其他代码均是补充它们的
        n = eval(input('input n:'))
        a = []
        # 如果输入的是整型,就处理
        if type(n) == int:
            # 如果 n 的范围不在 5 < n < 100 就提示输入错误
            if n <= 5 or n >= 100:
                print('input error !')
            # 如果 n 的范围在 5 < n < 100 就继续处理
            else:
                # 因为是循环 n,因此 n 是循环中最大的数字
                for i in range(1, n):
                    # 不输出 5 的倍数数字,即:将 5 的倍数放在之前定义的列表变量 a 中
                    if i % 5 == 0:
                        a.append(i)
                # 全部处理完毕后,输出列表 a,即:数组 n 中全部 5 的倍数
                print(a)
        # 如果不是整型就提示输入错误,实际这个地方不会走,因为 eval 会直接跳出到 except 处
        else:
            # 提示输入错误
            print('input error !')
    # 当抛出异常时,显示这个内容
    except:
        # 异常时提示输入错误
        print('input error !')