import os def example(name_file): path = os.path.join(os.path.dirname(__file__), name_file) with open(path) as f1: data = [e + '.' + '\n' for e in f1.read().split('.')] with open(path, 'w') as f2: f2.write(''.join(data))
kowardлучше вот этого
data =
f1.read().replace('.', '\n')
kowardЭто ошибочное поведение - а что если вам передали не относительный путь, а абсолютный? Еррор
path = os.path.join(os.path.dirname(__file__), name_file)
JOHN_16JOHN_16 то что в конце каждой строки ставится точка, возможна она и не нужна пользователю, который создал этот топик
kowardужас, чем вот это
JOHN_16Полностью с вами согласен, будет ошибка. Подскажите как нужно было написать, возьму на заметку, я просто недавно начал изучать пайтон, еще не все тонкости знаю.
Это ошибочное поведение - а что если вам передали не относительный путь, а абсолютный? Еррор
f1.read().replace('.', '.\n')kowardда никак, это не проблема конкретно этой функции. Она принимает имя файла name_file и открывает файл с таким именем - а что в этой переменной - только имя файла, абсолютный или вообще сетевой путь не важно. Об этом должен заботиться тот кто вызывает эту функцию.
Подскажите как нужно было написать
import os with open('file.txt', 'rb') as fin, \ open('file.out', 'wb') as fout: fout.write(fin.read().replace(b'.', b'.\n')) os.remove('file.txt') os.rename('file.out', 'file.txt')
py.user.nextЯ бы подправил немного:
import os with open('file.txt', 'rb') as fin, \ open('file.out', 'wb') as fout: fout.write(fin.read().replace(b'.', b'.\n')) os.remove('file.txt') os.rename('file.out', 'file.txt')
PutenДа, забыл я.
Я бы подправил немного: