Python C değildir

Perl, Java, C++ veya Haskell de değildir. Diğer dillerin Python'da nasıl gerçeklendiği ile ilgili bilginizi aktarırken dikkatli olun. Basit bir örnek bunu göstermektedir:

		% timeit.py -s 'x = 47' 'x * 2'
		1000000 loops, best of 3: 0.574 usec per loop
		% timeit.py -s 'x = 47' 'x << 1'
		1000000 loops, best of 3: 0.524 usec per loop
		% timeit.py -s 'x = 47' 'x + x'
		1000000 loops, best of 3: 0.382 usec per loop
	

Şimdi de benzer C koduna bakın (sadece toplama kısmı gösterildi):

		#include <stdio.h>
			
		int main (int argc, char **argv) {
			int i = 47;
			int loop;
			for (loop=0; loop<500000000; loop++)
				i + i;
		}
						     
	

ve çalışma zamanları şu şekildedir:

		% for prog in mult add shift ; do
		< for i in 1 2 3 ; do
		<   echo -n "$prog: "
		<   /usr/bin/time ./$prog
		< done
		< echo
		< done
		mult:         6.12 real         5.64 user         0.01 sys
		mult:         6.08 real         5.50 user         0.04 sys
		mult:         6.10 real         5.45 user         0.03 sys
				
		add:          6.07 real         5.54 user         0.00 sys
		add:          6.08 real         5.60 user         0.00 sys
		add:          6.07 real         5.58 user         0.01 sys
				
		shift:        6.09 real         5.55 user         0.01 sys
		shift:        6.10 real         5.62 user         0.01 sys
		shift:        6.06 real         5.50 user         0.01 sys
	

Python içerisinde bir sayıyı kendisi ile toplamanın onu iki ile çarpmak veya bir bit sola kaydırmaktan daha avantajlı olduğuna dikkat edin. C içerisinde, tüm modern mimarilerde, tüm bu üç aritmetik işlem bir çevrimde gerçeklenecek olan makine dili komutlarına dönüştürülür, dolayısi ile hangisini kullandığınız pek önemli değildi.

Yeni Python programcılarının bu aralarki genel testleri Perl yaklaşımını tercüme etmektir:

		while (<>) {
			print;
		}
	

Python içerisinde bu kod şu şekilde gözükür:

		import fileinput
		
		for line in fileinput.input():
			print line,
	

Buna bakarak Python'un Perl'den daha yavaş olacağı sonucunu çıkarırlar. Diğerlerinin defalarca belirttiği gibi bazı durumlarda Python Perl'e göre daha yavaş fakat bazılarına göre ise daha hızlı olmaktadır. Bağıl hız genelde bu iki dil ile olan tecrübenize bağlıdır.