使用附加从另一个列表生成一个简单列表

Generating a simple list from another list using append

来自这样的列表 (original_list):

[[], (['2313240'], 51.0), (['2313301'], 55.0), (['2313467'], 51.0)]

我需要创建另一个列表 (result_list),其中只有 [0] 个元素(例如 2313240) ,所以我尝试使用以下方法提取它:

for row in range(1, len(original_list)):
    result_list.append(original_list[row][0][0])

但它的结果类似于:

['2313240', '2313301', '2313467']

当我真的想实现这样的事情时(没有括号的元素):

[2313240, 2313301, 2313467]

所以我可以将它用作查询的参数:

   cursor.execute(sql,[result_list])

现在它记录了以下错误:

pymysql.err.InternalError: (1241, 'Operand should contain 1 column(s)')

我不知道如何解决这个问题,因为我是 Python 的新手。

在将值附加到数组之前,只需转换为 int

result_list.append(int(original_list[row][0][0]))

除了我的评论之外,更好的写法是使用列表理解:

L1 = [[], (['2313240'], 51.0), (['2313301'], 55.0), (['2313467'], 51.0)]

In[3]:[int(elt[0][0]) for elt in L1 if len(elt) == 2]
Out[3]: [2313240, 2313301, 2313467]