К ОП,
Метод Росса Паттерсона, описанный выше, прекрасно работает для меня, т. Е.
infile = "messy_data_file.txt"
outfile = "cleaned_file.txt"
delete_list = ["word_1", "word_2", "word_n"]
fin = open(infile)
fout = open(outfile, "w+")
for line in fin:
for word in delete_list:
line = line.replace(word, "")
fout.write(line)
fin.close()
fout.close()
Пример:
У меня есть файл с именем messy_data_file.txt, который включает следующие слова (животные), не обязательно в одной строке. Как это:
Goat
Elephant
Horse Donkey Giraffe
Lizard
Bird
Fish
Когда я изменяю код для чтения (фактически просто добавляя слова для удаления в строку «delete_list»):
infile = "messy_data_file.txt"
outfile = "cleaned_file.txt"
delete_list = ["Donkey", "Goat", "Fish"]
fin = open(infile)
fout = open(outfile, "w+")
for line in fin:
for word in delete_list:
line = line.replace(word, "")
fout.write(line)
fin.close()
fout.close()
Результирующий «cleaned_file.txt» выглядит так:
Elephant
Horse Giraffe
Lizard
Bird
Есть пустая строка, где раньше был "Козел" (где, как ни странно, удаление "Осла" не было), но для моих целей это прекрасно работает.
Я также добавляю input («Нажмите Enter, чтобы выйти ...») в самом конце кода, чтобы окно командной строки не открывалось и не захлопывало меня, когда я дважды щелкните файл remove_text.py, чтобы запустить его, но учтите, что при этом вы не обнаружите ошибок.
Для этого я запускаю его из командной строки (где C: \ Just_Testing - это каталог, в котором находятся все мои файлы, то есть, remove_text.py и messy_text.txt)
как это:
C:\Just_Testing\>py remove_text.py
или
C:\Just_Testing>python remove_text.py
работает точно так же.
Конечно, как и при написании HTML, я полагаю, что никогда не помешает использовать полный путь при запуске py или python не из каталога, в котором вы находитесь, например:
C:\Windows\System32\>python C:\Users\Me\Desktop\remove_text.py
Конечно, в коде это будет:
infile = "C:\Users\Me\Desktop\messy_data_file.txt"
outfile = "C:\Users\Me\Desktop\cleaned_file.txt"
Будьте осторожны, используя тот же полный путь, чтобы поместить вновь созданный файл cleaned_file.txt, иначе он будет создан, где бы вы ни находились, и это может вызвать путаницу при его поиске.
Лично у меня есть переменная PATH в моих переменных среды, установленная для указания на все мои установки Python, то есть C: \ Python3.5.3, C: \ Python2.7.13 и т. Д., Поэтому я могу запускать py или python из любого места.
В любом случае, я надеюсь, что точная настройка этого кода мистером Паттерсоном поможет вам получить именно то, что вам нужно. :)
.