python - 为什么代码 1 可以正常工作,而代码 2 不能?(Python)
问题描述
我在 Codebat 上尝试这个练习:
给定一个数字 n,如果 n 在 1..10 范围内,则返回 True,包括 1..10。除非 outside_mode 为 True,在这种情况下,如果数字小于或等于 1,或者大于或等于 10,则返回 True。
代码 1:
def in1to10(n, outside_mode):
if not outside_mode:
return n in range(1,11)
return n <= 1 or n >= 10
代码 2:
def in1to10(n, outside_mode):
if outside_mode and n <= 1 and n >= 10:
return True
elif n >= 1 and n <= 10:
return True
else:
return False
有人可以向我解释一下,因为我认为这些代码非常相似。
解决方案
这一行是错误的:
if outside_mode and n <= 1 and n >= 10:
n 不可能同时小于(或等于)1 和大于(或等于)10,它应该是:
def in1to10(n, outside_mode):
if outside_mode and n <= 1 or n >= 10:
return True
elif n >= 1 and n <= 10:
return True
else:
return False
推荐阅读
- r - r 按行比较两个data.tables
- jquery - 尝试添加 Caroufredsel 滑块分页项目符号
- python - 无法在 Python 中打开 .xls 文件,xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; 成立 '
我正在尝试从 excel 文件中提取数据,不幸的是 xlrd 库文档没有打开该文件,并且引发了很多错误。作为参考,我有一个包含 10 多页数据的 .xls 文件
我尝试使用 xlrd 库但没有成功,这是我
- python - 为什么 // (division floor) 产生结果但是 math.floor() 给出了一个溢出错误
- ruby-on-rails - 对所有子资源执行 before_filter/before_action
- r - TIC TOC 不够准确,无法告诉我这两行代码中哪一行最快
- xpath - 如何根据两个属性的文本找到根节点
- sql-server - 从 SQL Server 存储过程中的表中选择文本列
- xml - 不是 HASH 参考
- amazon-web-services - AppSync + DynamoDB:使用过滤器的查询不会返回所有有效项目