擅长:python、mysql、java
<p>正确使用walrus操作符来创建2元组</p>
<pre><code>mylist = [(g(y:=f(x)), h(y)) for x in mylist]
</code></pre>
<p>是的,这比三元组版本更可怕。如果您想放弃walrus操作符,请使用<code>:=</code>应该避免的版本:</p>
<pre><code>mylist = [(g(y), h(y)) for x in mylist for y in [f(x)]]
</code></pre>
<p>或者更简单</p>
<pre><code>mylist = [(g(y), h(y)) for y in map(f, mylist)]
</code></pre>
<p>我不会说海象操作员总是那么笨拙,但这似乎比它在这里的价值更麻烦。你知道吗</p>