python - 这是编写布尔表达式的正确方法吗?
问题描述
我真的很困惑这个问题,如果这是一个愚蠢的问题,我很抱歉。
我有一个实验室问题,要求我编写一个布尔表达式来测试输入的数字是否在范围内。
这是编写此表达式的正确方法吗?:
if 1 <= number <= 10:
True
else:
False
解决方案
该1 <= number <= 10
部分是有效表达式;您可以评估和/或分配给变量的东西(if
它本身使用表达式的结果来改变程序的控制流)。您根本不需要写True
or False
,因为测试本身会根据需要生成True
/ False
;return 1 <= number <= 10
or比显式执行/或/的等效/测试in_range = 1 <= number <= 10
更有效和更简单。if
else
return True
return False
in_range = True
in_range = False
另一个有效的(如果通常稍微慢一些)解决方案(仅适用于整数,因为例如,4.5
它不会通过这个测试,而它会通过前者)将是:
number in range(1, 11)
推荐阅读
- mmenu - mmenu.js:是否可以添加对手风琴风格的可折叠/可扩展菜单的支持?
- google-domains - 有没有办法在谷歌域中找到我当前的动态 ip
- r - 如何规避 table() 函数抛出的 2^31 错误?
- javascript - 减少将数据包装在数组中的函数
- mysql - 有没有办法在 SELECT SQL 查询中显示名称而不是 ID?
- python-3.x - 划分每个子列表中的某些元素
- python - 未创建 Keras 模型
- javascript - Chrome 陷入低效的正则表达式、HTML 输入模式或 AngularJS 自定义验证器
- rust - 哪个 Rust 结构可以做到这一点?
- c++ - 我可以在低级挂钩过程中区分触摸板和鼠标消息吗?(Win32)