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

输入分数转换为列表时多位数拆分异常的技术求助

问题解决方法

你的代码用list()将输入字符串转为列表时,会把字符串的每个字符拆分成单独的列表元素,所以输入"99/100"会被拆成单个数字和符号的集合。要实现按连续数字和分隔符拆分的需求,可以用以下两种方法:

方法一:拆分后重组(简单直接)

先按/分割字符串得到前后数字部分,再手动把分隔符插回列表中:

input_str = input("Enter: ")
num_parts = input_str.split('/')
fraction = [num_parts[0], '/', num_parts[1]]
print(fraction)

这种方法适合输入格式固定为数字/数字的场景,输入"99/100"时会输出['99', '/', '100']。

方法二:正则表达式匹配(更健壮)

如果需要兼容更灵活的输入格式(比如确保正确识别任意长度的数字段和分隔符),可以用正则表达式匹配连续数字或分隔符:

import re
input_str = input("Enter: ")
fraction = re.findall(r'\d+|/', input_str)
print(fraction)

正则模式\d+|/表示匹配一个或多个连续数字,或者匹配/符号,能精准拆分出你需要的列表元素。

内容的提问来源于stack exchange,提问作者Eric Lee

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 23:39:22