在Python中清理sqlite查询

2024-06-08 14:55:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我想自学Python和Sqlite,但我的脑子都乱了。如何“清理”查询的输出以去掉所有的方括号、逗号等。。。从结果来看。还想.title()第二列。例如:

def get_all_bdays(self):
    print("\n" * 100)
    print("The birthdays we know about are: ")
    self.c.execute('SELECT * FROM birthdays')
    for row in self.c.fetchall():
        print(row)

结果如下:

^{pr2}$

如何将混乱的局面重新格式化为:

The birthdays we know about are: 
1. Joe Smoe 12-12-1212

我的最终目标是为我的小企业创建一个库存系统,我的员工可以使用它来查找我的储藏室中的库存物品的位置。想用烧瓶做那种事,但我离那个时间点还有很长的路要走。在


Tags: theselfsqlite库存arerowaboutwe
2条回答

每一行都是一个元组,有三个值:数字、名称和生日。print(row)输出的是元组及其所有括号和引号,而不是任何格式化版本。在

在Python中,可以解构元组并将其部分分配给不同的变量,然后使用Python的语法格式化printf类格式:

for row in self.c.fetchall():
    number, name, date = row
    print("%d. %s on %s" % (number, name.title(), date))

甚至:

^{pr2}$

当您print(row)时,您将得到row的Python表示,其中包括引号和逗号等。您要做的是^{}将数据转换为您喜欢的任何形状:

fmt = "{0}. {1}, on {2}"
for row in self.c.fetchall():
    print(fmt.format(*row))

相关问题 更多 >