python - 如何测试范围的等价性

标签 python unit-testing python-3.x

我的一个单元测试在读取日志文件后检查范围是否设置正确,我只想测试 var == range(0,10)。但是,range(0,1) == range(0,1) 在 Python 3 中计算为 False

有没有直接的方法来测试 Python 3 中范围的等价性?

最佳答案

在 Python3 中,range 返回类型为 range 的可迭代对象。两个 range 相等当且仅当它们相同(即共享相同的 id)。要测试其内容是否相等,请转换 range列表:

list(range(0,1)) == list(range(0,1))

这适用于短距离。对于很长的范围,Charles G Waldman's solution更好。

关于python - 如何测试范围的等价性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7740796/

相关文章:

python - Google Drive SDK - 更改 ( ) 键错误

java - Eclipse junit View 中的不可打印字符

java - Java 中的 Liquibase 回滚似乎不起作用

c# - 对返回集合的方法进行单元测试

python - 使用 Python 将包括表格在内的整个 Word 文档复制到另一个文档

python - 如果不存在并基于 2 列条件,则在 df pandas 中添加行

python - 使用 couchdb-python 获取多个 CouchDB 文档

python - 使用 python 将文本添加到 .tex 文件中

Python:使用os模块检查目录是否存在

python - 如何从 BluetoothError 获取错误代码