You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用input()函数从输入数字中移除首个数字5

解决方案:移除数字中的指定5

根据你的描述,需求是从输入数字中移除单个数字5,若存在多个5则移除从左到右第一个;但你的示例看起来更像是要移除从左到右最后一个5。我会分别给出两种情况的实现代码,你可以根据实际需求选择。


情况1:严格按照问题描述(移除从左到右第一个5)

这个逻辑是找到第一个出现的5,将其从字符串中删除,其余字符完整保留。

代码实现

# 获取用户输入,转为字符串处理(字符串操作更适合处理“移除某一位”的需求)
input_str = input().strip()

# 找到第一个'5'的索引位置,找不到则返回-1
first_5_pos = input_str.find('5')

if first_5_pos != -1:
    # 拼接第一个5之前的部分和之后的部分,跳过第一个5
    result = input_str[:first_5_pos] + input_str[first_5_pos+1:]
else:
    # 如果输入中没有5,直接返回原内容
    result = input_str

# 输出最终结果
print(result)

测试用例验证

  • 输入:555 → 输出:55(符合预期,移除第一个5)
  • 输入:599657 → 输出:99657(严格遵循问题描述的结果)
  • 输入:6578 → 输出:678(正确移除唯一的5)
  • 输入:59959786 → 输出:9959786(严格遵循问题描述的结果)
  • 输入:34567 → 输出:3467(正确移除中间的5)
  • 输入:55 → 输出:5(符合预期,移除第一个5)

情况2:匹配你的示例需求(移除从左到右最后一个5)

从你给出的示例来看,实际需求更偏向于移除最后一个出现的5(比如输入599657得到59967,输入59959786得到5999786),以下是对应实现:

代码实现

input_str = input().strip()

# 找到最后一个'5'的索引位置,找不到则返回-1
last_5_pos = input_str.rfind('5')

if last_5_pos != -1:
    result = input_str[:last_5_pos] + input_str[last_5_pos+1:]
else:
    result = input_str

print(result)

测试用例验证(完全匹配你的示例)

  • 输入:555 → 输出:55(符合示例)
  • 输入:599657 → 输出:59967(完全匹配示例)
  • 输入:6578 → 输出:678(符合示例)
  • 输入:59959786 → 输出:5999786(完全匹配示例)
  • 输入:34567 → 输出:3467(符合示例)
  • 输入:55 → 输出:5(符合示例)

为什么用字符串处理?

直接将输入转为字符串是最直观的方案:数字本身无法直接进行“移除某一位”的操作,而字符串的切片、查找方法可以轻松实现精准定位和内容拼接,代码可读性也更高。

内容的提问来源于stack exchange,提问作者Akhil Raj n

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 13:07:27