Python3.8中如何无分隔符将输入数字转为单个数字构成的列表
功能实现解决方案
需求:将用户输入的无分隔符数字转换为逐位整数构成的digits列表,示例输入808输出[8, 0, 8]
可选补全逻辑
方法1:字符串遍历法(最简洁易读)
把输入的数字转成字符串遍历每一位,再转回整数加入列表即可,补全代码如下:
# 补全部分开始 s = str(number) for c in s: digits.append(int(c)) # 补全部分结束
方法2:纯数学运算法(无需转换字符串)
通过取余和整除操作逐位提取数字,最后反转列表得到正序结果,补全代码如下:
# 补全部分开始 if number == 0: digits.append(0) else: tmp = number while tmp > 0: digits.append(tmp % 10) tmp = tmp // 10 digits = digits[::-1] # 补全部分结束
两种方法都可以实现需求,你可以根据场景选择:需要代码简洁选方法1,不想做字符串类型转换选方法2。
内容的提问来源于stack exchange,提问作者adkjhawdiuhwaiudaw
相关产品推荐
相关产品推荐

