我不确定如何编写这个程序来编辑Python中的字典 [英] I'm unsure on how to write this program to edit a dictionary in Python

查看:105
本文介绍了我不确定如何编写这个程序来编辑Python中的字典的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

所以我必须编写一个以两个参数开头的程序:字典和int值。字典包含单词作为键和整数作为表示它们在文本中出现的次数的值。我必须更新字典以包含最常用的单词而不传递threshold int参数。如果单词具有相同的频率并加在一起超过阈值,则应忽略它们。我根本不能使用排序。



我尝试过:



So I have to write a program that starts with two parameters: a dictionary and an int value. The dictionary contains words as keys and ints as values that represent the amount of times they appear in a text. I have to update the dictionary to include the most frequent words without passing the threshold int parameter. If words have the same frequency and added together pass the threshold, they should be ignored. I can't use sorted at all.

What I have tried:

occurence_dict = {}
    e = [(k, v) for k, v in dictionary.items()]
    e = sorted(e, key=getKey, reverse=True)
    i = 0
    for item in e:
        if item[1] + i < count:
            if e.index((item[0], item[1])) != len(e) - 1:
                if item[1] == e[e.index((item[0], item[1])) + 1][1]:
                    h = -item[1]
                    for itm in e:
                        if itm[1] == item[1]:
                            h += itm[1]
                    if h + i <= count:
                        occurence_dict[item[0]] = item[1]
                        i += item[1]
            elif e.index((item[0], item[1])) != len(e) - 1:
                if item[1] != e[e.index((item[0], item[1])) + 1][1]:
                    occurence_dict[item[0]] = item[1]
                    i += item[1]
    return occurence_dict

推荐答案

我们不做你的作业:这是有原因的。它就是为了让你思考你被告知的事情,并试着理解它。它也在那里,以便您的导师可以识别您身体虚弱的区域,并将更多的注意力集中在补救措施上。



亲自尝试,你可能会发现它不是和你想的一样困难!



如果遇到具体问题,请询问相关问题,我们会尽力提供帮助。但是我们不打算为你做这一切!
We do not do your homework: it is set for a reason. It is there so that you think about what you have been told, and try to understand it. It is also there so that your tutor can identify areas where you are weak, and focus more attention on remedial action.

Try it yourself, you may find it is not as difficult as you think!

If you meet a specific problem, then please ask about that and we will do our best to help. But we aren't going to do it all for you!


将问题分成单独的部分。首先找到具有相同频率的所有单词,看看它们是否超过了阈值。如果是这样,将它们从字典中删除。接下来,找到超过阈值的剩余单词并将其删除。
Split the problem into its separate parts. First find all the words with the same frequency and see if they pass the threshold. If so remove them from the dictionary. Next, find the remaining words that pass the threshold and remove them.


这篇关于我不确定如何编写这个程序来编辑Python中的字典的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆