我有一些数据库查询需要添加到列表中的结果(~60000行)。
代码如下所示:
hosts = connection.execute(some_query)
for host in hosts:
mylist.append(host['display_name'])
然而,迭代所有项目并将它们附加到列表中的速度非常慢。 我怎样才能让它更快?我已查看https://wiki.python.org/moin/PythonSpeed/PerformanceTips#loops,但这似乎并不适用于我的案例。
答案 0 :(得分:1)
答案 1 :(得分:1)
我终于发现大部分时间花在了我们的fqlone函数(我使用SQLAlchemy的MySQL连接器)上,似乎是for循环的每次迭代都会调用它。
切换到MySQL-Python(mysqldb)连接器使脚本在~3s而不是~4m内运行。