В этом горячем споре, я смею предложить:
(я знаю, я знаю, время есть, но я не так хорошо обучен, и clock () мне кажется достаточным для этого случая)
import os
from time import clock
separ = os.sep
ospath = os.path
ospathjoin = os.path.join
A,B,C,D,E,F,G,H = [],[],[],[],[],[],[],[]
n = 1000
for essays in xrange(100):
te = clock()
for i in xrange(n):
xa = os.path.join('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys')
A.append(clock()-te)
te = clock()
for i in xrange(n):
xb = ospath.join('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys')
B.append(clock()-te)
te = clock()
for i in xrange(n):
xc = ospathjoin('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys')
C.append(clock()-te)
te = clock()
for i in xrange(n):
xd = 'C:\WINNT\system32'+os.sep+'Microsoft\Crypto'+os.sep+'RSA\MachineKeys'
D.append(clock()-te)
te = clock()
for i in xrange(n):
xe = '%s\\%s\\%s' % ('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys')
E.append(clock()-te)
te = clock()
for i in xrange(n):
xf = 'C:\WINNT\system32'+separ+'Microsoft\Crypto'+separ+'RSA\MachineKeys'
F.append(clock()-te)
te = clock()
for i in xrange(n):
xg = os.sep.join(('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys'))
G.append(clock()-te)
te = clock()
for i in xrange(n):
xh = separ.join(('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys'))
H.append(clock()-te)
print min(A), "os.path.join('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys')"
print min(B), "ospath.join('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys')"
print min(C), "ospathjoin('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys')"
print min(D), "'C:\WINNT\system32'+os.sep+'Microsoft\Crypto'+os.sep+'RSA\MachineKeys'"
print min(E), "'%s\\%s\\%s' % ('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys')"
print min(F), "'C:\WINNT\system32'+separ+'Microsoft\Crypto'+separ+'RSA\MachineKeys'"
print min(G), "os.sep.join('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys')"
print min(H), "separ.join('C:\WINNT\system32','Microsoft\Crypto','RSA\MachineKeys')"
print 'xa==xb==xc==xd==xe==xf==xg==xh==',xa==xb==xc==xd==xe==xf==xg==xh
результат
0.0284533369465 os.path.join ('C: \ WINNT \ system32', 'Microsoft \ Crypto', 'RSA \ MachineKeys')
0.0277652606686 ospath.join ('C: \ WINNT \ system32', 'Microsoft \ Crypto', 'RSA \ MachineKeys')
0.0272489939364 ospathjoin ('C: \ WINNT \ system32', 'Microsoft \ Crypto', 'RSA \ MachineKeys')
0,00398598145854 'C: \ WINNT \ system32' + os.sep + 'Microsoft \ Crypto' + os.sep + 'RSA \ MachineKeys'
0,00375075603184 '% s \% s \% s'% ('C: \ WINNT \ system32', 'Microsoft \ Crypto', 'RSA \ MachineKeys')
0,00330824168994 'C: \ WINNT \ system32' + separ + 'Microsoft \ Crypto' + separ + 'RSA \ MachineKeys'
0,00292467338726 os.sep.join ('C: \ WINNT \ system32', 'Microsoft \ Crypto', 'RSA \ MachineKeys')
0,00261401937956 separ.join ('C: \ WINNT \ system32', 'Microsoft \ Crypto', 'RSA \ MachineKeys')
1024 * Правда *
с
separ = os.sep
ospath = os.path
ospathjoin = os.path.join