【发布时间】:2020-04-24 18:40:48
【问题描述】:
def is_substring(substring,string):
for count in range(len(string)):
if (string[count:count + len(substring)]) == substring:
return True
else:
return False
print(is_substring('dab', 'abracadabra'))
如果我尝试只打印这样的条件值:
def is_substring(substring,string):
for count in range(len(string)):
print (string[count:count + len(substring)]) == substring)
print(is_substring('dab', 'abracadabra'))
我得到这个输出:
python substrings.py
abr
胸罩
拉克
阿卡
cad
阿达
轻拍
abr
胸罩
拉
一个
无
它打印 dab 词,它等于子字符串,但是当我尝试使用 if 条件使其等于子字符串时,它返回 false。为什么返回 false?
【问题讨论】:
-
请更新您的问题以包含minimal reproducible example 和更清晰的说明您正在尝试做什么。一方面,这是 Python,所以缩进很重要......
-
在互联网上的任何地方提问时,(a) 尽量避免“阻止我”和“我是初学者”以及悲惨和痛苦的陈述。 (b) 清楚你的问题是什么。撰写有用且内容丰富的标题。 (c) 格式化您的代码 - 大多数问答网站都提供格式化工具。 (d) 使用正确的英文大小写,并通过拼写检查器检查您的写作。 Stack Overflow 不是聊天室 - 我们希望永远保留问题,以帮助其他开发人员。
-
请edit 你的问题成为主题:包括一个重复问题的minimal reproducible example。寻求调试帮助的问题(“为什么这段代码没有按我想要的方式工作?”)必须包括:(1)期望的行为,(2)特定的问题或错误以及(3)重现它所需的最短代码在问题本身中。另请参阅:What topics can I ask about here? 和 How to Ask。
-
@halfer 并不是说聊天室也会乐于看到蹩脚的英语!
-
@JohnDvorak:我不确定——你读过 Facebook 聊天室吗?他们对那里的语言和语法做了什么……太可怕了。
:=)
标签: python python-3.x