python - 在数字范围内找到最低的未占用空间

标签 python sorting

假设我生成一个 0 - 10 的列表:

range(10)

然后我有一个字典列表,看起来像这样:

item = [{'position': 0}, {'position': 4}]

如何获得不在 position 范围内的最小数字?例如,如果我向它询问下一个可用位置,它应该返回 1;并且,将它添加到列表中,然后是 2,等等,直到它达到 4,在这种情况下它应该返回 5。

最佳答案

>>> item = [{'position': 0}, {'position': 4}]
>>> min(set(range(10)) - set(x['position'] for x in item))
1

你找到所有的位置值(x['position'] for x in item)), 将此列表转换为集合,从 0 到最大值的所有数字集合中减去它, 然后在结果集中找到最小值。

关于python - 在数字范围内找到最低的未占用空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11624004/

相关文章:

postgresql - 在postgresql中对平假名中的日语单词进行排序

php - 使用 MySQL 从表中获取特定列表,然后获取剩余列表

python - 在Python中比较两个列表项

python - 如何识别并突出显示 pandas 数据帧每一行中的异常值

python - 一个用于扩展循环 python 的衬里

c - 在不修改内容的情况下对数组数据进行排序

python - 如何使用诗歌开始一个新的Django项目?

python - matlab 类似于 python 中的结构

java - 字符串数组中的错误 indexOf

javascript - Vue.js - 如何按特定属性对数组内的对象进行排序并使用 "v-for"渲染它