列表中的嵌套元组
Nested tuples within lists
我有一个元组列表列表,但在访问元组中的值时遇到问题。
注意:对于这个查询的基本性质,我深表歉意,但我是初学者,访问简单变量需要很长时间。
E.g:
[[('foo', '-1')],[('bar', '-5'),('baz', '+7')], [('qux', '+9')]]
我想 1) 删除每个元组的第二个值,即数字和 2) 删除元组类型并将其转换为字符串列表。
如您所见,它是一个元组列表,因此它可以是一个元组或多个基于提取内容的元组 - 但每个元组中始终有 2 个值,我想删除第二个值。
我遇到问题 1) 将每个元组转换为字符串,以便能够 2) 删除第二个值(最好在将其转换为字符串之前删除它)- 有什么想法吗?
问题我不是很理解,但有两点:
您在元组中的值已经是字符串。
要访问元组,您可以遍历列表并通过执行以下操作访问元组的第一个值:
tuple[0]
我不明白你是否有元组列表,或元组列表
只需在列表中迭代得到每个元组的 0 索引
ll_tuple = [[('foo', '-1')],[('bar', '-5'),('baz', '+7')], [('qux', '+9')]]
print(
[
[tuple_[0] for tuple_ in l_tuple]
for l_tuple in ll_tuple
]
)
首先你的管列表列表格式不正确我猜你的意思是:
data = [
[('foo', '-1')],
[('bar', '-5')],
[('baz', '+7'), ('qux', '+9')]
]
当创建嵌套 for 循环并将每个小管中的第一个元素附加到新列表输出时。
output = []
for lst in data:
for tub in lst:
output.append(tub[0])
print(output)
打印:
['foo', 'bar', 'baz', 'qux']
我有一个元组列表列表,但在访问元组中的值时遇到问题。
注意:对于这个查询的基本性质,我深表歉意,但我是初学者,访问简单变量需要很长时间。
E.g:
[[('foo', '-1')],[('bar', '-5'),('baz', '+7')], [('qux', '+9')]]
我想 1) 删除每个元组的第二个值,即数字和 2) 删除元组类型并将其转换为字符串列表。
如您所见,它是一个元组列表,因此它可以是一个元组或多个基于提取内容的元组 - 但每个元组中始终有 2 个值,我想删除第二个值。
我遇到问题 1) 将每个元组转换为字符串,以便能够 2) 删除第二个值(最好在将其转换为字符串之前删除它)- 有什么想法吗?
问题我不是很理解,但有两点:
您在元组中的值已经是字符串。
要访问元组,您可以遍历列表并通过执行以下操作访问元组的第一个值:
tuple[0]
我不明白你是否有元组列表,或元组列表
只需在列表中迭代得到每个元组的 0 索引
ll_tuple = [[('foo', '-1')],[('bar', '-5'),('baz', '+7')], [('qux', '+9')]]
print(
[
[tuple_[0] for tuple_ in l_tuple]
for l_tuple in ll_tuple
]
)
首先你的管列表列表格式不正确我猜你的意思是:
data = [
[('foo', '-1')],
[('bar', '-5')],
[('baz', '+7'), ('qux', '+9')]
]
当创建嵌套 for 循环并将每个小管中的第一个元素附加到新列表输出时。
output = []
for lst in data:
for tub in lst:
output.append(tub[0])
print(output)
打印:
['foo', 'bar', 'baz', 'qux']