Код Python не записывает в файл, если только он не запущен в интерпретаторе.

Я написал несколько строк кода на Python, чтобы посмотреть, смогу ли я заставить его читать текстовый файл, сделать из него список, где строки являются списками себя, а затем превратить все обратно в строку и записать ее как вывод в другой файл. Это может показаться глупым, но идея состоит в том, чтобы перетасовать элементы после их перечисления, и мне нужно сначала убедиться, что я могу правильно читать и писать. Это код :

import csv,StringIO

datalist = open('tmp/lista.txt', 'r')

leyendo = datalist.read()
separando = csv.reader(StringIO.StringIO(leyendo), delimiter = '\t')

macrolist = list(separando)

almosthere = ('\t'.join(i) for i in macrolist)

justonemore = list(almosthere)

arewedoneyet = '\n'.join(justonemore)

with open('tmp/randolista.txt', 'w') as newdoc:
    newdoc.write(arewedoneyet)

newdoc.close()
datalist.close()

. Кажется, он работает просто отлично, когда я запускаю его построчно в интерпретаторе, но когда я сохраняю его как отдельный скрипт Python и запускаю (myscript.py ), ничего не происходит. Выходной файл даже не создается. Посмотрев на подобные проблемы, поднятые здесь, я ввел параметр with (перед тем, как открыть выходной файл через output = open ()), я попытался сбросить, а также закрыть файл... Ничего не кажется работать. Автономный скрипт, кажется, мало что делает, но код не может быть слишком неправильным, если он работает на интерпретаторе, верно?

Заранее спасибо!

П.С. :Я новичок в Python и довольно плохо знаком с программированием, поэтому прошу прощения, если это связано с поверхностным пониманием базовой проблемы.

0
задан Jorge González 1 April 2012 в 09:23
поделиться