В python строка является неизменной. Более того, когда вы делаете line[1562] = bre
, вы пытаетесь присвоить строку (bre
) символу (line[1562]
) в другой. К счастью, в python это очень просто решить. Хороший способ сделать это - объединить все предыдущие строки line
с bre
и после line
строки. В конце концов вы назначаете это var line
. Что-то вроде
line = line[:1562] + bre + line[1563:]
Но обратите внимание, когда вы делаете это, ваши строки внутри data
объекта не меняются. Вы просто меняете его копию. Если вы хотите прочитать строки файла, а затем записать его в файл, вам нужно сделать что-то вроде
i = 0
bre = 'newtext'
with open(myfile, "r") as f:
data = f.readlines()
for x,line in enumerate(data):
if i > 0 and line[98] == '1':
print 'ok'
data[x] = line[:1562] + bre + line[1563:]
i += 1
with open(new_file, 'w') as f
for line in data:
f.write(data)