如何使 pyodbc 输出更多 readable/nicer?
How do I make pyodbc output more readable/nicer?
我目前正在制作一个 discord 机器人,其中一个命令涉及从 SQL table 中提取数据,为此我使用的是 AioOdbc 模块,它几乎完全相同与 Pyodbc 一样,唯一真正的区别是它不会阻塞异步函数。
以这种格式输出。
[('Item1',),('Item2',)]
如何让它输出更易读的内容?可能类似于
Item1, Item2
感谢任何帮助!
您可以将它变成一个字符串,其中每个项目都用逗号和 space 分隔,代码如下:
itemString = ', '.join((item[0] for item in items))
其中 items
是名称:[('Item1',),('Item2',)]
如果你需要它能够从任意深度的嵌套列表中取出项目,比如在这个列表中:[('Item1', 'Item2', ('Item3')), ('Item4', 'Item5')]
,你可以使用这个代码:
from collections import Iterable
def flatten(nested):
for element in nested:
if isinstance(element, Iterable) and not isinstance(element, (str, bytes)):
yield from flatten(element)
else:
yield element
我目前正在制作一个 discord 机器人,其中一个命令涉及从 SQL table 中提取数据,为此我使用的是 AioOdbc 模块,它几乎完全相同与 Pyodbc 一样,唯一真正的区别是它不会阻塞异步函数。
以这种格式输出。
[('Item1',),('Item2',)]
如何让它输出更易读的内容?可能类似于
Item1, Item2
感谢任何帮助!
您可以将它变成一个字符串,其中每个项目都用逗号和 space 分隔,代码如下:
itemString = ', '.join((item[0] for item in items))
其中 items
是名称:[('Item1',),('Item2',)]
如果你需要它能够从任意深度的嵌套列表中取出项目,比如在这个列表中:[('Item1', 'Item2', ('Item3')), ('Item4', 'Item5')]
,你可以使用这个代码:
from collections import Iterable
def flatten(nested):
for element in nested:
if isinstance(element, Iterable) and not isinstance(element, (str, bytes)):
yield from flatten(element)
else:
yield element