Я создал программу Python, которая проверяет файлы в папке и возвращает список тех, которые заканчиваются на .txt. Теперь я хочу вывести это в файл. Вот мой код:Печать вывода, который представляет собой список имен файлов, в текстовый файл
import os
import os.path
import sys
f=open("E:\\test.txt",'w')
f.write('')
path=os.path.abspath("E:\\test")
def print_result():
print(name)
for root, dirs, files in os.walk(path):
for name in files:
if name.endswith(".txt"):
print_result()
Version 1:
alist=[print_name]
alist.append(print_result)
f=open("E:\\test.txt", 'a')
f.writelines(alist)
Version 2:
alist=name
alist.append(name)
f = open("E:\\test.txt",'a')
print (name)
Version 3:
frame=print_result
saveout = sys.stdout
fsock = open("E:\\test.txt", 'a')
sys.stdout = fsock
print (frame)
sys.stdout = saveout`enter code here`
As you can see i have tried diferent types. The thing is that i only get the following in the file, instead of the actual output list:
<function print_result at 0x004F6DB0>
Почему вы определяете функцию 'print_result', которая ничего не делает, кроме печати? Просто 'print (name)' вместо 'print_result()'. Просмотрели ли вы какой-либо учебник или документацию для ввода-вывода файлов? Все они помогут вам в этой основной задаче. – TigerhawkT3