面试翻车记

2024-11-04

作者在面试中要求候选人实现一个井字棋游戏,以此考察代码质量、速度和简洁性等。一位使用Python的候选人用`cell[0][0] == cell[1][1] == cell[2][2]`来判断对角线是否相同,作者认为逻辑上正确但技术上不严谨,因为在某些语言中,这等价于`True == cell[2][2]`,会返回错误结果。候选人也对此感到困惑,并表示在现有代码库中多次见过这种用法。面试后,作者发现Python支持链式表达式,上述代码会被转换为`(cell[0][0] == cell[1][1]) and (cell[1][1] == cell[2][2])`,因此代码实际上是正确的。

阅读更多
未分类