Zważywszy,Jaki jest najszybszy sposób na połączenie dwóch list w python?
list_1 = [1,2,3,4]
list_2 = [5,6,7,8]
Co jest najszybszym sposobem do osiągnięcia następujących celów w Pythonie?
list = [1,2,3,4,5,6,7,8]
Należy pamiętać, że istnieje wiele sposobów scalania dwóch list w pythonie. Szukam najbardziej efektywnego czasu.
[EDYTOWANIE] +++++++++++++++++++++++++++++++++++++++++++++++++++++ + [EDIT]
Dzięki za wszystkie odpowiedzi. Biorąc pod uwagę twoje pomysły, próbowałem następujących rzeczy i tutaj jest moje zrozumienie.
KOD
import time
c = list(range(1,10000000))
c_n = list(range(10000000, 20000000))
start = time.time()
c = c+c_n
print len(c)
print time.time() - start
c = list(range(1,10000000))
start = time.time()
for i in c_n:
c.append(i)
print len(c)
print time.time() - start
c = list(range(1,10000000))
start = time.time()
c.extend(c_n)
print len(c)
print time.time() - start
WYJŚCIE
19999999
0.125061035156
19999999
1.02858018875
19999999
0.03928399086
Tak więc, jeśli ktoś nie przeszkadza ponowne list_1/list_2 w pytaniu następnie przedłużyć jest droga. Z drugiej strony, najszybszym sposobem jest "+".
Nie jestem jednak pewien innych opcji.
Dzięki ponownie :-)
Zobacz ten post -> http://stackoverflow.com/questions/1720421/merge-two-lists-in-python –
you” tak naprawdę nie łączę się tutaj, łączycie ... Czy to naprawdę tego chcesz? Co powinieneś dostać z 'list1 = [1,2,3,5]; lista2 = [4,5,6,7] '? – mgilson
Nie można uzyskać szybciej niż "list_1 + lista_2" – jamylak