我正在尝试打印如下所示的数据,并将其导出为文本文件。我有与这些实例化对象相对应的表。
#ASSESSMENT
api = BaseAPI()
assessment1 = api.create_assessment('Situation Awareness', 'Developing better skills',u2, v3, category=[l,dm,tc,sa], element=[sa1,sa2,sa3,dm1,dm2,dm3,ct1,ct2,ct3,l1,l2,l3])
assessment2 = api.create_assessment('Decision-Making', 'better decisions', u1, v2, category=[l,dm,tc,sa], element=[sa1,sa2,sa3,dm1,dm2,dm3,ct1,ct2,ct3,l1,l2,l3])
assessment3 = api.create_assessment('Leadership', 'defining new leaders',u3, v1, category=[l,dm,tc,sa], element=[sa1,sa2,sa3,dm1,dm2,dm3,ct1,ct2,ct3,l1,l2,l3])我使用的查询方法是:
import sys
class Logger(object):
def __init__(self, filename="Default.log"):
self.terminal = sys.stdout
self.log = open(filename, "a")
def write(self, message):
self.terminal.write(message)
self.log.write(message)
sys.stdout = Logger('DataOutput.txt')
def analystview(object):
for a in self.session.query(Assessment).\
filter(Assessment.user_id==Assessment.user_id).\
filter(Assessment.name == Assessment.name).all():
for a in assessments:
print(a.name, a.text, a.user_id)
api = BaseAPI()
analystview(api)我在上面的代码中做错了什么,它没有打印查询的输出??
发布于 2015-08-11 00:41:53
此格式有效!然而,有没有更好的方法来处理输出呢?我的意思是,一种将查询输出到文本文件的更干净的方法?
#!/usr/bin/env python
import sys
import sqlite3
db = sqlite3.connect('some.db') # used sqlite3 to go through results/data
cur = db.cursor()
query = ("SELECT * FROM users")
lines = cur.execute(query)
data = cur.fetchall()
class Logger(object):
def __init__(self, filename="Default.log"):
self.terminal = sys.stdout
self.log = open(filename, "a")
def write(self, message):
self.terminal.write(message)
self.log.write(message)
sys.stdout = Logger('DataOutput.txt') #name of the text file
print(data) #has to be after the sys.stdout to print out resultshttps://stackoverflow.com/questions/31887589
复制相似问题