无法访问索引元组
Can't access indexed tuple
我正在尝试遍历一个字典,该字典基本上包含元组和元组的键,如下所示:
(101940039, 'yoel'): 0.0016034940264139383,
(101940039, 'yossi'): 0.004810482079241815,
(101940039, 'youngmen'): 0.0016034940264139383}
我需要访问键的值,即元组的字符串。我尝试了很多东西,比如转换为字典,使用 key[0] 只是给我“'int' object is not subscribable”..
def matching_score(k, tokens, tf_idf_score):
print("Matching Score")
query_weights = {}
for word in tokens:
for key, value in tf_idf_score.items():
**if key in word**:
try:
query_weights[key[0]] += tf_idf_score[key]
except:
query_weights[key[0]] = tf_idf_score[key]
query_weights = sorted(query_weights.items(), key=lambda x: x[1], reverse=True)
print("")
l = []
for i in query_weights[:10]:
l.append(i[0])
print(l)
首先,这是将您的数据重建为字典:
d1 = {(101940039, 'yoel'): 0.0016034940264139383,
(101940039, 'yossi'): 0.004810482079241815,
(101940039, 'youngmen'): 0.0016034940264139383}
使用 keys()
可以访问密钥。同时,我们想把它们转换成列表。
list(d1.keys())
结果是一个元组列表。
[(101940039, 'yoel'), (101940039, 'yossi'), (101940039, 'youngmen')]
要访问此嵌套列表中的单个项目:首先,使用列表的索引 select 所需的列表,其次,使用元组的索引 select 所需的项目在.
list(d1.keys())[0][1]
'yoel'
获取键元组的所有字符串元素:
for i in range(len(d1)):
print(list(d1.keys())[i][1])
yoel
yossi
youngmen
我正在尝试遍历一个字典,该字典基本上包含元组和元组的键,如下所示:
(101940039, 'yoel'): 0.0016034940264139383,
(101940039, 'yossi'): 0.004810482079241815,
(101940039, 'youngmen'): 0.0016034940264139383}
我需要访问键的值,即元组的字符串。我尝试了很多东西,比如转换为字典,使用 key[0] 只是给我“'int' object is not subscribable”..
def matching_score(k, tokens, tf_idf_score):
print("Matching Score")
query_weights = {}
for word in tokens:
for key, value in tf_idf_score.items():
**if key in word**:
try:
query_weights[key[0]] += tf_idf_score[key]
except:
query_weights[key[0]] = tf_idf_score[key]
query_weights = sorted(query_weights.items(), key=lambda x: x[1], reverse=True)
print("")
l = []
for i in query_weights[:10]:
l.append(i[0])
print(l)
首先,这是将您的数据重建为字典:
d1 = {(101940039, 'yoel'): 0.0016034940264139383,
(101940039, 'yossi'): 0.004810482079241815,
(101940039, 'youngmen'): 0.0016034940264139383}
使用 keys()
可以访问密钥。同时,我们想把它们转换成列表。
list(d1.keys())
结果是一个元组列表。
[(101940039, 'yoel'), (101940039, 'yossi'), (101940039, 'youngmen')]
要访问此嵌套列表中的单个项目:首先,使用列表的索引 select 所需的列表,其次,使用元组的索引 select 所需的项目在.
list(d1.keys())[0][1]
'yoel'
获取键元组的所有字符串元素:
for i in range(len(d1)):
print(list(d1.keys())[i][1])
yoel
yossi
youngmen