Python中的字符串函数

Python中的字符串函数,python,Python,下面的代码确定c是否为回文。我只是想知道int(str(c)[::-1])==c是如何工作的,因为我是Python新手,还没有找到任何关于这方面的信息 def is_pal(c): return int(str(c)[::-1]) == c [::-1]采用[start:end:step]语法的形式。如果不指定开始和结束,它将处理整个字符串。当您将步骤指定为-1时,它会反转字符串并比较反转的字符串是否与原始字符串相同 例子 你可以这样重写你的程序 def is_pal(c):

下面的代码确定
c
是否为回文。我只是想知道
int(str(c)[::-1])==c
是如何工作的,因为我是Python新手,还没有找到任何关于这方面的信息

def is_pal(c):
    return int(str(c)[::-1]) == c

[::-1]
采用
[start:end:step]
语法的形式。如果不指定开始和结束,它将处理整个字符串。当您将步骤指定为
-1
时,它会反转字符串并比较反转的字符串是否与原始字符串相同

例子
你可以这样重写你的程序

def is_pal(c):
    A = str(c)  #Python builtin "str" function
    B = A[::-1] #Python "slice"
    C = int(B)  #Python builtin "int" function
    D = C == c  #Python "==" operator
    return D

哪一部分你不明白?您是否在Python解释器提示中尝试过它的各个部分?
[::-1]
是切片表示法;它从开始到结束进行切片,并使用负步骤生成反向副本;但是,该部分是重复的。您的函数不工作:is_pal(“aabbaa”)=>ValueError:以10为基数的int()的文本无效:“aabbaa”因为额外的int()。为什么需要将其转换为int?这是规范的帖子,列出了许多重复项。@Grapsus:它对整数很有效
is_pal(12321)
返回
True
。好的,我的错。谁叫整数c+1.答案,你回答问题的热情
def is_pal(c):
    A = str(c)  #Python builtin "str" function
    B = A[::-1] #Python "slice"
    C = int(B)  #Python builtin "int" function
    D = C == c  #Python "==" operator
    return D