给表达式的结果一个名字是很有必要的,它让你可以重用这个结果。目前你可以使用一个赋值语句来创建一个变量,用这个变量代表表达式的值。但是这个办法没法使用在表达式内部,比如列表推导中。
另外,给一个长长的表达式的一部分一个命名,也对调试很有好处。你可以查看部分的结果。如果不能在表达式内部进行变量赋值,那么你就只能重构代码才能调试代码的中间结果了。有了“表达式赋值”,你需要做的就是添加几个 name := 标签了,这样你就不需要为了调试而大面积地更改代码了,这样可以避免不少的bug,也让其他合作者更容易理解你的代码。