2013-03-07 47 views
0

所以这是我的功课,但我真的不知道该怎么做一步。在main()函数的最后一步,我想报告如果数字是回文或不依赖于isPalindrome函数返回的值。我真的不知道该怎么做,所以你们可以帮忙。谢谢Python的主要功能处理真假

这是我到目前为止。

# Write code that reverses the number and then returns the reversed number. 

def reverse(number): 
    reverse=0 
    while number>0: 
     reverse = reverse * 10 + number % 10 
     number=number//10 
     return reverse 

#Write code that call the reverse function,processes the value returned by the reverse function and returns True if the number is a palindrome.It will return False if number is not a palindrome. 

def isPalindrome(number): 
    if number == reverse: 
     return True 
    else: 
     return False 

#Write code to prompt the user to enter an integer, calls the isPalindrome function and (depending on the value returned by the isPalindrome function) reports if the number is a palindrome or not. 

def main(): 
    number=int(input("enter number: ")) 

main() 

所以我基本上停留在最后一部分

+1

那是怎么回事?你想在'number'变量上调用'isPalindrome',并检查它是否返回'True'或'False',并相应地通知用户,对吧? – Thomas 2013-03-07 05:46:16

+2

调用'ispalindrome'函数并打印返回状态 – avasal 2013-03-07 05:46:20

+0

很抱歉忘了提示输出应该如此出来 输出样本 输入数字:222 该数字是一个回文数。 另一个示例输出: 输入数字:456 该数字不是回文。 – Jett 2013-03-07 05:53:34

回答

0

reverse功能必须是这样的

def reverse(number): 
    reverse='' 
    while number>0: 
     reverse = reverse + str(number % 10) 
     number=number//10 
    return reverse 

isPalindrome你要比较字符串,因为5005如果你将它转换为整数,那么它只会是5而y无法比较505

def isPalindrome(number): 
    if str(number) == reverse(number): 
     return True 
    else: 
     return False 

然后你的功能将起作用。

+0

它非常感谢你。感谢所有回答此问题的人。你们回答真的很快:) – Jett 2013-03-07 06:06:09

1

要调用函数在Python写的函数的名称,并添加打开和关闭括号。如果该函数使用任何参数,请在圆括号中添加参数。要保存返回值,请将函数调用分配给一个变量(在Python中称为名称)。

例如:

def foo(user): 
    return 'Hello %s' % user 

result = foo('Jett') 
print result 

执行时上面将打印Hello Jett

0

确保您的致电您的reverse功能!

def is_palindrome(number): 
    return number == reverse(number) 

main你应该有这样的事情:

def main(): 
    number = int(input("enter number: ")) 
    if is_palindrome(number): 
     print(...) # Fill in the dots 
    else: 
     print(...) # Fill in the dots