Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 25, 2021 20:57:05

utyara3
Зарегистрирован: 2021-07-12
Сообщения: 30
Репутация: +  0  -
Профиль   Отправить e-mail  

Работа с файлами

Не знаю как и через какую библиотеку сделать программу, которая будет из текстового документа удалять СТРОКУ с пробелом, но /n остается. Например: Есть ткстшник g.txt. И в нем много строк, как бы на след строке написано след слово, программа ищет строку, в которой есть пробел, и удаляет НЕ ПРОБЕЛ, А ВСЮ СТРОКУ ВМЕСТЕ С ПРОБЕЛОМ. Надеюсь кто нибудь отзовется.У меня есть варианты, но код будет большой и работать скорее всего не будет. Есть же способы. Библиотека re? Только я ее не изучал.

Отредактировано utyara3 (Дек. 25, 2021 20:57:50)

Офлайн

#2 Дек. 25, 2021 21:48:17

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Работа с файлами

Читаете файл, разбиваете прочитанное на строки, записываете строки назад в файл, исключая ненужную строку



Офлайн

#3 Дек. 25, 2021 23:11:51

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1308
Репутация: +  112  -
Профиль   Отправить e-mail  

Работа с файлами

выложите файл txt и напишите что на выходе должно получиться

Офлайн

#4 Дек. 26, 2021 00:32:37

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9716
Репутация: +  842  -
Профиль   Отправить e-mail  

Работа с файлами

utyara3
Есть ткстшник g.txt. И в нем много строк, как бы на след строке написано след слово, программа ищет строку, в которой есть пробел, и удаляет НЕ ПРОБЕЛ, А ВСЮ СТРОКУ ВМЕСТЕ С ПРОБЕЛОМ.
Ты капсом не пиши, используй тег b , который жирным выделяет (bold).

Может быть, пришло время узнать про программы grep, sed и awk, а потом и перейти с Windows на Linux?

Вот файл с пробелами в некоторых строках и три разных программы, которые удаляют строки с пробелом, а строки без пробелов оставляют
[guest@localhost sh]$ cat file.txt 
abcd1
abcd2
ab cd3
abcd4
abc d5
a bcd6
abcd7
[guest@localhost sh]$ sed '/ /d' file.txt
abcd1
abcd2
abcd4
abcd7
[guest@localhost sh]$ grep -v ' ' file.txt
abcd1
abcd2
abcd4
abcd7
[guest@localhost sh]$ awk '!/ /{ print; }' file.txt
abcd1
abcd2
abcd4
abcd7
[guest@localhost sh]$
Этими программами можно делать гораздо больше всяких вещей, естественно. Они даже в Windows ставятся. Но лучше с Windows на Linux перейти, потому что там их ставить не придётся; им по сорок лет, они во всех Linux'ах и *nix'ах есть.



Отредактировано py.user.next (Дек. 26, 2021 00:34:21)

Офлайн

#5 Дек. 26, 2021 21:46:51

utyara3
Зарегистрирован: 2021-07-12
Сообщения: 30
Репутация: +  0  -
Профиль   Отправить e-mail  

Работа с файлами

xam1816
выложите файл txt и напишите что на выходе должно получиться
Например:
Было:
какой-тоТекст1
какой-тоТекст2
какой-тоТекст3
какой-тоТекст4
какой-то Текст12
какой-тоТекс т13
какой-тоТе кст14
Стало:
какой-тоТекст1
какой-тоТекст2
какой-тоТекст3
какой-тоТекст4

Офлайн

#6 Дек. 27, 2021 07:00:52

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1308
Репутация: +  112  -
Профиль   Отправить e-mail  

Работа с файлами

 text = """какой-тоТекст1
какой-тоТекст2
какой-тоТекст3
какой-тоТекст4
какой-то Текст12
какой-тоТекс т13
какой-тоТе кст14"""
str_lst = text.splitlines()
out = filter(lambda s: ' ' not in s, str_lst)
print('\n'.join(out))

вывод
 какой-тоТекст1
какой-тоТекст2
какой-тоТекст3
какой-тоТекст4
Process finished with exit code 0

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version