fork(2) download
  1. uma_lista = [1, 2, 3, 4] * 1000
  2. outra_lista = [3, 4, 5, 6] * 1000
  3.  
  4. from timeit import timeit
  5.  
  6. # executa 10 vezes cada teste
  7. params = { 'number': 10, '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.64s 9500KB
stdin
Standard input is empty
stdout
0.6210834691300988
0.0005079144611954689
0.0005226992070674896