<p>我正在尝试匹配列表中的字符串。如果输入的字符串存在于执行搜索的字符串中的任何位置,我想返回<code>True</code>。我知道,它可以通过使用<code>re.search</code>来实现,但我正在尝试不使用正则表达式模块来实现这一点。我正在尽可能简单地做这件事。你知道吗</p>
<p>一个微不足道的例子可能是:</p>
<pre><code>drinks = ['cola_with_ice', 'icetea', 'lemonade', 'coffee']
if 'cola_with_ice' in drinks:
print 'Requested drink or a variant of it exists'
</code></pre>
<p>但是,我希望我的代码返回<code>True</code>,例如,如果输入了'cola':</p>
<pre><code>if 'cola' in drinks:
...
</code></pre>
<p>我想知道这是否可能。我想,这是可以做到的,可能是使用通配符等。。。你知道吗</p>
<p>在您的示例中,<code>drinks</code>是一个列表,您正在列表中搜索字符串的子字符串,因此您必须在列表中循环(可能使用生成器表达式),如下所示:</p>
<pre><code>drinks = ['cola_with_ice', 'icetea', 'lemonade', 'coffee']
if any('cola' in x for x in drinks):
# your code
</code></pre>