使用Python确认是否包含数字5

如何输入一个整数,求该整数上的各位数是否包含数字5,若有,则按从低到高的顺序输出第几位,若没有则输出-1

number = int(input("请输入一个整数:"))
digits = [int(d) for d in str(number)]
if 5 in digits:
    for i, d in enumerate(reversed(digits)):
        if d == 5:
            print("数字5在第%d位" % (len(digits) - i))
else:
    print(-1)

以下内容部分参考ChatGPT模型:


我可以帮您解决这个问题。以下是解决思路和示例代码:

解决思路:

  1. 将输入的整数转化为字符串。
  2. 遍历字符串的每一位,判断是否为数字5,若是则记录该位数。
  3. 若存在数字5,则输出记录的位数,否则输出-1。

示例代码:

num = int(input("请输入一个整数:"))
num_str = str(num)
pos = []
for i in range(len(num_str)):
    if num_str[i] == '5':
        pos.append(i+1)
if len(pos) == 0:
    print("-1")
else:
    for i in pos:
        print(i, end=' ')

这段代码会首先将输入的整数转化为字符串,然后遍历该字符串的每一位,记录包含数字5的位数。最后根据是否存在数字5输出相应的结果。


如果我的建议对您有帮助、请点击采纳、祝您生活愉快