假设我们在 python 中有一个 if 语句:
if a == 1 or a == 2 or a == 3 ... a == 100000 进行大量比较,全部用or连接。
将其压缩为更小的 if 语句的好算法是什么? 例如上面的
如果 a >= 1 且 a <= 100000
有时数字中会有一种模式,有时它们会完全随机,因此算法必须很好地处理这两种情况。
任何人都可以提出一个像样的算法来有效地压缩这种形式的 if 语句吗?
编辑:目标是使生成的 if 语句尽可能短。评估 if 语句的效率次于长度。
最佳答案
如果你的数字中没有模式,你可以使用元组并使用成员测试
if a in (1,2,3,... 100000)
关于python - 自动将长 if 语句压缩为短语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21051059/