现在我们的代码在 set 中存储了 3,000,000 个 id,格式为字符串,我尝试使用列表推导将其转换为 int。但是它花费了 5 秒,我怎样才能减少将这 3,000,000 个 id 的字符串转换为 int 的成本?
这是我的测试代码:
import random
import time
a = set()
for i in xrange(3088767):
a.add(str(random.randint(10005907, 100000000)))
start = time.time()
ld = [int(i) for i in a]
end = time.time()
print end-start
结果是:
$python -V
Python 2.6.5
$python ld.py
5.53777289391