如何格式化PYODBC查询输出,仅显示字段内容而非元组格式?
解决PYODBC查询输出格式化问题
你的问题场景
你现在用PYODBC执行查询的代码是这样的:
cursor.execute("SELECT Distinct country from dbo.purchases") for row in cursor.fetchall(): print(row)
当前输出是带元组格式的内容:
('Taiwan', ) ('Japan', )
想要把输出改成只显示国家名称:
Taiwan Japan
解决方案
其实原因很简单——cursor.fetchall()返回的是元组的列表,每一行row都是一个包含单个元素的元组。我们只需要取出元组里的具体值就行,有两种常用方法:
方法1:通过索引访问元组元素
直接取元组的第一个元素(索引为0):
cursor.execute("SELECT Distinct country from dbo.purchases") for row in cursor.fetchall(): print(row[0])
方法2:元组解包
利用Python的元组解包特性,直接把元组里的元素赋值给变量:
cursor.execute("SELECT Distinct country from dbo.purchases") # 注意变量后面的逗号,用来匹配单个元素的元组 for country, in cursor.fetchall(): print(country)
两种方法都能得到你想要的纯文本输出,选哪种看你个人习惯就行~
内容的提问来源于stack exchange,提问作者Techno04335
相关产品推荐
相关产品推荐

