擅长:python、mysql、java
<p>返回列表comp是最简单的解决方案:</p>
<pre><code>return [s + "?" for s in l]
</code></pre>
<p>它也将比使用地图更有效。你知道吗</p>
<p>你自己的代码有很多潜在的问题,为什么你会看到<code>person?</code>三次是因为你在lambda中使用了<code>s</code>,所以在最后一次迭代中,当<code>s</code>是person时,你把所有的值映射成等于<code>person + ?</code>。即使在循环中更改为<code>map(lambda x: x + '?', str_list)</code>,也会将<code>* len(l)</code><code>?</code>添加到每个字符串中。您只需要<code>return map(lambda x: x + '?', str_list)</code>,但是在这个实例中使用map没有任何好处。你知道吗</p>
<p>您也没有像标签所暗示的那样使用python3,如果您是这样的话,您会看到类似<code><map object at 0x7fd27a4060f0></code>的内容没有返回字符串列表。你知道吗</p>