Найти - Пользователи
Полная версия: Помогите с заданием на словари.
Начало » Python для новичков » Помогите с заданием на словари.
1
unicteine
ПРОДЕМОНСТРИРУЙТЕ РАБОТУ С ТЕКСТОВЫМИ ФАЙЛАМИ, А ТАКЖЕ СОЗДАНИЕ И ОБРАБОТКУ СЛОВАРЕЙ
1. задача
Создайте словарь, заполните минимально 10 словами, желательно, чтобы словарь получал данные из текстового файла.
В словарь необходимо добавлять новые слова, предложите диалог с пользователем на добавление новых слов, если сеанс добавления новых слов в словарь закончен, необходимо обновить текстовый файл, чтобы все новые слова соответственно были сохранены и в текстовом файле тоже.
Обязательно тестируйте свои решения (словарь, файл - распечатывайте)
2. задача
Создайте версию двуязычного словаря, протестируйте, что ваш двуязычный словарь работает тоже с данными из файла (вы вводите слово на любом языке и получаете перевод - предложите диалог с пользователем)
3. задача
Создайте тест для проверки знаний слов из словаря (случайным образом выбираются слова из словаря и пользователь должен ввести правильно перевод, считайте количество правильных ответов)

Задача 1 и 2 я уже выполнил. Но теперь у меня ступор с третьей. Начал создавать функцию и назвал ее test. И просто не знаю что делать дальше. Понятное дело что нужно использовать random и цикл. Но как?
PEHDOM
както так:
 import random
d = dict(one = 'один', two = 'два',three = 'три',four = 'четыре', five = 'пять')
count=0 # счетчик правильных ответов
total = 3 # сколько задаем вопросов
tempList = [] # список слов которые уже задавли, чтобы избежать повтора слов при одном тестировании
for i in range(total):
    while True: # тут мы случайно выбираем слово из словаря, 
        key = random.choice(list(d.keys()))
        if key not in tempList: #Если такое слово уже задавали, еще раз выбираем
              tempList.append(key)
              break
    result = input('Переведи: "{}"'.format(key))
    if result == d[key]:
        count += 1
print('Правильных ответов: {} из {}'.format(count, total))
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB