获取flask查询.all()中对象的位置



我想知道如何从flask sqlalchemy的对象列表中获得一些对象的位置。

universities = University.query.order_by(University.students_total.desc()).all()
print universities
[<University 38>, <University 34>, <University 19>, <University 33>]

假设我想获取大学的位置19

我试过了,没有成功:universities.index("<University 19>")

ValueError: '<University 19>' is not in list

您可以通过查询一所大学,然后在所有大学列表中查找该大学的索引来实现这一点。它看起来像这样:

selected_university = University.query.filter_by(id=19).first()
universities.index(selected_university)

前面代码的问题是,打印所有大学的列表显示每个对象的字符串表示形式。然后,您试图找到其中一个字符串表示的索引。这不起作用,因为实际的列表包含对象,而不是字符串。

最新更新