擅长:python、mysql、java
<p>可以使用正则表达式将指定字符串开头的<code>^</code>特殊字符与另一个与<code>retailer_relationship</code>的每个元素匹配的正则表达式组合起来,因为<code>startswith</code>不接受正则表达式:</p>
<pre><code>import re
regex = re.compile('^' + '|'.join(list_of_relationships))
df['retailer_relationship'] = df['retailer'].str.contains(regex).map({True: 'TRUE', False: 'FALSE'})
</code></pre>
<p>因为您需要文本字符串<code>'TRUE'</code>和<code>'FALSE'</code>,所以我们可以使用<code>map</code>将布尔值转换为字符串。你知道吗</p>
<p>另一种方法是<em>稍微</em>快一点,尽管我认为这无关紧要:</p>
<pre><code>df['retailer_relationship'] = df['retailer'].str.contains(regex).transform(str).str.upper()
</code></pre>