Discuss / Python / 我也用的笨办法

我也用的笨办法

Topic source

长日将尽

#1 Created at ... [Delete] [Delete and Lock User]

def is_palindrome(n):

    if n//10==0:

        return True

    elif n//100==0 and n//10>0:

        if n%10==n//10:

            return True

        else:

            return False

    elif n//100>0:

        if n//100==n%10:

            return True

        else:

            return False

    else:

        print('超出范围')

长日将尽

#2 Created at ... [Delete] [Delete and Lock User]

加上测试的代码也就是

# -*- coding: utf-8 -*-

from operator import truediv

import turtle

def is_palindrome(n):

    if n//10==0:

        return True

    elif n//100==0 and n//10>0:

        if n%10==n//10:

            return True

        else:

            return False

    elif n//100>0:

        if n//100==n%10:

            return True

        else:

            return False

    else:

        print('超出范围')

# 测试:

output = filter(is_palindrome, range(1, 1000))

print('1~1000:', list(output))

if list(filter(is_palindrome, range(1, 200))) == [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]:

    print('测试成功!')

else:

    print('测试失败!')

长日将尽

#3 Created at ... [Delete] [Delete and Lock User]

当然是可以直接把else return False删去的,毕竟filter只接收结果为True的


  • 1

Reply