我正在研究字符串是否是python
中某个字符串的子字符串。它适用于所有情况,但这是一个失败的特殊情况:
在python
shell中我做:
x=repr('\r\r\r')
y=repr('\r\r')
在这种情况下,y in x
返回false。有人可以告诉我该怎么做才能返回true吗?
答案 0 :(得分:2)
这里没有特例。这不起作用的原因是y
包含一个前导和尾随的单引号:
>>> x=repr('\r\r\r')
>>> y=repr('\r\r')
>>> x
"'\\r\\r\\r'"
>>> y
"'\\r\\r'"
↑ This character is not in `x'
目前还不完全清楚您希望如何使用此功能,但在测试条件之前可以删除引号:
>>> y.strip("'")
'\\r\\r'
>>> y.strip("'") in x
True
这可能是一个黑客攻击而不是一个解决方案,但如果不了解您尝试解决的实际问题,很难提出一个好的解决方案。