从具有 key/tuple 对的字典中提取元组
extracting a tuple from a dictionary with a key/tuple pair
我知道我很接近:
for k in my_dictionary:
#print (k, my_dict[k][0],my_dict[k][1])
for v in my_dict[k]:
print (v,my_dict[k])
结果:
tuple00('tuple00','tuple01')
tuple01('tuple00','tuple01')
tuple10('tuple10','tuple11')
tuple11('tuple10','tuple11')
注释行会给我更好的结果
key0 tuple00 tuple01
key1 tuple00 tuple01
但我必须通过以下方式解决它们:
my_dict[k][0],my_dict[k][1]
这很丑。正在做:
for k in my_dict:
for i,m in k:
print (i,m,k)
给出错误:
for i,m in k:
ValueError: need more than 1 value to unpack
我知道列表理解可能是我所追求的,但我仍然无法开始理解它。
我会通过循环(如上所述)或dict/list理解来接受答案...
我真正想要的是能够 select 一个 Key
值并将元组用作引用对:i
和 m
你可以这样做:
for key, value in dictd.iteritems():
print key, value[0], value[1]
您可以使用 .items
解压:
d = {"key":("v1","v2")}
for k, (v1, v2) in d.items():
print(k, v1, v2)
这将打印:
('key', 'v1', 'v2')
使用 (v1, v2)
解压每个 tuple/value
。
你可以这样做:
d = {"key":("v1","v2")}
for key in d:
print((key,) + d[key])
解压到:
('key', 'v1', 'v2')
我知道我很接近:
for k in my_dictionary:
#print (k, my_dict[k][0],my_dict[k][1])
for v in my_dict[k]:
print (v,my_dict[k])
结果:
tuple00('tuple00','tuple01')
tuple01('tuple00','tuple01')
tuple10('tuple10','tuple11')
tuple11('tuple10','tuple11')
注释行会给我更好的结果
key0 tuple00 tuple01
key1 tuple00 tuple01
但我必须通过以下方式解决它们:
my_dict[k][0],my_dict[k][1]
这很丑。正在做:
for k in my_dict:
for i,m in k:
print (i,m,k)
给出错误:
for i,m in k:
ValueError: need more than 1 value to unpack
我知道列表理解可能是我所追求的,但我仍然无法开始理解它。
我会通过循环(如上所述)或dict/list理解来接受答案...
我真正想要的是能够 select 一个 Key
值并将元组用作引用对:i
和 m
你可以这样做:
for key, value in dictd.iteritems():
print key, value[0], value[1]
您可以使用 .items
解压:
d = {"key":("v1","v2")}
for k, (v1, v2) in d.items():
print(k, v1, v2)
这将打印:
('key', 'v1', 'v2')
使用 (v1, v2)
解压每个 tuple/value
。
你可以这样做:
d = {"key":("v1","v2")}
for key in d:
print((key,) + d[key])
解压到:
('key', 'v1', 'v2')