【问题标题】:SQLite: Get rid of , and () while printing Python [duplicate]SQLite:在打印 Python 时去掉 , 和 () [重复]
【发布时间】:2020-09-02 09:51:32
【问题描述】:

我在 sqlite 中创建了一个如下所示的数据库

employeeID    Name      Last    email                Age
1             Darshan   Malu    darshan@example.com  24
2             Anja      Schmidt anja@example.com     22
3             Neeta     Rajan   neeta@gmail.com      28
4             Michelle  Muller  m@gmail.com          32

因此,对于通过搜索 ID 进行查询,我使用此代码将输入作为名字和姓氏

c.execute("SELECT employeeID FROM employee WHERE first=:first AND last=:last",{"first":first,"last":last})
print('Your Employee ID is', c.fetchone())
conn.close 

它有什么作用。

它返回“您的员工 ID 是 (1,)”

所以问题是

  1. 为什么 ID 后面有一个“,”
  2. 如何去掉 , 和 ()?这样它只会打印出“Your Employee ID is 1”

【问题讨论】:

  • 因为查询总是返回元组个结果。只是print(c.fetchone()[0])。另外,conn.close 不会关闭连接,因为您没有调用该方法
  • 非常感谢。有效。你能把这个写成答案,这样我就可以把这个问题标记为已解决
  • 我目前正试图找到一个骗子,因为这是一个常见问题。如果其他人想回答,很好

标签: python sqlite


【解决方案1】:

有几种方法可以获取结果。 featchall() 将返回一个像[(1,)] 这样的元组列表,而fetchone() 将只返回列表的第一个值(1,) 所以如果你只想得到1,你需要使用调用fetchone()[0]。

而且,conn.close() 不仅仅是conn.close

要插入或删除调用这个:

conn.commit()
conn.close()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-22
    • 1970-01-01
    • 2018-06-08
    • 2022-12-20
    • 1970-01-01
    • 2016-06-14
    • 2021-06-20
    • 2016-06-30
    相关资源
    最近更新 更多