2016-09-25 2 views
1

Привет, все, что я очень новичок в программировании.Объединение 2 списков в 1, которые являются значениями в словаре

У меня есть dictC

dictC = { 'а': [1,2,3,4,5], 'б': [5,6,7,8,9,10]}

Я хочу, чтобы мой выход, как

mergedlist = [1,2,3,4,5,6,7,8,9,10]

Может ли один помочь мне с логикой, чтобы определить функционировать?

Я попробовал некоторые вещи, как этот

введите код здесь dictC = { 'а': [1, 2, 3, 4, 5, 6, 7], 'б': [3, 7 , 8, 9, 10]}

result = MergeDictValues(dictC) 

print result 

dictC = { 'а': [1, 2, 3, 4, 5, 6, 7], 'B': [3, 7, 8, 9 , 10]} dictc = (dictC.values ​​())

dictc.extend(dictc) 

print dictc 

Защиту MergeDictValues ​​(inputDict): разрешением ultList = [] mergedList = # я пропускаю моя логика здесь mergedList.extend() возвращение resultList()

MergeDictValues(dictc) 

resultList= MergeDictValues(dictc) 

print resultList 
+0

Что вы пробовали до сих пор? Не могли бы вы показать свою последнюю попытку и объяснить, какие трудности у вас есть? – idjaw

+0

#dictC = {'a': [1, 2, 3, 4, 5, 6, 7], 'b': [3, 7, 8, 9, 10]} #result = MergeDictValues ​​(dictC) #print result dictC = {'a': [1, 2, 3, 4, 5, 6, 7], 'b': [3, 7, 8, 9, 10]} dictc = (dictC.values ​​()) #dictc.расширить (dictc) печати dictc Защиту MergeDictValues ​​(inputDict): resultList = [] mergedList = ш ( mergedList.extend) возвращение resultList() MergeDictValues ​​(dictc) resultList = MergeDictValues ​​(dictc) печати resultList –

+0

Обновите свой вопрос и разместите там код с помощью инструментов для форматирования. – idjaw

ответ

0
mergedlist = dictC['a']+ dictC['b'] 

редактировать - ждать - вы знаете, есть повторяющиеся элементы в списке (последний элемент списка 1 равен 5, но так же как и первый элемент списка 2) - это инвариантная особенность данных. Более подробная информации требуется, я думаю ..

+0

привет, я опубликовал код, который отформатирован. Спасибо –

+0

вы ожидаете [1, 2, 3, 4, 5, 6, 7, 3, 7, 8, 9, 10] в качестве окончательного списка? – user3684792

+0

Спасибо @ пользователь3684792 это работает –

0
def MergeDictValues(dictC): 
    return [x for y in dictC.values() for x in y] 

Вход:

dictC = {'a':[1,2,3,4,5],'b':[5,6,7,8,9,10]} 
MergeDictValues(dictC) 

вне положенный:

[1, 2, 3, 4, 5, 5, 6, 7, 8, 9, 10] 
+0

спасибо Hamza !! –

0

питонов dicts неупорядоченен. Если вы перебираете ключи, вы должны сначала отсортировать их. В противном случае вы можете получить [5, 6, 7, 8, 9, 10, 1, 2, 3, 4, 5].

Вы можете использовать двойной список понимание:

dictC = {'a':[1,2,3,4,5],'b':[5,6,7,8,9,10]} 
print([x for key in sorted(dictC) for x in dictC[key]]) 
# [1, 2, 3, 4, 5, 5, 6, 7, 8, 9, 10] 

или sum добавить списки:

print(sum([dictC[key] for key in sorted(dictC)], [])) 
# [1, 2, 3, 4, 5, 5, 6, 7, 8, 9, 10] 
Смежные вопросы