我的代码中有几行与
非常相似[this.Attribute for this in THAT if something]
有没有办法让函数以更短的方式返回?因为创建它们非常繁琐,而且我发现它们如此易读,特别是如果有太多的“if-conditions”条件。
编辑:
好吧,我经常花时间尝试从符合某些标准的大清单中获取某些内容。我经常需要改变标准和输出。 像这样:
[obj for obj in Object.ALLOBJECTS if obj.pos == (x,y)]
[creature.pos for creature in Creature.ALLCREATURES if creature is not caller]
[creature for creature in Creature.ALLCREATURES if creature.pos == pos and creature is not caller]
等等。
也许我从一开始就做错了。
答案 0 :(得分:2)
您可以将条件外包给函数。如果它很复杂,那就是 将分解复杂性并使每个部分更容易阅读,这 或多或少是功能的重点。