为了账号安全,请及时绑定邮箱和手机立即绑定

从 python 列表中删除括号

从 python 列表中删除括号

波斯汪 2023-08-08 10:01:02
我正在运行一个 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-3B1870AF1409425F9948-E1F3-45D3-9AC2-6A7DCA6F607E
查看完整描述

3 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

for x in cursor:

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

for (x,) in cursor:


查看完整回答
反对 回复 2023-08-08
?
素胚勾勒不出你

TA贡献1827条经验 获得超9个赞

('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。


查看完整回答
反对 回复 2023-08-08
?
守着一只汪

TA贡献1872条经验 获得超3个赞

用途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))

但是如果您希望能够使用该字符串执行除打印之外的其他操作,第一种形式将很有用。:)


查看完整回答
反对 回复 2023-08-08
  • 3 回答
  • 0 关注
  • 90 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信