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

Сyberdick

Новичок
Пользователь
Окт 5, 2022
1
0
1
Я создал файл.txt и записал в него текст

Python:
import os

txt_file = r"C:\Users\Andrii\Desktop\work.txt"

try:
    if os.path.isfile(txt_file):
        print("File already exists")
    else:
        try:
            file_create = open(txt_file, 'w')
            print("The file has been succesfully created")
        except Exception as e:
            print("Failed to create file\n", e)
        finally:
            file_create.close()
except Exception as e:
    print("Failed to create file\n", e)

with open("work.txt", "w") as file:
    file.write("""
Et harum quidem rerum facilis est et expedita distinctio, nam libero tempore, cum soluta nobis est eligendi optio, cumque nihil impedit, quo minus id, quod maxime placeat, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Nemo enim ipsam voluptatem, qui in ea voluptate velit esse, quam nihil molestiae consequatur, vel illum, ut et voluptates repudiandae sint et molestiae non recusandae?
Ut enim ad minim veniam, quia voluptas sit, aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos, qui ratione voluptatem sequi nesciunt, neque porro quisquam est, nisi ut aliquid ex ea commodi consequatur.
Ut enim ad minima veniam, quia voluptas sit, aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos, qui ratione voluptatem sequi nesciunt, neque porro quisquam est, qui dolorem eum fugiat, quo voluptas nulla pariatur.
Excepteur sint occaecat cupidatat non proident, unde omnis iste natus error sit voluptatem accusantium doloremque...
""")
    
with open("work.txt", "r") as file:
    for line in file:
        print(line, end="")

input()

Нужно изменить в каждой строке файла заданную подстроку другой подстрокой. Ограничения: подстроки должны иметь разную длину.
Как это сделать?
 

penggrin

Новичок
Пользователь
Окт 5, 2022
2
0
1
file.readlines()
Отдает все строки с файла. Дальше думаю не проблема.
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 650
472
83
можно так
Python:
import os

txt_file = r"work.txt"

try:
    with open("work.txt", "w") as file:
        file.write("""Et harum quidem rerum facilis est et expedita distinctio, nam libero tempore, cum soluta nobis est eligendi optio, cumque nihil impedit, quo minus id, quod maxime placeat, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Nemo enim ipsam voluptatem, qui in ea voluptate velit esse, quam nihil molestiae consequatur, vel illum, ut et voluptates repudiandae sint et molestiae non recusandae?
Ut enim ad minim veniam, quia voluptas sit, aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos, qui ratione voluptatem sequi nesciunt, neque porro quisquam est, nisi ut aliquid ex ea commodi consequatur.
Ut enim ad minima veniam, quia voluptas sit, aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos, qui ratione voluptatem sequi nesciunt, neque porro quisquam est, qui dolorem eum fugiat, quo voluptas nulla pariatur.
Excepteur sint occaecat cupidatat non proident, unde omnis iste natus error sit voluptatem accusantium doloremque...
""")
except Exception as e:
    print("Failed to create file\n", e)
    os.exit(0)

old_string = "Ut enim ad minim"
new_string = "ASDASDASD"

with open("work.txt", "r") as f:
    file = f.read()

print(file)
file = file.replace(old_string, new_string)
print(file)

with open("work.txt", "w") as f:
    f.write(file)
 
  • Мне нравится
Реакции: Сyberdick

Форум IT Специалистов