任何人都可以解释这段代码有什么问题吗?
str1='"xxx"'
print str1
if str1[:1].startswith('"'):
if str1[:-1].endswith('"'):
print "hi"
else:
print "condition fails"
else:
print "bye"
我得到的输出是:
Condition fails
但我希望它打印 hi
。
原文由 Chuvi 发布,翻译遵循 CC BY-SA 4.0 许可协议
当您说
[:-1]
时,您正在剥离最后一个元素。您可以像这样在字符串对象本身上应用startswith
和endswith
而不是切片字符串于是整个程序就变成了这样
更简单,有一个条件表达式,像这样