之前在ACWing学习的时候发现Python输入模式有两种:
res = list(map(int, input().strip().split()))
和
res = [int(x) for x in input().strip().split()]
最近楼主在蓝桥杯中使用了for循环输入数据(头铁),比完才发现在比赛的输入模式中,for循环处理输入比map要慢得多,在数据量大的时候很容易超出时间限制
测试,先生成一亿个1:
a = '1 '*100000000
使用map处理成列表:
from time import time
start = time()
test_1 = list(map(int, a.strip().split()))
end = time()
print('map耗时:' + str(end - start)+'秒')
使用for处理成列表:
start_2 = time()
test_2 = [int(x) for x in a.strip().split()]
end_2 = time()
print('for耗时:' + str(end_2 - start_2)+'秒')
而生成的数据完全一致:
以后要是有大规模输入还是老实用map吧