Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 不满足条件时跳过for循环_Python - Fatal编程技术网

Python 不满足条件时跳过for循环

Python 不满足条件时跳过for循环,python,Python,我正在尝试使用名为ratio_dict的字典从文档列表创建更新的_文档列表,该字典存储文档中存在的所有单词的计数以及计数为0的其他一些单词 我想存储ratio_dict中存储的所有值大于2的单词。我正在运行下面的代码,但它为所有计数为0的单词提供了KeyError。我想忽略所有那些在ratio_dict中存储值为0的单词。如何在该列表中给出“跳过”条件 updated_document = [[b for b in i if ratio_dict[b] >= 2.0] for i in d

我正在尝试使用名为ratio_dict的字典从文档列表创建更新的_文档列表,该字典存储文档中存在的所有单词的计数以及计数为0的其他一些单词

我想存储ratio_dict中存储的所有值大于2的单词。我正在运行下面的代码,但它为所有计数为0的单词提供了KeyError。我想忽略所有那些在ratio_dict中存储值为0的单词。如何在该列表中给出“跳过”条件

updated_document = [[b for b in i if ratio_dict[b] >= 2.0] for i in documents]
例如:

document = [['b','m','n'],['b'],['g'],['o','b','g'],['b','g']]
ratio_dict = {'a':0, 'b':4,'c':0,'g':3,'m':1,'n':1,'o':1}
Expected updated_document = [['b','m'],['b'],['g'],['b','g'],['b','g']]
试试看

updated_document=[[b表示i-if比率中的b\u dict.get(b,0)>=2.0]表示i-in documents]

ratio-dict.get(b,0)
用于从
ratio-dict
中选择
b
,如果
b
不是
ratio-dict
中的键,它将返回
0

您可能还想结帐
集合。计数器

试一试

updated_document=[[b表示i-if比率中的b\u dict.get(b,0)>=2.0]表示i-in documents]

ratio-dict.get(b,0)
用于从
ratio-dict
中选择
b
,如果
b
不是
ratio-dict
中的键,它将返回
0


此外,您可能希望签出
集合。计数器

[('',b)[i中b的比率[b>=2.0]]i中i的比率]
?这不起作用。我仍然得到KeyError。我没有任何错误,我有一个输出
[['b'],['b'],['g'],['b','g'],['b','g'],['b','g']]
,因为'm:1
[('',b)[比率[b>=2.0]]在I中为I]在文档中为I]
?这不起作用。我仍然收到KeyError。我没有任何错误,我有一个输出
[['b'],['b'],['g'],['b','g'],['b','g'],['b','g']]
,因为'm:1实际上,我想删除这些单词,而不是给它们一个值0。我该怎么做。你能添加一个示例输入和期望的输出吗?我不明白为什么不删除这些单词。实际上,我想删除这些单词,而不是给它们一个值0。我该怎么做。你能添加一个示例输入和期望的输出吗?我不明白为什么这不是删除这些词。