问题标签 [defaultdict]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
125 浏览

python - 一个默认字典,默认为带有预生成键的字典

如果有更好的方法来做到这一点?

这里的目标是一个键字典(键是某种类型的 id),如果我调用一个以前没有调用过的 ID,它会自动生成默认标志状态列表。

0 投票
1 回答
96 浏览

python - 通过合并两列数据来计算有多少唯一标识符?

我正在尝试使用 defaultdict 制作一个非常简单的计数脚本(我无法理解如何使用 DefaultDict,所以如果有人能给我评论一段代码,我将不胜感激)

我的目标是获取元素 0 和元素 1,将它们合并为一个字符串,然后计算有多少个唯一字符串......

例如,在下面的数据中有 15 行包含 3 个类,4 个类 ID,当它们合并在一起时,我们只有 3 个唯一的类。第一行的合并数据(忽略标题行)是:Class01CD2

CSV 数据:

它的想法是简单地打印出有多少独特的类可用。谁能帮我解决这个问题?

问候
-Hyflex

0 投票
2 回答
243 浏览

python - 编辑脚本以考虑两个列表的每个组合

所以,我有一个我认为很难解决的问题,我有一个脚本可以循环通过 CSV 来计算不同列中数据的出现次数。该脚本运行良好,包含在下面以供参考:

原始脚本

我已经编辑了这个脚本来添加一个百分比列,我可以让这个脚本手动执行多个不同的列匹配组合,例如,这里的第 7/9 列我可以在一个脚本中将其设置为第 7/10 列等。但是我需要它做什么我不知道所需的功能或方法。本质上,我需要它遍历calclist此脚本中包含的每个内容,并为 calclists 中列引用的每个组合输出与此脚本关联的数字。即 6/7 6/19 6/23

因为在我的真实脚本中,计算列表比本示例中的要长得多,所以如果此编辑可以包括将标题附加到列的某种方式,我也没有合适的方法或机制来执行此操作。但是,如果有一个 calc 列表的标题列表,那么可能会以这种格式创建一个标题(记住每次脚本运行都有三个标题)"title1-title2-x","title1-title2-y","title1-title2-z"

我很欣赏这可能是一个难以解决的问题,如果有人可以帮助解决这个问题,那么首先向你致敬!如果需要更多详细信息或有任何不清楚的地方,请回复我。如果需要,我可以为原始脚本提供示例数据和输出。在此先感谢 AEA

0 投票
2 回答
163 浏览

python - 为 dict 和 defaultdict 编写代码

我有以下问题:

正如您在评论中看到的那样,似乎不可能编写以下版本give_it_to_me

  1. 永远不会崩溃
  2. defaultdict触发s的默认值

还是我错了?

0 投票
3 回答
3571 浏览

python - 如何在 defaultdict(list) 中按键(按字母顺序)为倒排索引排序

我有一个倒排索引。它由我的字典和出现这些术语的文档的发布列表组成。我只想按字母顺序对字典进行排序。这就是它现在的样子(示例):

...等等这是排序后的样子:

我尝试了什么:

第一个打印调用提供了一个完美排序的单词列表,但如果我尝试获取单词“all”的连接发布列表,我会收到以下错误消息:

0 投票
3 回答
73534 浏览

python - 如何将defaultdict转换为dict?

我怎样才能转换defaultdict

做个普通人dict

0 投票
1 回答
140 浏览

python - 反转从文本文件中读取的字典的键值 - python

我有一个以前输出到文本文件中的字典,即 [in]:

最初,键是第 1 列,别名在第 2 列,第 3 列是值,我需要转换文本文件,使最后一列是键,第 1 列和第 2 列是值:

[出去]:

这样做的目的是让给定输入foo foo,按getkeybyvalue()函数将返回['Foo bar language','computing']

我一直在东它如下:

  1. 有没有更简洁的方法来做到这一点?
  2. 我还应该如何阅读给定的文本文件foo foo,我的 python 字典返回['Foo bar language','computing']
0 投票
1 回答
4026 浏览

python - Multiple levels dictionary python

I spent my morning reading similar questions/answers (What is the best way to implement nested dictionaries?, Multiple levels of keys and values in Python, Python: How to update value of key value pair in nested dictionary?) but I'm still not able to solve the problem.

I have this tab dictionary with a tuple as key and I want as values: an integer, a dictionary, another dictionary and some lists. Then for every key, something like this: (str,str,str,str):{int, {}, {}, [], [] ...}

I want to be able to update these values structures and I need defaultdict because I don't know all the keys and anyway they are too much to be declared one by one manually.

I'm able to do this for a structure like this (str,str,str,str):{int} in this way:

tab=defaultdict(lambda: defaultdict(int))

tab[key][0]+=1

Or for a structure like this (str,str,str,str):{{}, {}} in this way:

tab=defaultdict(lambda: defaultdict(lambda: defaultdict(int)))

tab[key][1][str]+=1

tab[key][2][str]+=1

But not for what I really need. Thank you!

Ok, thank to @RemcoGerlich I'm trying to fix the problem, but I never used class before and maybe there's still something wrong in my code... Btw the int is a counter, the two dictionary have ip addresses like keys and the number of occurrences as values.

0 投票
2 回答
1027 浏览

python - 使用 defaultdict 替换 python 中的 try 和/或 if 语句

我最近发现并开始使用默认字典来替换几个更庞大的结构。我在“python 之禅”中读到,python 的关键点之一是“应该有一种——最好只有一种——明显的方式来做到这一点。”

基于该标准(或者可能更实际地基于内存使用或速度)以下哪个(或完全不同的东西)是最好的?我有一种预感,第一个是正确的,但想听听其他人的意见。

或者:

或者:

使用 my_dict = defaultdict(list) 和使用 append 函数也是如此。假设使用了多个 for 循环或其他条件,而不是简单地从单个迭代中计算通用值,因为这显然具有不同的特性。

0 投票
2 回答
3156 浏览

python - 在初始化时填充默认字典

如何为 defaultdict 获取可调用工厂以允许对其进行理解?我认为这可能是不可能的,但我想不出一个很好的理由?