Python编程实践:判断回文字符串(PTA题解)

判断回文字符串

作者 陈春晖

单位 浙江大学

回文就是字符串中心对称,从左向右读和从右向左读的内容是一样的。
输入一个字符串,判断该字符串是否为回文,只考虑数字和字母字符,字母的大小写没有区别。

输入格式:

输入一个字符串。

输出格式:

是回文,一行输出yes,否则输出no

输入样例:

在这里给出一组输入。例如:

A man,a plan; cnalPanama

输出样例:

在这里给出相应的输出。例如:

yes

相关介绍:

isalpha()方法:

  • isalpha()方法用于检查字符串是否只包含字母,并且字符串长度大于0。
  • 如果字符串中所有的字符都是字母并且字符串长度大于0,则返回True;否则返回False。
  • 示例:
  • string1 = "abc"
    string2 = "123"
    string3 = "abc123"
    
    print(string1.isalpha())  # 输出: True
    print(string2.isalpha())  # 输出: False
    print(string3.isalpha())  # 输出: False
    
  • isdigit()方法:

  • isdigit()方法用于检查字符串是否只包含数字,并且字符串长度大于0。
  • 如果字符串中所有的字符都是数字并且字符串长度大于0,则返回True;否则返回False。
  • 示例:
  • num1 = "123"
    num2 = "abc"
    num3 = "123abc"
    
    print(num1.isdigit())  # 输出: True
    print(num2.isdigit())  # 输出: False
    print(num3.isdigit())  # 输出: False

    代码如下:

    a =  input()
    app = list(a.lower())   '''统一大小写,并将字符串转为列表,方便比较'''
    app1 = app[:]            '''对列表复制'''
    app1 = [elem for elem in app1 if elem.isalpha() or elem.isdigit()]   '''删除除字母或者数字外的符号'''
    app.reverse()            '''将列表反转'''
    app2 = app
    app2 = [elem for elem in app2 if elem.isalpha() or elem.isdigit()]
    cou = len(app1)
    flag = 0
    '''比较两个列表是否相同'''
    for i in range(0,cou):
        if app1[i]==app2[i]:
            flag = 1
        else:
            flag = 0
            break
    if flag == 1:
        print("yes")
    else:
        print("no")

    物联沃分享整理
    物联沃-IOTWORD物联网 » Python编程实践:判断回文字符串(PTA题解)

    发表评论