字符串与list(),reversed()

编写一个函数,判断传入的字符串参数是否为“回文联”(回文联即用回文形式写成的对联,既可顺读,也可倒读。例如:上海自来水来自海上)

#方法一:中心为界,依次比对两侧字符
def palindrome(string):
    length = len(string)
    last = length-1
    length //= 2
    flag = 1
    for each in range(length):
        if string[each] != string[last]:
            flag = 0
        last -= 1

    if flag == 1:
        return 1
    else:
        return 0

string = input('请输入一句话:')
if palindrome(string) == 1:
    print('是回文联!')
else:
    print('不是回文联!')
    
#方法二:翻转字符串和源字符串对比
def palindrome(string):
    list1 = list(string)     @将字符串列表化
    list2 = reversed(list1)  @翻转列表,type=迭代器
    if list1 == list(list2): @讲list2列表化,与列表list1对比
        return '是回文联!'
    else:
        return '不是回文联!'
print(palindrome('上海自来水来自海上'))
posted @ 2020-03-21 16:23  盐亭的森林  阅读(402)  评论(0编辑  收藏  举报