Генераторы словарей и модули Рython
Функции в языке Python Функции в языке PythonВсе функции в языке Python возвращают какое-либо значение, хотя вполне возможно (и часто так и делается) просто игнорировать это значение. Возвращаемое значение может быть единственным значением или кортежем значений,...
Реализация генераторов Реализация генераторовМы рассмотрели коллекции-последовательности, tuple, collections, na-medtuple и list, поддерживающие, как и строки, возможность извлечения срезов. Также было рассмотрено использование оператора распаковывания...
Парсинг документов XML Парсинг документов XMLXML: Для парсинга документов XML широко используются два основных подхода. Один из них основан на анализе DOM (Document Object Model -объектная модель документа), а другой - на использовании SAX (Simple API for XML - упрощенный...
Копирование коллекций Копирование коллекцийКопирование коллекций: Поскольку в языке Python повсюду используются ссылки на объекты, когда выполняется оператор присваивания (=), никакого копирования данных на самом деле не происходит. Если справа от оператора находится литерал,...
Возможности для пользователя
Если список содержит один или более элементов, строки из списка должны выводиться пронумерованными, начиная с 1, а из доступных действий должны быть предложены варианты "Add" (добавить), "Delete" (удалить), "Save" (сохранить) (если файл еще не сохранялся) и "Quit" (выйти). Если пользователь выбирает действие "Quit" и при этом имеются несохра-ненные изменения, ему должна быть предоставлена возможность сохранить их. Функция main должна быть не очень большой (не более 30 строк) и должна содержать только основной цикл программы.

Напишите функцию, которая будет получать имя нового или существующего файла (и в последнем случае загружать элементы списка), и функцию, которая будет выводить перечень доступных действий и принимать выбор пользователя. Напишите также функции, которые будут добавлять элемент, удалять элемент, выводить список (либо имен файлов, либо элементов списка строк), загружать список и сохранять список. Вставьте в свою программу копии функций get_string и geti_integer из программы make_html__skeleton.py или напишите свои собственные версии.

При выводе элементов списка строк или имен файлов ширина поля для вывода номеров строк должна быть равна 1, если список содержит менее десяти элементов, 2 - если в списке менее 100 элементов и 3 -в противном случае. Всегда выводите элементы списка в алфавитном порядке, без учета регистра символов, и следите за состоянием списка (за наличием несохраненных изменений).

Действие "Save" должно предлагаться только при наличии несохраненных изменений, а перед выходом программа должна спрашивать у пользователя, не желает ли он сохранить изменения, только если таковые имеются. Добавление и удаление элементов считаются действиями, которые изменяют список, а после выполнения операции сохранения список снова должен считаться неизмененным. Пример решения находится в файле Listkeeper.py и занимает менее 200 строк программного кода.
Навигация: 1 2 3
 
 
© Copyright