Comparison of processing speed of basic Python functions.
Basically, data size N = 10^6.
# input()
N = int(input())
A = [int(input()) for _ in range(N)]# sys.stdin.readline()
import sys
input = sys.stdin.readline
N = int(input())
A = [int(input()) for _ in range(N)]| mean(ms) | std(ms) | |
|---|---|---|
| input() | 392.40 | 24.36 |
| sys.stdin.readline() | 37.09 | 1.88 |
A is a list whose elements are random integer values.
# sort()
A.sort()# sorted()
A = sorted(A)| mean(ms) | std(ms) | |
|---|---|---|
| sort() | 88.54 | 56.98 |
| sorted() | 127.03 | 7.51 |
A is a two-dimensional array whose elements are random integer values.
# sort, lambda
A.sort(key=lambda x: x[1])# sort, itemgetter
from operator import itemgetter
A.sort(key=itemgetter(1))# sorted, lambda
A = sorted(A, key=lambda x: x[1])# sorted, itemgetter
from operator import itemgetter
A = sorted(A, key=itemgetter(1))| mean(ms) | std(ms) | |
|---|---|---|
| sort, lambda | 641.17 | 29.69 |
| sort, itemgetter | 521.91 | 4.91 |
| sorted, lambda | 688.45 | 35.24 |
| sorted, itemgetter | 588.17 | 15.32 |
# for _ in range(N)
for _ in range(N):
pass# for i in range(N)
for i in range(N):
i# while i < N
i = 0
while i < N:
i += 1| mean(ms) | std(ms) | |
|---|---|---|
| for _ in range(N) | 20.63 | 0.89 |
| for i in range(N) | 25.66 | 0.93 |
| while i < N | 51.36 | 1.44 |
# [None] * N
[None] * N# [None for _ in range(N)]
[None for _ in range(N)]| mean(ms) | std(ms) | |
|---|---|---|
| [None] * N | 5.15 | 0.41 |
| [None for _ in range(N)] | 41.17 | 2.05 |
# for i in range(len(A))
for i in range(len(A)):
A[i]# for a in A
for a in A:
a| mean(ms) | std(ms) | |
|---|---|---|
| for i in range(len(A)) | 41.14 | 0.56 |
| for a in A | 11.85 | 1.51 |
# append()
A = []
for i in range(N):
A.append(i)# A[i] = i
A = [None] * N
for i in range(N):
A[i] = i# [i for i in range(N)]
A = [i for i in range(N)]| mean(ms) | std(ms) | |
|---|---|---|
| append() | 103.99 | 2.62 |
| A[i] = i | 70.97 | 3.93 |
| [i for i in range(N)] | 65.83 | 3.20 |
python main.py


.png)
.png)
.png)
.png)