Python - удалить все из текстового файла - PullRequest
0 голосов
/ 05 ноября 2018

У меня есть текстовый файл, который содержит следующие данные:

't''h''i''s''i''s''a''t''e''s''t''f''o''r''s''t''a''c''k''o''v''e''r''f''l''o''w'

Я хочу прочитать файл и удалить все ' s, чтобы конечный результат выглядел так:

thisisatestforstackoverflow

Я не знаю, нужно ли вам записывать в другой файл или вы можете просто изменить текущий, но я попытался сделать это с replace(), и я не смог заставить его работать. Если кто-то может написать небольшой код, чтобы показать мне, как это работает, я буду признателен за это!

Ответы [ 3 ]

0 голосов
/ 05 ноября 2018

Мне нравятся эти служебные функции:

def string_to_file(string, path):
    with open(path, 'w') as f:
        f.write(string)


def file_to_string(path):
    with open(path, 'r') as f:
        return f.read()

С этими ответами становится:

string_to_file(file_to_string(path).replace("'", ""), path)
0 голосов
/ 05 ноября 2018
import re 
string = 't''h''i''s''i''s''a''t''e''s''t''f''o''r''s''t''a''c''k''o''v''e''r''f''l''o''w'
s = re.findall(r"[^']", string)

Это вернет список:

C:\Users\Documents>py test.py
['t', 'h', 'i', 's', 'i', 's', 'a', 't', 'e', 's', 't', 'f', 'o', 'r', 's', 't', 'a', 'c', 'k', 'o', 'v', 'e', 'r', 'f', 'l', 'o', 'w']

и с этим можно делать что угодно.
Как:

''.join(s)

выход:

C:\Users\Documents>py test.py
thisisatestforstackoverflow
0 голосов
/ 05 ноября 2018

вот вам ответ:

str = 't''h''i''s''i''s''a''t''e''s''t''f''o''r''s''t''a''c''k''o''v''e''r''f''l''o''w'
str.replace("'", "")
print(str)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...