for循环嵌套在if语句的表达式内
这是一个关于语法的问题。我很确定我几乎是正确的,但并不完全。我试图在if语句的表达式中放置一个for循环。for循环嵌套在if语句的表达式内
什么,我认为这应该是一个简单的回文测试仪模拟式:
toTest = "asdffdsa"
if toTest[i]==toTest[-i] for i in range(len(toTest)/2):
print("It's a palendrome!")
预先感谢您的帮助!
我猜你的意思是
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!")
谢谢!你刚回答我的问题,并教我一个新的关键字。 “toTest [:: - 1]”中的“-1”是否反转列表? – Mokolodi1 2012-02-21 02:15:55
@ Mokolodi1:是的,它反转字符串,请参阅http://*.com/a/3705676/279627。 – 2012-02-21 02:17:22
不是关键字; 'all'是一个功能。 – 2012-02-21 03:40:15
虽然它可能不是你在寻找什么,这里是一个简短的手检查一个字符串是否是Python中的回文:
toTest = "asdffdsa"
if toTest == toTest[::-1]: print ("It's a palindrome!")
http://docs.python.org/tutorial/controlflow.html – 2012-02-21 02:11:02
我做了仔细看看,但是没有一个我正在寻找的例子。 – Mokolodi1 2012-02-21 02:12:39