我有一个连接到数据库的小应用程序。 我可以使用raw_input插入数据,然后我选择查询以返回一些结果作为报告。
这是代码段:
if user_input == 'Y':
cursor.execute(SQLCommand, Values)
cursor.execute(SQLCommand1)
result = cursor.fetchall()
print 'The total costs until now are '
print result
这是输出:
The total costs until now are
[(2061.1, )]
我只需要查看数字,没有任何特殊字符。我应该使用pprint吗?
由于
答案 0 :(得分:5)
输出中的[]
表示result
是一个列表。在列表中,()
表示列表中的单个元素是元组。如果您不熟悉列表和元组,那么您肯定需要在官方Python教程中阅读它们。这些是Python编程的基础。
您可以通过两种方式获得所需的结果。
按行和列位置编制索引:
print result[0][0]
按行位置和列名称索引:
print result[0]['total']
注意强>
如果您知道只会从查询中获得一行,那么您也可以使用fetchone()
代替fetchall()
:
result = cursor.fetchone()
print result['total']
答案 1 :(得分:2)
看起来返回的result
是包含单个元组([]
)的列表(()
)。因此,索引到列表然后是元组以获得所需的值:
print result[0][0]