Я пытаюсь добавить данные в файл. Каждая строка записывается внутри функции. Ниже приведен пример кода на основе моего фактического кода:Добавить данные в конец файла в python
a = 0
def data():
global a
a = int(raw_input('Enter value for a\n>'))
write()
def write():
f = open('path\\to\\file.txt', "a")
f.write('%s\n' % a)
f.close
proceed()
def proceed():
should = raw_input('Please press enter to continue or type in 0 to stop\n>')
if should == '0':
return
else:
data()
data()
Когда я запускаю код и дать, например, 1, 2 and 3
как значения для а, вот как это будет записано в файл:
3
2
1
Но я хочу, чтобы записать в файл таким образом:
1
2
3
что бы правильный способ сделать это? Как добавить новую строку в конце файла каждый раз, когда я запускаю функцию write
?
'f.close' не закрывает файл! и использование глобальных данных для передачи данных не рекомендуется. Используйте параметры. И, наконец, я действительно не понимаю, почему вы получаете этот результат. append mode не может вернуть порядок строк, это не имеет смысла. –
@ Jean-FrançoisFabre Большое спасибо. Получил это, чтобы работать. – rsnaveen
@ Jean-FrançoisFabre Вот что я тоже не понял. Даже если файл не был закрыт, не следует добавлять файлы всегда в конец файла? – rsnaveen