在Python中反转数字



我有一个家庭作业,要制作一个可以反转输入数字的程序,但要求在输入不是数字(即单词或句子(时返回一个没有错误的句子。例如,当我输入abc时,程序将返回Error, please input a number!输入str时如何使其返回一个句子这是我迄今为止完成的代码。

def reverse_num(x):
x = num
x = str(x)

if x[0] == '-':
a = x[::-1]
return f"{x[0]}{a[:-1]}"
else:
return x[::-1]
num = input("Enter an integer (positive or negative): ")
print (reverse_num(num))

注意,要求同时反转正数和负数。不能返回str,但我的代码以反转的方式返回所有负数。

让我们在两个函数中解决您的问题:

一个要反转的函数和一个要读取的循环,直到你得到一个数字或用户取消:


def reverse_input(num):
if num[0] == "-":
temp = num[:0:-1]
return (-int(temp))
return int(num[::-1])

while True:
num = input("Enter Number")
if num[0] == "-":
flag = num[1:].strip().isdigit()
else:
flag = num[:].strip().isdigit()
if flag:
print("User input is Number")
print(reverse_input(num))
break
else:
print("User input is string")
resp = input("Would You like to try Again? Enter Y to try and N to Cancel")
if resp == 'n' or resp == 'N':
print("Sorry Execute Again")

它做什么?

  • 它读取用户的输入。输入始终返回字符串
  • 首先,我们检查输入字符串是否有否定号。如果有,我们将测试字符串跳过否定号。否则,我们将使用整个字符串
  • 我们将使用内置的isdigit((函数来检查输入的字符串是否为数字。并调用函数以获取反向字符串
  • 函数将反转字符串并将其类型转换为带符号的整数

最新更新