Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/88: Рейтинг темы: голосов - 88, средняя оценка - 4.50
60 / 60 / 54
Регистрация: 19.02.2012
Сообщений: 262

Как заменить слова в списке по словарю?

12.09.2013, 22:21. Показов 18350. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
даны список слов и словарь. нужно сделать замены в списке таким образом, чтобы при совпадении слова в списке с ключом в словаре происходила замена этого слова на значение при этом ключе. сам пытался, но выдает ошибку. что нужно исправить?
Python
1
2
3
4
5
6
7
8
9
10
11
12
a = ['Mam', 'Dad', 'Else', 'Cat', 'Dog']
b = dict(Dad = 'Uncle', Cat = 'Cow')
c = b.keys()
d = b.values()
for i in a:
    for j in c:
        if a[i] == c[j]:
            a[i] = d[j]
        else:
            continue
 
print a
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.09.2013, 22:21
Ответы с готовыми решениями:

Как найти в списке слова, которые есть в предыдущем списке
Добрый день. Нужна ваша помощь Как найти в списке слово, которое есть в предыдущем списке? Вот сам код def lest(lst1,lst2): ...

Как заменить строку на строку по словарю замен?
Здравствуйте! Искал в интернете как можно заменить строки на строки и толком ничего не нашёл, некий гугл и яндекс, возомнили себя...

Autocomplete по словарю с учетом частоты появления слова
Как реализовать autocomplete для набираемого слова в текстовом редакторе (при вводе первых букв показывать несколько возможных завершений...

5
 Аватар для Wolkodav
842 / 480 / 58
Регистрация: 18.09.2012
Сообщений: 1,688
12.09.2013, 22:42
ioane,
Python
1
2
3
4
5
6
7
a = ['Mam', 'Dad', 'Else', 'Cat', 'Dog']
b = {'Dad' : 'Uncle', 'Cat' : 'Cow'}
for item in a:
   if item in b
        a[a.index(item)]=b[item]
        
print a
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
13.09.2013, 03:53
Python
1
2
3
4
5
6
7
8
9
10
11
12
>>> a = ['Mam', 'Dad', 'Else', 'Cat', 'Dog']
>>> b = dict(Dad='Uncle', Cat='Cow')
>>> 
>>> for i, e in enumerate(a):
...     if e in b:
...         a[i] = b[e]
... 
>>> print a
['Mam', 'Uncle', 'Else', 'Cow', 'Dog']
>>> print b
{'Dad': 'Uncle', 'Cat': 'Cow'}
>>>
1
Kokos72
01.10.2013, 10:57
можно построчно прокомментировать? и если несколько строк то как?
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
01.10.2013, 14:17
Python
1
2
3
4
5
6
a = ['Mam', 'Dad', 'Else', 'Cat', 'Dog']
b = dict(Dad = 'Uncle', Cat = 'Cow')
for (offset, item) in enumerate(a):
    if b.setdefault(item) is not None:
        a[offset] = b.setdefault(item)
print a
Функция enumerate возвращает индекс текущего элемента и сам элемент (offset - это номер текущего элемента; item - сам элемент)
Метод словаря setdefault возвращает значение ключа, а если не находи такой ключ, то возвращает None.
Думаю дальше все ясно.
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
01.10.2013, 15:29
Цитата Сообщение от Kokos72 Посмотреть сообщение
и если несколько строк то как?
чего ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.10.2013, 15:29
Помогаю со студенческими работами здесь

Написать программу, исключающую в исходном тексте из каждого слова его окончание по словарю
Здравствуйте, помогите пожалуйста с задачей: Написать программу, исключающую в исходном тексте из каждого слова его окончание по словарю....

Написать программу, исключающую в исходном тексте из каждого слова его окончание по словарю
Помогите пожалуйста, не могу решить задачу (используя только базовые примитивы Lisp): Написать программу, исключающую в исходном...

существуют слова нужно заменить 3 гласные буквы и заменить их (целые слова) на знак *
Добро время суток вам.Можете помочь доделать задачку (Найти в тексте слова содержащие 3 гласные буквы и заменить их (целые слова) на знак...

Как заменить несколько элементов в списке
как заменить несколько элементов

Как заменить буквы в списке строк
Катя работает редактором в журнале. Журнал не очень прибыльный и приходится экономить на чернилах, поэтому вместо букв Ё/ё в текстах...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru