Учитывая,Каков самый быстрый способ слияния двух списков в python?
list_1 = [1,2,3,4]
list_2 = [5,6,7,8]
Что такое быстрый способ для достижения следующих в Python?
list = [1,2,3,4,5,6,7,8]
Обратите внимание, что может быть много способов объединить два списка в python. Я ищу наиболее эффективный способ времени.
[EDIT] +++++++++++++++++++++++++++++++++++++++++++ + [EDIT]
Спасибо за все ответы. Получив ваши идеи, я попробовал следующее, и вот мое понимание.
КОД
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
ВЫВОД
19999999
0.125061035156
19999999
1.02858018875
19999999
0.03928399086
Так что, если кто-то не мешает повторному использованию list_1/list_2 в вопросе, то расширить это путь. С другой стороны, «+» - самый быстрый способ.
Я не уверен в других вариантах.
Еще раз спасибо :-)
Посмотреть этот пост -> http://stackoverflow.com/questions/1720421/merge-two-lists-in-python –
You» я действительно не сливаюсь здесь, вы конкатенируете ... Это действительно то, что вы хотите? Что вы должны получить с помощью 'list1 = [1,2,3,5]; list2 = [4,5,6,7] '? – mgilson
Вы не можете получить быстрее, чем 'list_1 + list_2' – jamylak