从循环创建的嵌套列表中删除括号 Python
Remove parentheses from nested list created from loop Python
请问,您知道如何从此代码中删除括号'(', ')'吗?
values_list = []
x = 0
for n in different_values:
for each in different_values:
different_id = list((different_values))
arg_1 = different_id[x]
cursor.execute(sqlstmt2,arg_1=arg_1)
rows = ((cursor.fetchmany(each)))
index += 1
x += 1
print(rows)
values_list.append(rows)
break
print((values_list))
输出是:
[[(105, 'David', '05.11.88', 'M', 'xxx', 'United States of America', 'republican', 'k')], [(106, 'Valli', '16.06.89', 'M', 'xxx', 'United States of America', 'republican', 'k')]]
我想为 Google Sheet 的插入函数创建类似参数的嵌套列表,但在循环之外。
wks.insert_rows(row=1, number=1, values=values_list)
好吧,[[(a, b, c)], [(d, e, f)]]
是两个条目的列表,每个条目都是一个条目的列表,这是一个包含三个条目的元组,即 a
、b
和 c
— 或 d
、e
和 f
。所以如果你想 "get rid" 一对括号,你的意思是你想得到里面的东西。这是通过索引列表和元组的唯一元素来完成的:
print(values_list)
[[(105, 'David', '05.11.88', 'M', 'xxx', 'United States of America', 'republican', 'k')],
[(106, 'Valli', '16.06.89', 'M', 'xxx', 'United States of America', 'republican', 'k')]]
print([ value[0] for value in values_list ])
[(105, 'David', '05.11.88', 'M', 'xxx', 'United States of America', 'republican', 'k'),
(106, 'Valli', '16.06.89', 'M', 'xxx', 'United States of America', 'republican', 'k')]
结果是元组列表(而不是元组列表的列表),因此删除了一对括号。
如果您想保留括号并移除(圆)括号,您可以将元组转换为列表:
print([ list(value[0]) for value in values_list ])
[[105, 'David', '05.11.88', 'M', 'xxx', 'United States of America', 'republican', 'k'],
[106, 'Valli', '16.06.89', 'M', 'xxx', 'United States of America', 'republican', 'k']]
但我想最好不要首先创建原始结构:
rows = list(cursor.fetchmany(each)[0])
这当然假设您的 fetchmany()
调用将始终只有 return 恰好一个条目(由元组表示)。使用此代码,您将获得结果列表的一个条目并将其(元组)转换为列表。
我不能说这些前提在你的情况下是否正确。在应用我的代码建议之前,您应该考虑这一点。
请问,您知道如何从此代码中删除括号'(', ')'吗?
values_list = []
x = 0
for n in different_values:
for each in different_values:
different_id = list((different_values))
arg_1 = different_id[x]
cursor.execute(sqlstmt2,arg_1=arg_1)
rows = ((cursor.fetchmany(each)))
index += 1
x += 1
print(rows)
values_list.append(rows)
break
print((values_list))
输出是:
[[(105, 'David', '05.11.88', 'M', 'xxx', 'United States of America', 'republican', 'k')], [(106, 'Valli', '16.06.89', 'M', 'xxx', 'United States of America', 'republican', 'k')]]
我想为 Google Sheet 的插入函数创建类似参数的嵌套列表,但在循环之外。
wks.insert_rows(row=1, number=1, values=values_list)
好吧,[[(a, b, c)], [(d, e, f)]]
是两个条目的列表,每个条目都是一个条目的列表,这是一个包含三个条目的元组,即 a
、b
和 c
— 或 d
、e
和 f
。所以如果你想 "get rid" 一对括号,你的意思是你想得到里面的东西。这是通过索引列表和元组的唯一元素来完成的:
print(values_list)
[[(105, 'David', '05.11.88', 'M', 'xxx', 'United States of America', 'republican', 'k')],
[(106, 'Valli', '16.06.89', 'M', 'xxx', 'United States of America', 'republican', 'k')]]
print([ value[0] for value in values_list ])
[(105, 'David', '05.11.88', 'M', 'xxx', 'United States of America', 'republican', 'k'),
(106, 'Valli', '16.06.89', 'M', 'xxx', 'United States of America', 'republican', 'k')]
结果是元组列表(而不是元组列表的列表),因此删除了一对括号。
如果您想保留括号并移除(圆)括号,您可以将元组转换为列表:
print([ list(value[0]) for value in values_list ])
[[105, 'David', '05.11.88', 'M', 'xxx', 'United States of America', 'republican', 'k'],
[106, 'Valli', '16.06.89', 'M', 'xxx', 'United States of America', 'republican', 'k']]
但我想最好不要首先创建原始结构:
rows = list(cursor.fetchmany(each)[0])
这当然假设您的 fetchmany()
调用将始终只有 return 恰好一个条目(由元组表示)。使用此代码,您将获得结果列表的一个条目并将其(元组)转换为列表。
我不能说这些前提在你的情况下是否正确。在应用我的代码建议之前,您应该考虑这一点。