要列出的 Python 嵌套元组

dob*_*bbs 3 python mysql

我有一个 mysql 查询,它运行并选择与 select 语句匹配的所有 Id:

first_seen_select = "SELECT Id FROM domains_archive WHERE current_epoch = " + current_epoch + " AND first_seen IS NULL"
cur.execute(first_seen_select)
Run Code Online (Sandbox Code Playgroud)

的输出cur.fetchall()

((1,), (2,), (3,), (4,), (5,), (6,), (7,))
Run Code Online (Sandbox Code Playgroud)

我如何提取这些嵌套的元组 Id # 并将它们转换为我可以迭代的单个列表?

如果我运行以下我得到:

>>> bleh = cur.fetchall()
>>> for i in bleh:
...   print(i)
... 
(1,)
(2,)
(3,)
(4,)
(5,)
(6,)
(7,)
Run Code Online (Sandbox Code Playgroud)

tux*_*imo 5

您可以使用简单的列表理解:

[y for x in l for y in x]
Run Code Online (Sandbox Code Playgroud)

或者使用更有意义的变量名称:

[item for sublist in l for item in sublist]
Run Code Online (Sandbox Code Playgroud)

这将导致:

In [8]: l = ((1,), (2,), (3,), (4,), (5,), (6,), (7,))

In [9]: [y for x in l for y in x]
Out[9]: [1, 2, 3, 4, 5, 6, 7]
Run Code Online (Sandbox Code Playgroud)