我正在学习 python 并且正在做这些练习,特别是关于回文产品的这个练习。
我有两个数字,我想减 1,但以交替的方式:
999, 999
998, 999
998, 998
997, 998
997, 997
...
我已经用 4 个 if 语句解决了这个问题,但我认为这有点草率。有没有更好的办法?下面是代码:
palN1 = 999
palN2 = 999
def palin(palN1, palN2):
pal = palN1 * palN2
    while str(pal)[::-1] != str(pal):
        if palN1%2 == 0 and palN2%2 == 0:
            palN1 += -1
            pal = palN1 * palN2
            elif palN1%2 != 0 and palN2%2 == 0:
            palN2 += -1
            pal = palN1 * palN2        
        elif palN1%2 != 0 and palN2%2 != 0:
            palN1 += -1
            pal = palN1 * palN2
        elif palN1%2 == 0 and palN2%2 != 0:
            palN2 += -1
            pal = palN1 * palN2  
    print [palN1, palN2]
    print str(pal)
if __name__=="__main__":
    palin(palN1, palN2)
顺便说一句,我得到的练习结果是 [836,836],它是产品 698896。这是我的第一篇文章,如果我做错了什么,请见谅。