首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Python中将SQL结果转换为字符串格式

在Python中将SQL结果转换为字符串格式
EN

Stack Overflow用户
提问于 2021-06-04 14:36:54
回答 1查看 29关注 0票数 0

我尝试将从SQL语句的执行中提取的结果转换为字符串,因为输出是元组格式。我是Python编程的新手,所以,我在互联网上找到了一个可以将元组转换为字符串的代码,但是当我使用从SQL语句执行中获得的元组进行尝试时,结果仍然没有改变。你能告诉我怎么按计划做吗?下面是使用的代码:

代码语言:javascript
复制
import functools
import operator
import mysql.connector

mydb = mysql.connector.connect(
      host='localhost',
      user='root',
      password='123456789',
      port='3307',
      database='magna'
)



def convertTuple(tup):
     str1 = functools.reduce(operator.add, (tup))
     return str1


#The converting function

mycusor = mydb.cursor()
mycusor.execute("SELECT Name FROM people WHERE ID =1")
para1 = mycusor.fetchall()


targ = para1
str2 = convertTuple(targ)
print(str2)

以上代码产生的结果如下:

代码语言:javascript
复制
('Mike',)
EN

回答 1

Stack Overflow用户

发布于 2021-06-04 15:12:02

para1是一个元组列表。要将每个元组转换为字符串,我们需要将元组中的每个元素转换为字符串,然后使用str.join将它们组合为字符串。

使用map

代码语言:javascript
复制
joined_str = ', '.join(map(str, tup))

或者是一个list comprehension

代码语言:javascript
复制
joined_str = ', '.join([str(elem) for elem in tup])

如果要将整个列表转换为字符串,则需要应用另一层连接

代码语言:javascript
复制
joined_str = '\n'.join([', '.join(map(str, tup)) for tup in para1])

代码语言:javascript
复制
joined_str = '\n'.join([', '.join(str(elem) for elem in tup) for tup in para1])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67832511

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档