Задача 6. Словарь синонимов
Одна библиотека поручила вам написать программу для оцифровки словарей слов-синонимов. На вход в программу подаётся N пар слов. Каждое слово является синонимом к парному ему слову. 
Реализуйте код, который составляет словарь слов-синонимов (все слова в словаре различны), затем запрашивает у пользователя слово и выводит на экран его синоним. Обеспечьте контроль ввода: если такого слова нет, то выведите ошибку и запросите слово ещё раз. При этом проверка не должна зависеть от регистра символов.
Пример:
Введите количество пар слов: 3
1 пара: Привет - Здравствуйте
2 пара: Печально - Грустно
3 пара: Весело - Радостно
Введите слово: интересно
Такого слова в словаре нет.
Введите слово: здравствуйте
Синоним: Привет
	
	
	Python
	
		
		
								
				
								
				
								
				
																				
							
								
				
								
				
								
				
								
				 
				
									
																				
							
			
	
		
			Помогите решить задачу на python!
couple_words = int(input('Введите количество пар слов: '))
main_dict = {}
for i_num in range(couple_words):
word_fst, snd_word = input(f'{i_num + 1} пара: ').split()
main_dict[word_fst] = snd_word
synonim = input('\nВведите слово: ').lower()
print('Синоним:', main_dict.get(synonim) or ''.join([word_fst \
for word_fst, snd_word in main_dict.items() if snd_word == synonim]) or 'Такого слова в словаре нет')
				
							main_dict = {}
for i_num in range(couple_words):
word_fst, snd_word = input(f'{i_num + 1} пара: ').split()
main_dict[word_fst] = snd_word
synonim = input('\nВведите слово: ').lower()
print('Синоним:', main_dict.get(synonim) or ''.join([word_fst \
for word_fst, snd_word in main_dict.items() if snd_word == synonim]) or 'Такого слова в словаре нет')
num = int(input('Введите количество пар слов: ')) 
dict = dict()
 
for i_num in range(num):
word_list = input(f'{i_num + 1} пара: ').split()
dict[word_list[0]] = word_list[2]
while True:
word = input('\nВведите слово: ').title()
for i_word in dict.items():
if word in i_word[0]:
print('Синоним -', i_word[1])
break
elif word in i_word[1]:
print('Синоним -', i_word[0])
break
else:
print(f'\nТакого слова <{word}> в словаре нет.\nНапишите другое слово')
				
							dict = dict()
for i_num in range(num):
word_list = input(f'{i_num + 1} пара: ').split()
dict[word_list[0]] = word_list[2]
while True:
word = input('\nВведите слово: ').title()
for i_word in dict.items():
if word in i_word[0]:
print('Синоним -', i_word[1])
break
elif word in i_word[1]:
print('Синоним -', i_word[0])
break
else:
print(f'\nТакого слова <{word}> в словаре нет.\nНапишите другое слово')
count_input = int(input('Введите количество пар слов: '))
synonims = dict()
for i in range(1, count_input + 1):
couples = input(f'{i} пара: ').split(' - ')
for couple in couples[:1]:
synonims[couple] = couples[1]
word = input('Введите слово: ').title()
for synonim in synonims:
if word == synonim.title():
print(f'Синоним: {synonims[synonim]}')
break
elif word == synonims[synonim].title():
print(f'Синоним: {synonim}')
break
else:
print('Такого слова в словаре нет')
				
									synonims = dict()
for i in range(1, count_input + 1):
couples = input(f'{i} пара: ').split(' - ')
for couple in couples[:1]:
synonims[couple] = couples[1]
word = input('Введите слово: ').title()
for synonim in synonims:
if word == synonim.title():
print(f'Синоним: {synonims[synonim]}')
break
elif word == synonims[synonim].title():
print(f'Синоним: {synonim}')
break
else:
print('Такого слова в словаре нет')
								
									Денис Колоколов								
								 
							
											 
							def dorin(i): 
a1 = ('','Первая','Вторая','Третья','Четвертая','Пятая')
if i > 0 and i < 20:
return (a1[i])
     
count = int(input('Введите количество пар слов: '))
text_dict = dict()
 
for i in range(1, count + 1):
text = input(f'{dorin(i)} пара: ').lower().split(' - ')
text_dict[text[0].strip()] = text[1].strip()
text_dict[text[1].strip()] = text[0].strip()
# print(text_dict)
 
while True:
word = input('\nВведите слово: ').lower().strip()
if word == 'end':
break
elif word in text_dict:
print('Синоним:', text_dict[word])
else:
print('Такого слова в словаре нет.')
				
							a1 = ('','Первая','Вторая','Третья','Четвертая','Пятая')
if i > 0 and i < 20:
return (a1[i])
count = int(input('Введите количество пар слов: '))
text_dict = dict()
for i in range(1, count + 1):
text = input(f'{dorin(i)} пара: ').lower().split(' - ')
text_dict[text[0].strip()] = text[1].strip()
text_dict[text[1].strip()] = text[0].strip()
# print(text_dict)
while True:
word = input('\nВведите слово: ').lower().strip()
if word == 'end':
break
elif word in text_dict:
print('Синоним:', text_dict[word])
else:
print('Такого слова в словаре нет.')
def main(): 
words_count = int(input("Введите количество пар слов: "))
words_dict = get_words_dict(words_count)
get_synonym(words_dict)
 
 
def get_words_dict(count):
print("Начните ввод слов по принципу: слово1 - слово2")
words_dict = {}
index_start = 1
for _ in range(count):
word = input("{} пара слов: ".format(index_start)).lower()
word_list = word.split(" - ")
words_dict[word_list[0]] = word_list[1]
index_start += 1
return words_dict
 
 
def get_synonym(words_dict):
val_list = list(words_dict.values())
key_list = list(words_dict.keys())
flag = True
while flag:
word = input("Введите слово: ").lower()
if word in words_dict.keys() or word in words_dict.values():
if word in val_list:
key_position = val_list.index(word)
print(key_list[key_position])
flag = False
else:
print(words_dict.get(word))
flag = False
 
else:
print("Такого слова в словаре нет.")
 
 
main()
				
							words_count = int(input("Введите количество пар слов: "))
words_dict = get_words_dict(words_count)
get_synonym(words_dict)
def get_words_dict(count):
print("Начните ввод слов по принципу: слово1 - слово2")
words_dict = {}
index_start = 1
for _ in range(count):
word = input("{} пара слов: ".format(index_start)).lower()
word_list = word.split(" - ")
words_dict[word_list[0]] = word_list[1]
index_start += 1
return words_dict
def get_synonym(words_dict):
val_list = list(words_dict.values())
key_list = list(words_dict.keys())
flag = True
while flag:
word = input("Введите слово: ").lower()
if word in words_dict.keys() or word in words_dict.values():
if word in val_list:
key_position = val_list.index(word)
print(key_list[key_position])
flag = False
else:
print(words_dict.get(word))
flag = False
else:
print("Такого слова в словаре нет.")
main()
N = int(input('Введите количество пар слов: '))
 
pair_dict = dict()
 
flag = True
 
 
for _ in range(N):
 
pair = input(f'\n{_ + 1} пара: ').split(' - ')
 
pair_dict[_] = [pair[0], pair[1]]
 
   
while flag:
 
word = input('\nВведите слово: ').lower()
 
for key in pair_dict:
 
for i_word in pair_dict.get(key):
 
if i_word.lower() == word:
 
print(f'\nСиноним: {pair_dict.get(key)[(pair_dict.get(key).index(i_word) + 1) % len(pair_dict.get(key))]}')
 
flag = False
 
break
 
                
 
if flag:
 
print('\nТакого слова в словаре нет.')
				
									
							pair_dict = dict()
flag = True
for _ in range(N):
pair = input(f'\n{_ + 1} пара: ').split(' - ')
pair_dict[_] = [pair[0], pair[1]]
while flag:
word = input('\nВведите слово: ').lower()
for key in pair_dict:
for i_word in pair_dict.get(key):
if i_word.lower() == word:
print(f'\nСиноним: {pair_dict.get(key)[(pair_dict.get(key).index(i_word) + 1) % len(pair_dict.get(key))]}')
flag = False
break
if flag:
print('\nТакого слова в словаре нет.')

								
									Александр Жданов								
								break забыл внутри if-а, а так твой код лучше							
											Похожие вопросы
- Пожалуйста, помогите решить задачу на Python. Упражнения 57,58,59,60.
- Помогите решить задачу на Python. Никак не могу решить задачу, больше дня не могу найти ответ! Никакой код не работает.
- Пожалуйста, помогите решить задачу на Python. Упражнение 124, 125, 146
- Помогите решить задачу на python! Упражнение 41,45,47.
- Помогите решить задачу на python! Упражнение 49,50,51,52,53.
- Помогите решить задачу на Python.
- Помогите решить задачу на Python
- Помогите решить задачу на Python
- Нужно решить задачу на Python
- Помогите решить задачу в яндекс-практикуме Python
 
			 
						 
						 
						 
							