for循环嵌套在if语句的表达式中

时间:2012-02-21 02:09:16

标签: python python-3.x

这是一个关于语法的问题。我很确定我几乎是对的,但并不完全正确。我正在尝试在if语句的表达式中放置一个for循环。

我认为应该是一个简单的回文测试仪的模型:

toTest = "asdffdsa"
if toTest[i]==toTest[-i] for i in range(len(toTest)/2):
    print("It's a palendrome!")

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:7)

我猜你的意思是

if all(toTest[i] == toTest[-i] for i in range(len(toTest)/2)):
    print("It's a palindrome!")

请注意,这样做会容易得多

if toTest == toTest[::-1]:
    print("It's a palindrome!")

答案 1 :(得分:1)

虽然它可能不是您正在寻找的,但这里有一个简短的方法来检查字符串是否是Python中的回文:

toTest = "asdffdsa"
if toTest == toTest[::-1]: print ("It's a palindrome!")