поиск слов по первым буквам
задача для простой программы:
пользователь вводит буквы (префикс), и программа ищет в текстовом файле (.txt) все уникальные слова, которые начинаются с этого префикса, отбрасывая повторы. Это отличная идея для скрипта на Python! Я могу помочь тебе с примером кода. Давай разберёмся шаг за шагом и напишу простой скрипт.
Что делает программа:
Запрашивает у пользователя префикс (буквы).
Читает текст из файла (например, text.txt — ты можешь заменить на свой файл).
Находит все слова, начинающиеся с введённого префикса (без учёта регистра, если хочешь, но в примере я сделаю с учётом).
Убирает дубликаты (используя множество).
Выводит результат.
Пример кода на Python:
Вот простой скрипт. Сохрани его в файл, например, word_finder.py, и запусти с помощью Python (нужен Python 3+).
import re
# Функция для поиска слов по префиксу
def find_words_starting_with_prefix(file_path, prefix):
try:
# Открываем файл и читаем текст
with open(file_path, 'r', encoding='utf-8') as file:
text = file.read()
# Разбиваем текст на слова (используем регулярные выражения для учёта пунктуации)
words = re.findall(r'\b\w+\b', text)
# Преобразуем префикс в нижний регистр для сравнения
prefix_lower = prefix.lower()
# Находим уникальные слова, начинающиеся с префикса (без учёта регистра)
matching_words = set()
for word in words:
if word.lower().startswith(prefix_lower):
matching_words.add(word)
# Сортируем для удобства (опционально)
sorted_words = sorted(matching_words)
return sorted_words
except FileNotFoundError:
return f"Файл '{file_path}' не найден. Проверь путь к файлу."
except Exception as e:
return f"Ошибка: {e}"
# Основная часть программы
if __name__ == "__main__":
# Запрашиваем префикс у пользователя
prefix = input("Введите буквы (префикс): ").strip()
# Указываем путь к файлу (замени на свой)
file_path = 'text.txt' # Например, 'text.txt'
# Ищем слова
result = find_words_starting_with_prefix(file_path, prefix)
if isinstance(result, list):
if result:
print(f"Слова, начинающиеся с '{prefix}':")
for word in result:
print(f"- {word}")
else:
print(f"Слова, начинающиеся с '{prefix}', не найдены.")
else:
print(result)
Как использовать:
Подготовь файл: Создай файл text.txt в той же папке, что и скрипт, и заполни его текстом. Например:
Привет, мир! Это пример текста. Программа найдёт слова по префиксу.
Запусти скрипт: Открой терминал, перейди в папку с файлом и выполни python word_finder.py.
Введи префикс: Например, введи "пр" (на русском), и программа выведет уникальные слова вроде "Привет", "программа", "поищёт" (если они есть в тексте).
Дополнительные идеи:
Учёт регистра: В коде я сделал поиск без учёта регистра (.lower()), чтобы было удобнее. Если хочешь строго по регистру, удали .lower().
Обработка ошибок: Если файл не найден, программа сообщит об этом.
Улучшения: Можно добавить опцию выбора файла или сделать программу более гибкой (например, через аргументы командной строки).
Если текст большой: Для очень больших файлов это будет работать быстро, так как мы используем множества для уникальности.
Если тебе нужно что-то изменить, добавить функции (например, поиск по нескольким префиксам или экспорт результатов в файл), или если у тебя есть конкретный текст/файл — дай знать, я помогу доработать
Свидетельство о публикации №125101400891