从 python 列表中删除括号

我正在运行一个 sql 查询,该查询返回存储在列表 x 中的结果集


('439FBFA0-B905-4C73-ABD4-3B1870AF1409', )

('425F9948-E1F3-45D3-9AC2-6A7DCA6F607E', )

这是我的Python代码


x = []


cursor = conn.cursor()

label1 = cursor.execute("SELECT....")

for row in cursor:

    x.append(row)


for i in x:

    print(i)



s = x.replace(",","")


for i in s:

    print(i)

格式化列表的最佳方法是什么?我想删除 () 和 , 和 ' 我认为替换在这种情况下可以工作,但我收到错误“'list'对象没有属性'replace'”


我正在寻找的输出是


439FBFA0-B905-4C73-ABD4-3B1870AF1409

425F9948-E1F3-45D3-9AC2-6A7DCA6F607E


波斯汪
浏览 93回答 3
3回答

绝地无双

for x in cursor:游标为每一行返回一个元组——这就是您看到括号和逗号的原因。最简单的解压方法是for (x,) in cursor:

素胚勾勒不出你

('439FBFA0-B905-4C73-ABD4-3B1870AF1409', )是单行。要从中获取第一列,您应该简单地对其进行索引:x = []cursor = conn.cursor()label1 = cursor.execute("SELECT....")for row in cursor:    x.append(row[0])或者更干净一点:cursor = conn.cursor()label1 = cursor.execute("SELECT....")x = [row[0] for row in cursor.fetchall()]请注意,您还可以按名称访问列,例如row.column_name。

守着一只汪

用途join:print('\n'.join(' '.join(row) for row in x))' '.join(row)' '对其中一个元组进行操作并生成一个字符串,该字符串仅使用 a (而不是默认格式)连接元组元素(element, )。在生成器 ( for row in x) 中执行此操作会得到一系列字符串,然后您可以将其连接在一起'\n'以获得所需的输出。这本质上与执行以下操作相同:for row in x:     print(' '.join(row))但是如果您希望能够使用该字符串执行除打印之外的其他操作,第一种形式将很有用。:)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python