частота уникальных слов в тексте по числу букв
with open('фразы1.txt', 'r', encoding='utf-8') as file:
text = file.read()
# Разделяем текст на слова и создаем множество уникальных слов
words = set(text.split())
# Инициализируем счетчики для каждой категории
count_dict = {3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 8: 0}
# Подсчитываем количество уникальных слов по категориям
for word in words:
length = len(word)
if length in count_dict:
count_dict[length] += 1
# Подсчитываем общее количество уникальных слов
total_unique_words = len(words)
# Выводим результаты
print(f"Общее количество уникальных слов: {total_unique_words}")
for length in range(3, 9):
print(f"Количество уникальных слов длиной {length} букв: {count_dict[length]}")
=>>
Общее количество уникальных слов: 67057
Количество уникальных слов длиной 3 букв: 1011
Количество уникальных слов длиной 4 букв: 2404
Количество уникальных слов длиной 5 букв: 4561
Количество уникальных слов длиной 6 букв: 6856
Количество уникальных слов длиной 7 букв: 8413
Количество уникальных слов длиной 8 букв: 9004
# Общее количество уникальных слов
total_unique_words = 67057
# Словарь с количеством уникальных слов по длине
count_dict = {
3: 1011,
4: 2404,
5: 4561,
6: 6856,
7: 8413,
8: 9004
}
# Выводим результаты с процентами
print(f"Общее количество уникальных слов: {total_unique_words}")
for length in range(3, 9):
count = count_dict[length]
percentage = (count / total_unique_words) * 100
print(f"Количество уникальных слов длиной {length} букв: {count} ({percentage:.2f}%)")
=>>
Общее количество уникальных слов: 67057
Количество уникальных слов длиной 3 букв: 1011 (1.51%)
Количество уникальных слов длиной 4 букв: 2404 (3.58%)
Количество уникальных слов длиной 5 букв: 4561 (6.81%)
Количество уникальных слов длиной 6 букв: 6856 (10.23%)
Количество уникальных слов длиной 7 букв: 8413 (12.55%)
Количество уникальных слов длиной 8 букв: 9004 (13.41%)
from collections import Counter
import re
def count_word_repeats_from_file(file_path):
# Читаем текст из файла
with open(file_path, 'r', encoding='utf-8') as file:
text = file.read()
# Убираем знаки препинания и разбиваем текст на слова
words = re.findall(r'\b\w+\b', text.lower())
# Считаем количество повторов слов
word_counts = Counter(words)
# Словарь для хранения количества повторов по длине слов
length_counts = {length: 0 for length in range(3, 10)}
# Считаем повторы для каждой длины
for word, count in word_counts.items():
length = len(word)
if length in length_counts:
length_counts[length] += count
# Определяем среднее количество повторов
total_repeats = sum(length_counts.values())
total_unique_words = sum(1 for count in word_counts.values() if count > 0)
# Выводим результаты
print("Количество повторов по длине слов:")
for length, count in length_counts.items():
average_repeats = count / total_unique_words if total_unique_words > 0 else 0
print(f"Длина {length} букв: Общее количество повторов = {count}, Среднее количество повторов = {average_repeats:.2f}")
# Указываем путь к файлу
file_path = 'фразы1.txt'
# Запускаем функцию
count_word_repeats_from_file(file_path)
Количество повторов по длине слов:
Длина 3 букв: Общее количество повторов = 86071, Среднее количество повторов = 1.90
Длина 4 букв: Общее количество повторов = 51449, Среднее количество повторов = 1.14
Длина 5 букв: Общее количество повторов = 82346, Среднее количество повторов = 1.82
Длина 6 букв: Общее количество повторов = 70710, Среднее количество повторов = 1.56
Длина 7 букв: Общее количество повторов = 56916, Среднее количество повторов = 1.26
Длина 8 букв: Общее количество повторов = 47258, Среднее количество повторов = 1.04
Длина 9 букв: Общее количество повторов = 35461, Среднее количество повторов = 0.78
**
from collections import Counter
def count_word_repeats(input_text, text_to_search):
# Приводим текст к нижнему регистру и разбиваем его на слова
words = text_to_search.lower().split()
# Считаем количество повторов слов
word_counts = Counter(words)
# Выводим результаты для введенных слов
print("Количество повторов для введенных слов:")
for word in input_text:
print(f"Слово '{word}': {word_counts[word]} раз(а)")
def count_word_repeats_from_file(file_path):
# Читаем текст из файла
with open(file_path, 'r', encoding='utf-8') as file:
text = file.read()
return text
# Указываем путь к файлу
file_path = 'фразы1.txt'
# Читаем текст из файла
text_to_search = count_word_repeats_from_file(file_path)
# Ввод слов через пробел
input_text = input("Введите слова через пробел: ").lower().split()
# Подсчитываем повторы
count_word_repeats(input_text, text_to_search)
**
Введите слова через пробел: нам здесь нужно посчитать повтор некоторых слов
в нашем тексте который есть у нас так просто
Количество повторов для введенных слов:
Слово 'нам': 2658 раз(а)
Слово 'здесь': 1130 раз(а)
Слово 'нужно': 2046 раз(а)
Слово 'посчитать': 22 раз(а)
Слово 'повтор': 6 раз(а)
Слово 'некоторых': 140 раз(а)
Слово 'слов': 440 раз(а)
Слово 'в': 16351 раз(а)
Слово 'нашем': 483 раз(а)
Слово 'тексте': 70 раз(а)
Слово 'который': 738 раз(а)
Слово 'есть': 2269 раз(а)
Слово 'у': 1834 раз(а)
Слово 'нас': 1423 раз(а)
Слово 'так': 5540 раз(а)
Слово 'просто': 2142 раз(а)
def count_lines_and_words(file_path):
# Инициализируем счетчики
line_count = 0
word_count = 0
# Читаем текст из файла
with open(file_path, 'r', encoding='utf-8') as file:
for line in file:
line_count += 1 # Увеличиваем счетчик строк
word_count += len(line.split()) # Увеличиваем счетчик слов по количеству слов в строке
return line_count, word_count
# Указываем путь к файлу
file_path = 'фразы1.txt'
# Подсчитываем строки и слова
lines, words = count_lines_and_words(file_path)
# Выводим результаты
print(f"Количество строк в файле: {lines}")
print(f"Количество слов в файле: {words}")
**
Количество строк в файле: 33504
Количество слов в файле: 645511
Свидетельство о публикации №125031205644