свой генератор текстов из фраз
и вот пришел к этому довольно простому и понятному коду
здесь в папке с программой вы можете разместить набор текстов
*.txt utf-8 - той тематики которая вам собственно нужна
чем больше текстов - тем наверно лучше для содержания вывода
потом вводите любую фразу и программа ищет фразы
в которых есть либо пары ключевых слов что вы ввели -
либо если их нет то одиночные слова
можно изменить этот код так что будет поиск по корням слов
данный код выводит по 10 фраз с вашими словами ввода
конечно этот код можно доработать - сделать поиск фраз более релевантным
или избирательным - если вы этого хотите то наверно сделаете сами
но в принципе для начала он может вам пригодиться для поиска нужных фраз
среди большого набора ваших текстов ..
import os
import random
def load_texts_from_folder(folder_path):
texts = []
for filename in os.listdir(folder_path):
if filename.endswith('.txt'):
with open(os.path.join(folder_path, filename), 'r', encoding='utf-8') as file:
texts.extend(file.readlines())
return texts
def find_lines_with_phrase(texts, phrase):
words = phrase.split()
pairs = [(words[i], words[i+1]) for i in range(len(words) - 1)]
found_lines = set() # множество для уникальных строк
for line in texts:
for pair in pairs:
if f"{pair[0]} {pair[1]}" in line:
found_lines.add(line.strip())
break # Прекращаем проверку, если нашли пару в строке
return list(found_lines) # Преобразуем множество обратно в список
def find_lines_with_keywords(texts, keywords):
found_lines = set() # Используем множество для уникальных строк
for line in texts:
for keyword in keywords:
if keyword in line:
found_lines.add(line.strip())
break # Прекращаем проверку, если нашли ключевое слово в строке
return list(found_lines) # Преобразуем множество обратно в список
def main():
folder_path = '.' # путь к папке с текстовыми файлами
texts = load_texts_from_folder(folder_path)
while True:
phrase = input("Ввод фразы: ")
if phrase.lower() == 'exit':
break
lines_with_phrase = find_lines_with_phrase(texts, phrase)
if lines_with_phrase:
# Если найдены строки с парами слов
output_lines = random.sample(lines_with_phrase, min(10, len(lines_with_phrase)))
else:
# Если пары не найдены, ищем по ключевым словам
keywords = phrase.split()
lines_with_keywords = find_lines_with_keywords(texts, keywords)
output_lines = random.sample(lines_with_keywords, min(10, len(lines_with_keywords)))
print("\n" )
for line in output_lines:
print(line)
print("\n" )
if __name__ == "__main__":
main()
пример вывода фраз:
Ввод фразы: это можно понять так просто почти без слов
не так просто конечно вот - исправь это как то чтобы стало понятней всем
вот когда ты думаешь что всё так просто - то мы получаем слишком непонятные фразы ни о чём
не так просто нам нужно просто это осознать и воспроизвести как люди это уже
в каждом конкретном случае это можно понимать по-разному
это видимо не так просто как кажется
сложность простой мысли бывает не так просто - так как в ней может быть
парадокс информации больших чисел - человек всё знает изначально - Однако данных так много что нам трудно это всё осознать.
Поэтому мы и создали эти программы и компьютеры.
Теперь нам предстоит научиться ими правильно пользоваться. И это всё не так просто как можно подумать.
Это всё весьма сложные и продвинутые технологии будущего эволюции нашей планеты и нашего разума молекул, частиц и их голограмм
В мире много чего происходит такого, что не так просто объяснить - кризисы, войны,
наверное это довольно просто - но не сразу это можно понять
в это поверить здесь это наверно похожая фраза - правда не сразу можно понять
Ввод фразы: это наше будущее которое мы хотим видеть сегодня
тогда скажи что мы хотим в этом найти
С каждым решением, которое мы принимаем, мы открываем новые горизонты, расширяя границы нашего мира. Мы не просто наблюдатели; мы - активные участники, рисующие кистями своих действий на полотне времени.
В этом новом порядке важно помнить о внутреннем балансе, о том, как сохранить гармонию между технологическим прогрессом и жизнью, полной смысла. Каждый разговор, каждая встреча может стать искоркой, пробуждающей мысли о том, каким мы хотим видеть наше будущее. Let's explore together the intricate fabric of our existence, where every thread counts and every voice matters.
здесь жизнь и есть то ключевое слово которое мы искали в тексте
уровня человека. а что мы хотим понять из того что нам не известно -
будем исследовать данный случай, мы найдём, что в это наше желание встроена жажда его
Если мы хотим кому-то передать информацию, её нужно сначала закодировать ( устными словами, жестами, мимикой или символами – написанными от руки, напечатанными и т.д., хоть азбукой Морзе
и затем послать сообщение по каналу передачи ( звуковыми волнами по воздуху, фотонами видимого света, электрическими импульсами по телефонной линии, радиоволнами по спутниковой связи, через интернет и так далее ), причём желательно без ошибок, а получатель должен обработать информацию ( не просто услышать или увидеть, но и расшифровать, понять, принять к сведению ) и как-то прореагировать (- ответить, запросить уточнение, проигнорировать и так далее по смыслу содержания
никто ничего не оспаривает - мы хотим только понять - возможно ли общаться с компьютером также как с человеком ? - либо это просто миф который придумали программисты
событие, которое мы просто не можем отследить и воспринимать во всей его сложности и
это во многом понятно - но в то же время слишком простое и поверхностное представление того что мы хотим узнать из этого
Свидетельство о публикации №125042301160