在Python中,将数字123反转成321可以通过以下几种方法实现:
1. 使用字符串切片:
num = 123
reversed_num = int(str(num)[::-1])
print(reversed_num) 输出:321
2. 使用循环和取余的方法:
num = 123
reversed_num = 0
while num > 0:
reversed_num = reversed_num * 10 + num % 10
num //= 10
print(reversed_num) 输出:321
3. 使用更简洁的方法,考虑溢出情况:
def reverse_integer_simple(x):
s = str(abs(x))
reversed_s = s[::-1]
reversed_int = int(reversed_s)
return reversed_int if x >= 0 else -reversed_int
print(reverse_integer_simple(123)) 输出:321
print(reverse_integer_simple(-123)) 输出:-321
4. 使用整数除法和取余来分离每一位数字,并考虑溢出的情况:
def reverse(x):
y = 0
temp = 0
if x == 0:
return 0
if x > 0:
while x != 0:
temp = x % 10
x = x // 10
y = y * 10 + temp
else:
x = -x
while x != 0:
temp = x % 10
x = x // 10
y = y * 10 + temp
y = -y
if y > 231 - 1 or y < -231:
return 0
else:
return y
print(reverse(123)) 输出:321
print(reverse(-123)) 输出:-321
以上方法都可以实现将数字123反转成321。选择哪一种方法取决于你对代码简洁性和可读性以及是否考虑溢出的需求