【问题标题】:Palindrome in Python not workingPython中的回文不起作用
【发布时间】:2014-03-27 20:48:24
【问题描述】:

我正在尝试制作一个简单的程序,在 Python3 中显示 2 个数字之间的回文数,但它似乎不起作用。我只得到 4 个输出,分别是 1、2、4 和 8。那么其他数字,如 11、22、33、...、111、121,131、...、191、222 等呢?

这是我的代码。我不知道为什么它不起作用。

a = 0
b = 500
a += 1
for i in range(a,b):
    if(str(a) == str(a)[::-1]):
        print(a)
        a += a

【问题讨论】:

    标签: python-3.x palindrome


    【解决方案1】:

    也许

    for i in range (0, 500):
        if str(i) == str(i)[::-1]:
            print(i)
    

    【讨论】:

    • 那个愚蠢的错误。非常感谢。如果我看了一个小时,我就不会看到这个了,哈哈。
    【解决方案2】:
    >>> palindromes = [a for a in range(500) if str(a) == str(a)[::-1]]
    >>> palindromes
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44, 55, 66, 77, 88, 99, 101, 111, 121, 131,
     141, 151, 161, 171, 181, 191, 202, 212, 222, 232, 242, 252, 262, 272, 282, 292, 303, 
     313, 323, 333, 343, 353, 363, 373, 383, 393, 404, 414, 424, 434, 444, 454, 464, 474,
     484, 494]
    

    这向您展示了原理。如果你想在一个函数中做,你可以使用yield而不是在内存中构造整个列表(效率更高):

    >>> def palindromes(a, b):                                                  
    ...   """Return palindromes in closed interval from a to b"""               
    ...   for i in range(a, b):                                                 
    ...     if str(i) == str(i)[::-1]:                                          
    ...       yield i                                                           
    ...                                                                         
    >>> list(palindromes(0, 500))                                               
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44, 55, 66, 77, 88, 99, 101, 111, 121, 131, 141, 151, 161, 171, 181, 191, 202, 212, 222, 232, 242, 252, 262, 272, 282, 292, 303, 313, 323, 333, 343, 353, 363, 373, 383, 393, 404, 414, 424, 434, 444, 454, 464, 474, 484, 494]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-26
      • 1970-01-01
      • 1970-01-01
      • 2022-01-15
      • 2020-03-28
      • 1970-01-01
      • 2015-09-24
      • 2012-01-07
      相关资源
      最近更新 更多