Помогите пожалуйста с задачами на пайтон

1. Поиск и замена слов списка в содержимом бинарного файла

2. Подсчет количества слов и чисел(по отдельности) в содержимом бинарного файла


3. Вывести слова спрятанные за ключами в словае в содержимом бинарном файле

4. Напишите информационную систему «Сотрудники». Программа должна обеспечивать ввод данных, редактирование данных сотрудника, удаление сотрудника, поиск сотрудника по фамилии, вывод информации обо всех сотрудниках, указанного возраста, или фамилия которых начинается на указанную букву. Организуйте возможность сохранения найденной информации в файл. Также весь список сотрудников сохраняется в файл (при выходе из программы — автоматически, в процессе исполнения программы — по команде пользователя). При старте программы происходит загрузка списка сотрудников из указанного пользователем файла


5. Создайте репозиторий в гитхабе, загрузите в него все ваши выполненные домашние задания,
в качестве результат пошлите ссылку на репозиторий с файлами домашних заданий

Ответы

Ответ дал: IamSTAYreD
0

Ответ:

1. Пример кода для поиска и замены слов:

```python

# Открываем бинарный файл в режиме "чтение и запись"

with open('file.bin', 'r+b') as file:

    # Читаем полный текст из файла

    text = file.read()

    # Создаем список слов для замены

    replace_words = ['word1', 'word2', 'word3']

    # Проходимся по списку и заменяем каждое слово в тексте на новое

    for word in replace_words:

        text = text.replace(word.encode(), b'new_word')

    # Перемещаем указатель в начало файла и записываем измененный текст

    file.seek(0)

    file.write(text)

```

2. Пример кода для подсчета количества слов и чисел в содержимом бинарного файла:

```python

# Открываем бинарный файл в режиме "чтение"

with open('file.bin', 'rb') as file:

    # Читаем полный текст из файла

    text = file.read()

    # Создаем множество символов, которые могут встречаться в числах

    digit_chars = set(b'0123456789.')

    # Разбиваем текст на слова

    words = text.split()

    # Считаем количество слов и чисел

    n_words = 0

    n_numbers = 0

    for word in words:

        # Проверяем, является ли слово числом

        is_number = True

        for char in word:

            if char not in digit_chars:

                is_number = False

                break

        # Увеличиваем соответствующий счетчик

        if is_number:

            n_numbers += 1

        else:

            n_words += 1

    # Выводим результаты

    print('Количество слов:', n_words)

    print('Количество чисел:', n_numbers)

```

3. Пример кода для поиска слов, спрятанных за ключами в содержимом бинарного файла:

```python

# Открываем бинарный файл в режиме "чтение"

with open('file.bin', 'rb') as file:

    # Читаем полный текст из файла

    text = file.read()

    # Создаем множество символов, которые могут встречаться в ключах

    key_chars = set(b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')

    # Разбиваем текст на слова

    words = text.split()

    # Проходимся по каждому слову

    for word in words:

        # Проверяем, начинается ли слово с ключа (только буквы)

        if word.startswith(b'#'):

            key = word[1:]

            is_key = True

            for char in key:

                if char not in key_chars:

                    is_key = False

                    break

            # Если ключ найден, выводим следующее слово

            if is_key:

                index = words.index(word)

                if index < len(words) - 1:

                    print(words[index + 1])

```

4. Пример кода для информационной системы сотрудников:

```python

import pickle

class Employee:

    def __init__(self, name, surname, age, position):

        self.name = name

        self.surname = surname

        self.age = age

        self.position = position

class EmployeeSystem:

    def __init__(self, file_path):

        self.file_path = file_path

        self.employees = []

    def load(self):

        # Если файл существует, загружаем список сотрудников из него

        try:

            with open(self.file_path, 'rb') as file:

                self.employees = pickle.load(file)

        except:

            pass

    def save(self):

        # Сохраняем список сотрудников

Объяснение:

Вас заинтересует