Python 2.7.11将输出写入文本文件

Saf*_*ter 3 python python-2.7

我是python的新手,我想弄清楚如何将结果写入文本文件.这是我的代码:

from os import getenv
import sqlite3

conn = sqlite3.connect(getenv("APPDATA") + "\..\Local\...sanitized")
conn3 = sqlite3.connect(getenv("APPDATA") + "\..\Local\...sanitized")
conn1 = sqlite3.connect(getenv("APPDATA") + "\..\Local\...sanitized")
cursor3 = conn3.cursor()
cursor1 = conn1.cursor()
cursor = conn.cursor()
cursor.execute('SELECT ...sanitized')
for result in cursor.fetchall():
    ...sanitized
    if password:
        print "Site: " + result[0]
        print 'Username: ' + result[1]
        print 'Password: ' + password
        print '---------------------------------------------'
cursor3.execute("...sanitized") 
print("fetchall:")
result = cursor3.fetchall() 
for r in result:
    print(r)

cursor1.execute("...sanitized") 
print("fetchall:")
result = cursor1.fetchall() 
for r in result:
    print(r)
Run Code Online (Sandbox Code Playgroud)

我在代码的开头尝试了f = open('output.txt')并放置了

f.write(r) # and I tried 
f.write(result) # after defining it near bottom as these are my variables 
f.close()# :(
Run Code Online (Sandbox Code Playgroud)

回溯说它期待一个字符串?

有人可以帮助解释印刷品应该进入什么(这里)?我试图掌握这些概念,但还没有完全理解

谢谢

ode*_*e2k 7

首先,您要确保打开文件进行编写:

f=open("output.txt","w")
Run Code Online (Sandbox Code Playgroud)

然后你可以使用:

for r in result:
    print >> f, r
Run Code Online (Sandbox Code Playgroud)

在脚本结束时,请确保使用:

f.close()
Run Code Online (Sandbox Code Playgroud)

或者,您可能需要将您r转换为字符串print >> f, str(r)