Форум сайта python.su
Добрый день!
Есть программа для работы с файлами (Чтение из файла, запись в файл, удаление строк и т.д):
import sys import os import re ## Чтение данных с файла (полностью) def read_file_full(): file = open("fileswot.txt") print(file.read() + "\n") file.close() menu() ## Чтение данных с файла (по - строчно) def read_file_line(): file = open("fileswot.txt") print(file.readline()) file.close() menu() ## Перезаписать данные в файл def record_file(): file = open('fileswot.txt', 'w') try: stroka = input('Введите строку для записи в файл: ') file.write(stroka + "\n") finally: file.close() menu() ## Очистка файла def clearing_file(): file = open('fileswot.txt', 'r') os.system(r'nul>fileswot.txt') file.close() menu() ## Дописать данные в файл def record_fileplus(): file = open('fileswot.txt', 'a') try: stroka = input('Введите строку для записи в файл: ') file.write(stroka + "\n") finally: file.close() menu(aut) ## Поиск значений def search_file(): file = open("fileswot.txt", "r") data = file.read() pl = data.count("+") mi = data.count("-") if pl > mi: return ("Use a breakthrough strategy or a transition strategy № 1") menu(aut) elif pl < mi: return ("Use transition strategy № 2 or survival strategy") menu(aut) else: return ("Error - Equal number of values") menu(aut) ## Удаление строки в файле def delstr_file(): n = int(input("Введите номер строки для удаления: ")) with open(r"fileswot.txt", "r") as file: lines = file.readlines() del lines[n] with open(r"fileswot.txt", "w") as file: file.writelines(lines) menu(aut) ## Создание меню на удаление def menu_del(aut): print("1. Безвозвратно удалить данные") print("2. Вернутся в меню") H = (input("Выберите действие: ")) if H == aut[2]: clearing_file() elif H == aut[3]: menu(aut) else: return ("Error - The selected parameter is not in the menu") menu_del(aut) ## Создание меню на чтение def menu_read(aut): print("1. Прочитать информацию полностью") print("2. Прочитать информацию по - строчно") B = (input("Выберите действие: ")) if B == aut[2]: read_file_full() elif B == aut[3]: read_file_line() else: return ("Error - The selected parameter is not in the menu") menu_read(aut) ## Создание меню на выход def menu_exit(aut): print("1. Выйти") print("2. Вернутся в меню") J = (input("Выберите действие: ")) if J == aut[2]: sys.exit(0) elif J == aut[3]: menu(aut) else: return ("Error - The selected parameter is not in the menu") menu_exit(aut) ## Создание меню def menu(aut): print("1. Прочитать информацию с файла") print("2. Записать информацию в файл") print("3. Дописать информацию в файл") print("4. Очистить данные файла") print("5. Удалить строку в файле") print("6. Выполнить поиск по значениям") print("7. Выход из программы") A = (input("Выберите действие: ")) if A == aut[2]: menu_read(aut) elif A == aut[3]: record_file() elif A == aut[4]: record_fileplus() elif A == aut[5]: menu_del() elif A == aut[6]: delstr_file() elif A == aut[7]: search_file() elif A == aut[8]: menu_exit() else: return ("Error - The selected parameter is not in the menu") menu(aut) def autoriz(aut): Login = aut[0] Password = aut[1] a = input("Enter your username: ") if a != Login: return ("Error - Invalid login was entered") else: return ("The login was entered correctly") b = input("Enter your password: ") if b != Password: return ("Error - Invalid password was entered") else: return ("Select the desired action:") menu(aut) ## Авторизация пользователя def main(): aut = ['Admin', 'Qwerty', '1', '2', '3', '4', '5', '6', '7'] Login = aut[0] Password = aut[1] a = input("Enter your username: ") if a != Login: return ("Error - Invalid login was entered") else: print("The login was entered correctly") b = input("Enter your password: ") if b != Password: return ("Error - Invalid password was entered") else: return ("Select the desired action:") menu(aut) if __name__=='__main__': main()
import unittest from unittest import TestCase, main from KP import read_file_full, read_file_line, record_file, clearing_file, record_fileplus, search_file, delstr_file, menu_del, menu_read, menu_exit, autoriz class KP_Test(TestCase): def authorization (self): aut = ['Admin'] self.assertEqual(autoriz(aut), "The login was entered correctly") if __name__ == '__main__': main()
Прикреплённый файлы:
Error.jpg (22,4 KБ)
Офлайн
ArifuretaКуча ошибок у тебя. Ты не пробовал сначала почитать что-нибудь по тестам, прежде чем наугад пытаться что-то сделать?
Так же вторая программа создана для реализации тестов с использованием unittest, но при использовании self.assertEqual выдается ошибка, что тестов 0.
Отредактировано py.user.next (Апрель 12, 2022 13:29:52)
Офлайн