(抱歉,无法抗拒双关语!)
我想知道为什么翻译似乎不可能:
dict([(str(x),x) if x % 2 else (str(x),x*10) for x in range(10)])
Run Code Online (Sandbox Code Playgroud)
使用dict理解进入这个更易读的表达式:
{str(x):x if x % 2 else str(x):x*10 for x in range(10)}
Run Code Online (Sandbox Code Playgroud)
{ str(x):(x if x % 2 else x*10) for x in range(10) }
Run Code Online (Sandbox Code Playgroud)
似乎运作良好