2016-05-20 4 views
-6

Кто-нибудь знает, что я должен здесь делать? Я новичок в python, поэтому я не совсем уверен, как его описать. Любая помощь будет принята с благодарностью! Это своего рода простая программа для шифрования.Замена элементов списка с помощью элементов словаря?

У меня есть список (ниже) и словарь.

list = ['a','b','a','c','d','b'] 
dictionary = ('a':1,'b':2,'c':3,'d':4) 

И я хочу этот вывод:

121342 

Спасибо!

+4

У вас есть список и синтаксическая ошибка –

+0

@DonkeyKong вот что - я не знаю, с чего начать. Я возился с Питоном, и я сорвался в яму, которую я слишком неопытен, чтобы вырваться из дома. –

ответ

0
list_t = ['a','b','a','c','d','b'] 
dictionary = {'a':1,'b':2,'c':3,'d':4} 
lis=[] 
for i in list_t: 
    for key in dictionary: 
     if (i==key): 
     lis.append(dictionary[i]) 
print lis 
+0

Хотя этот фрагмент кода может решить вопрос, [включая объяснение] (http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers) действительно помогает улучшить качество вашего сообщения. Помните, что вы отвечаете на вопрос читателей в будущем, и эти люди могут не знать причин вашего предложения кода. – zondo

0

попробовать это

list = ['a','b','a','c','d','b'] 
dictionary = {'a':1,'b':2,'c':3,'d':4}  
[dictionary[i] for i in list] 

это выражение будет сделать новый список итерации на «список» переменный и получить «словарь [я]» с помощью «я», как каждый пункт в «списке». Рид больше here о.

Если вы не уверены, что ваш «словарь» имеет любое значение из «списка», лучше получить «словарные» значения с помощью словаря. (I, 'значение, если ключ не найден »). Тогда вы можете набрать:

[dictionary.get(i,'value if key is not found') for i in list] 

here вы получите больше о том, что

лас один - если ваш результат должен быть точным '121342', посмотрите here введите

''.join([dictionary.get(i,'value if key is not found') for i in list]) 
Смежные вопросы