如何使用列表理解或切片来测试字符串列表是否为回文?
How to test if a list of strings are palindromes using list comprehension or slicing?
我正在尝试使用列表理解或切片来测试字符串列表是否为回文。我使用 word_list=str1.split()
将 str1
转换为列表。然而,回文测试,
word=[w for w in word_list if w[0:9:1]==w[0:9:1][::-1]]
仅适用于第一个单词。由于单词的长度不同,我想知道是否有不使用普通循环的简洁代码编写方法?
str1='avallava si padre emirime'
@Chris_Rands 回答解决了问题。
word=[w for w in word_list if w==w[::-1]]
下面的行遍历word_list,保留回文单词并将它们存储为列表。
palindromes = [w for w in word_list if w == w[::-1]]
如果world_list = ['avallava', 'si', 'padre', 'emirime']
,
然后 palindromes = ['avallava', 'emirime']
我正在尝试使用列表理解或切片来测试字符串列表是否为回文。我使用 word_list=str1.split()
将 str1
转换为列表。然而,回文测试,
word=[w for w in word_list if w[0:9:1]==w[0:9:1][::-1]]
仅适用于第一个单词。由于单词的长度不同,我想知道是否有不使用普通循环的简洁代码编写方法?
str1='avallava si padre emirime'
@Chris_Rands 回答解决了问题。
word=[w for w in word_list if w==w[::-1]]
下面的行遍历word_list,保留回文单词并将它们存储为列表。
palindromes = [w for w in word_list if w == w[::-1]]
如果world_list = ['avallava', 'si', 'padre', 'emirime']
,
然后 palindromes = ['avallava', 'emirime']