擅长:python、mysql、java
<p>如果这是<a href="http://codegolf.stackexchange.com">code-golf</a>,我可能会赢:</p>
<pre><code>def ew(sx):
return set([s[:-len(sx)] for s in A if s.endswith(sx)])
ew('.analyzer.json') & ew('.mapping.json') & ew('.json')
</code></pre>
<p><code>ew()</code>函数循环使用<code>A</code>,查找以给定后缀结尾的所有元素并去掉后缀,返回集合中的结果。在</p>
<p>使用它,我只计算从三个后缀中的每一个产生的集合的交集。(<code>&</code>是交集的运算符。)</p>
<p>为了简洁起见,我将“ends with”缩写为<code>ew</code>,将“suffix”缩写为<code>sx</code>。在</p>
<p>表达式<code>s[:-len(sx)]</code>的意思是“从0开始的<code>s</code>的子串,从末尾到{<cd8>}个字符”,它的效果是在结尾处截断后缀。在</p>