Python高级基础:迭代、解包与推导式详解
1. 逻辑运算符的潜在问题
在Python中,逻辑运算符 and 和 or 的组合常被用于条件表达式,但其中存在潜在问题。例如,当传入 test_value() 函数的值为150时, 150 < 100 为 False , and 运算符会直接返回该值,而不计算右侧表达式。最终表达式为:
return 'The value is ' + (False or 'too big!')
由于 False 为假, or 运算符返回右侧的值 'too big!' 。然而,当 and 子句左侧为真时, or 子句的行为完全取决于运算符左侧的值。若提供空字符串、数字0或值不确定的变量,可能导致整个表达式出现问题。因为没有异常抛出,代码看似正常,但实际上结果可能并非预期,这会使调试变得困难。我们需要摒弃对代码的固有假设,从Python的角度去审视代码。
2. 迭代
序列通常有两种看待方式:作为一组项目的集合,或作为一次访问一个项目的方式。这两种方式并不相互排斥,但将它们分开有助于理解不同的特性。处理整个集合需要将所有项目同时加载到内存中,而逐个访问项目通常更高效。
迭代是遍历集合的一种更高效
超级会员免费看
订阅专栏 解锁全文

1712

被折叠的 条评论
为什么被折叠?



