|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.09.2018, 06:54 | #1 |
Пользователь
Регистрация: 05.12.2017
Сообщений: 69
|
Python, работа с файлами
Здравствуйте.
Помогите пожалуйста. Задача: Дан файл, содержащий текст на английском языке. Найти слово, встречающееся только в одном предложении, или сообщить, что такого слова нет. Как решить? Код:
|
25.09.2018, 07:24 | #2 |
Пользователь
Регистрация: 05.12.2017
Сообщений: 69
|
Поделила текст на отдельные предложения и хотела загнать в список, где каждое слово разделено, но вот в список пока не получается.
Код:
Код:
|
25.09.2018, 08:04 | #3 |
Пользователь
Регистрация: 05.12.2017
Сообщений: 69
|
А как сделать чтобы выводились только те которые повторяются в тексте 1 раз?
Код:
|
25.09.2018, 21:49 | #4 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,330
|
Так думаю, что с помощью регулярных выражений нельзя определить сколько раз то или иное слово входит в предложение или записано в файле.
Предлагаю каждое предложение разбить на слова, создав список. Использовать полученный список для изготовления словаря, у которого ключ - слово из строки, а значение - список номеров строк, в которых встречается это слово. Далее несложно найти слово, которое встречается в строке или в файле один, два и более раз. У меня часть скрипта выглядит так: Код:
{'The': [1, 2, 3, 4, 5, 6, 7, 10, 13, 14], 'Olympic': [1, 7, 7, 11, 13, 14], 'Games': [1, 7, 10, 13, 14], 'have': [1], 'their': [1], 'own': [1], 'flag': [1, 2, 5], 'and': [1, 3, 3, 4, 11, 12, 15], 'motto': [1, 6], 'is': [2, 6, 7, 12], 'white': [2], 'with': [2], 'five': [2, 3], 'circles': [2, 3, 4], 'represent': [3], 'the': [3, 5, 6, 7, 7, 7, 7, 8, 9, 10, 10, 11, 11, 11, 11, 11, 13, 13, 14, 15, 15], 'continents': [3], 'of': [3, 5, 5, 6, 7, 7, 7, 8, 9, 10, 13], 'Africa': [3], 'Asia': [3], 'Australia': [3], 'Europe': [3], 'North': [3], 'South': [3], 'America': [3], 'are': [4], 'black': [4], 'blue': [4], 'green': [4], 'red': [4], 'yellow': [4], 'every': [5], 'country': [5], 'in': [5, 8, 9], ...} PS: Можно прочитать и весь файл, заменить все разделители пробелом, получить из такой длинной строки список. Использовать слова списка как ключи словаря, а значения - количество таких слов в файле.
Как-то так, ...
Последний раз редактировалось ViktorR; 25.09.2018 в 21:56. |
25.09.2018, 22:02 | #5 | |
Пользователь
Регистрация: 05.12.2017
Сообщений: 69
|
Цитата:
|
|
25.09.2018, 22:18 | #6 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,330
|
Мне нечем вам помочь, поскольку у меня WinPython и я работаю с IDLE.
Собственно я удивился, когда у вас вывелся пустой список, а у меня список из слов последней строки. С PyCharm я пока не сталкивался и его особенностей не знаю. Возможно, что там что то с выводом ... А что там за зелёная стрелочка слева от {'The': ... и стрелка вверх. Возможно, что строку вывода надо развернуть.
Как-то так, ...
Последний раз редактировалось ViktorR; 25.09.2018 в 22:21. |
28.09.2018, 00:54 | #7 |
Форумчанин
Регистрация: 24.01.2011
Сообщений: 774
|
Код:
a.k.a. Angelicos Phosphoros
Мой сайт |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
python и работа с git | polin11 | Python | 4 | 22.07.2018 16:56 |
Курсовая работа на Python | tarzan28 | Фриланс | 1 | 08.05.2017 17:15 |
Лабораторная работа(очень простая) Структуры, работа с файлами | yurda | Фриланс | 2 | 11.06.2016 08:44 |
Работа с файлами: запись, добавление, чтение (найти ошибку в коде) / C для начинающих Надо создать программу для работы с файлами | Konlor | Общие вопросы C/C++ | 2 | 18.05.2014 12:37 |