酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零 用python语言

我可以为你提供一个简单的Python函数来实现这个功能。这个函数会接收一个整数作为输入,并返回其各个位上数字反转后的新整数。以下是实现代码: ```python def reverse_integer(n): # 处理负数情况 sign = -1 if n < 0 else 1 n = abs(n) # 将整数转换为字符串,反转字符串,再转换回整数 reversed_n = int(str(n)[::-1]) # 恢复符号 return sign * reversed_n # 测试函数 print(reverse_integer(123)) # 输出: 321 print(reverse_integer(-123)) # 输出: -321 print(reverse_integer(100)) # 输出: 1 print(reverse_integer(0)) # 输出: 0 ``` 解释 1. 处理负数:首先,我们检查输入整数是否为负数,并保存其符号。然后,我们取该整数的绝对值进行后续操作。 2. 字符串反转:将整数转换为字符串,使用切片操作 `[::-1]` 反转字符串,然后再将反转后的字符串转换回整数。 3. 恢复符号:我们将反转后的整数乘以之前保存的符号,以恢复其原始符号(如果它是负数的话)。 这个函数可以正确处理正数、负数和零,并返回期望的反转结果。 [2024-10-31 14:08:20 | AI写代码神器 | 319点数解答]

相关提问