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

如何将整数向上取整至10的倍数?

如何将整数向上取整至最近的10的倍数?

你之前用math.ceil(12)或round(12)只能实现整数本身的取整,无法直接得到最近的10的倍数。要实现需求,推荐两种实用方法:

方法一:借助math.ceil实现

先将数字除以10,用math.ceil向上取整到整数,再乘以10即可。核心逻辑是把“取整到10的倍数”转化为“取整到整数后再缩放10倍”,天然适配末位为0的数字保持不变的要求。

示例代码:

import math

target_numbers = [12, 11, 10, 27, 29, 25, 16]
rounded_numbers = [math.ceil(num / 10) * 10 for num in target_numbers]

for num in rounded_numbers:
    print(num)

输出结果:

20
20
10
30
30
30
20

方法二:纯整数运算(无需额外库)

如果不想导入math模块,可以用整数加法+整除的组合逻辑:给目标数加9后整除10,再乘以10。原理是:非10倍数的数加9后会进位到下一个10的区间,整除10后得到对应的十位数字,再乘10就得到结果;10的倍数加9后不会进位,结果保持原样。

示例代码:

target_numbers = [12, 11, 10, 27, 29, 25, 16]
rounded_numbers = [(num + 9) // 10 * 10 for num in target_numbers]

for num in rounded_numbers:
    print(num)

输出结果和方法一完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 13:15:05