【发布时间】:2020-01-04 22:00:16
【问题描述】:
我需要遍历一个大型数据集,并将我的结果存储在一个列表中。这是代码:
results = []
n=10000
for i in range(1,n):
text = requests.get("""https://www.chess.com/games/archive/eono619gameOwner=other_game&gameTypes%5B0%5D=chess960&gameTypes%5B1%5D=daily&gameType=live&page{}""".format(i)).text
result = BeautifulSoup(text, 'html.parser')
现在要填充我的列表,我可以这样做:
results += result
或:
results.append(result)
在处理大型数据集时有什么更有效的方法吗?如果有,为什么?
【问题讨论】:
-
+=类似于 extend,而不是 append。 -
这可能有助于python list concatenation efficiency。显示不同方法的计时性能。
-
@IainShelvington 不,它没有。它就地修改列表,本质上等同于
.extend -
@IainShelvington 不,
+=就地更新列表。精确地引入了增强赋值运算符以提供就地选项,因为results = results + result必须首先创建一个新列表。