diff options
| author | Andrew <saintruler@gmail.com> | 2019-03-11 22:59:15 +0400 |
|---|---|---|
| committer | Andrew <saintruler@gmail.com> | 2019-03-11 22:59:15 +0400 |
| commit | 8916d790f44b95a60fd7ee3001c9e97b703f7ae0 (patch) | |
| tree | 0040bc04f6a99876cdfc329de73f006708367a97 /day1/task1/task1.py | |
| parent | e4efa35d3590000b9cd38769e324a07723fa79d1 (diff) | |
Очередное исправление первой задачи
Diffstat (limited to 'day1/task1/task1.py')
| -rw-r--r-- | day1/task1/task1.py | 40 |
1 files changed, 29 insertions, 11 deletions
diff --git a/day1/task1/task1.py b/day1/task1/task1.py index 61ab4cf..a763a97 100644 --- a/day1/task1/task1.py +++ b/day1/task1/task1.py @@ -1,19 +1,37 @@ import os +CHUNK_SIZE = 1024 + character = input('Введите один символ: ') -while len(character) > 1: +while len(character) != 1: character = input('Введите РОВНО один символ: ') path = os.path.join(os.getcwd(), 'task1_data.txt') -if not os.access(path, os.R_OK): - print('Файл "{}" не доступен для чтения'.format(path)) + + +try: + f = open(path) + +except FileNotFoundError as e: + exception_path = str(e).strip('[Errno 2] No such file or directory:')[1:-1] + print(f'"{exception_path}" не существует') + +except PermissionError as e: + exception_path = str(e).strip('[Errno 13] Permission denied:')[1:-1] + print(f'Файл "{exception_path}" не доступен для чтения/записи') + +except IsADirectoryError as e: + exception_path = str(e).strip('[Errno 21] Is a directory:')[1:-1] + print(f'"{exception_path}" является директорией') + else: - with open(path) as f: - data = f.read(1024) - i = data.count(character) - while data: - data = f.read(1024) - i += data.count(character) - - print('В данном файле {} символов "{}"'.format(i, character)) + data = f.read(CHUNK_SIZE) + i = data.count(character) + while data: + data = f.read(CHUNK_SIZE) + i += data.count(character) + + f.close() + + print(f'В данном файле {i} символов "{character}"') |