1. 将整数转换为字符串,然后逆序字符串,最后将逆序后的字符串转换回整数。
def reverse_integer(n):reversed_str = str(n)[::-1]reversed_int = int(reversed_str)return reversed_int[1:] 去掉前导零num = 12345reversed_num = reverse_integer(num)print(reversed_num) 输出:54321
2. 使用切片操作直接逆序整数列表。
def reverse_with_slice(input_list):return input_list[::-1]numbers = [1, 2, 3, 4, 5]reversed_numbers = reverse_with_slice(numbers)print(reversed_numbers) 输出:[5, 4, 3, 2, 1]

3. 使用内置的`reversed()`函数,它返回一个逆序迭代器,适用于需要逆序遍历列表的场景。
def reverse_with_reversed(input_list):return list(reversed(input_list))numbers = [1, 2, 3, 4, 5]reversed_numbers = reverse_with_reversed(numbers)print(reversed_numbers) 输出:[5, 4, 3, 2, 1]
4. 对于32位有符号整数,可以使用以下函数进行逆序,同时考虑整数溢出的问题。
def reverse(x):INT_MAX = 231 - 1INT_MIN = -231res = 0is_negative = x < 0x = abs(x)while x != 0:t = x % 10x = x // 10if res > INT_MAX // 10 or (res == INT_MAX // 10 and t > INT_MAX % 10):return 0res = res * 10 + treturn -res if is_negative else resprint(reverse(12345)) 输出:54321
以上方法都可以实现整数的逆序,具体选择哪种方法取决于你的具体需求和应用场景
