fork download
  1. uma_lista = [1, 2, 3, 4]
  2. outra_lista = [3, 4, 5, 6]
  3.  
  4. from timeit import timeit
  5.  
  6. # executa 100 mil vezes cada teste
  7. params = { 'number': 100000, 'globals': globals() }
  8.  
  9. # imprime os tempos em segundos
  10. # list comprehension
  11. print(timeit('[elemento for elemento in uma_lista if elemento in outra_lista]', **params))
  12. # set
  13. print(timeit('set(uma_lista) & set(outra_lista)', **params))
  14. # set + transformar o resultado em lista
  15. print(timeit('list(set(uma_lista) & set(outra_lista))', **params))
  16.  
Success #stdin #stdout 0.18s 9684KB
stdin
Standard input is empty
stdout
0.04113100469112396
0.045501348562538624
0.06429688166826963