如何使用列表理解或切片来测试字符串列表是否是回文?

时间:2017-10-06 11:54:10

标签: python string palindrome

我正在尝试使用列表理解或切片来测试字符串列表是否是回文。我使用str1word_list=str1.split()转换为列表。然而,回文试验,

word=[w for w in word_list if w[0:9:1]==w[0:9:1][::-1]]

仅适用于第一个单词。由于单词的长度不同,我想知道是否有简洁的方法来编写代码而不使用常见的循环?

str1='avallava si padre emirime'

2 个答案:

答案 0 :(得分:0)

@Chris_Rands的答案解决了这个问题。 word=[w for w in word_list if w==w[::-1]]

答案 1 :(得分:0)

下面的行遍历word_list,保留回文词并将其存储为列表。

palindromes = [w for w in word_list if w == w[::-1]]

如果world_list = ['avallava', 'si', 'padre', 'emirime']

然后palindromes = ['avallava', 'emirime']