【问题标题】:keys and Values output - Python Collections键和值输出 - Python 集合
【发布时间】:2018-08-20 11:05:58
【问题描述】:
from collections import defaultdict

a = defaultdict(list,
            {'./lec5.pdf': ['social'],
             './some 3.pdf': ['social']})

a.values()
Out[10]: dict_values([['social'], ['social'], []]) # One empty list at last

a.keys()
Out[11]: dict_keys(['./social', './some 3.pdf', 0]) #O at last 

我想了解在 a.values() 中从哪里创建一个空列表([]),而对于 a.keys(),0 是从哪里创建的。

【问题讨论】:

  • 这段代码没有给出那个输出。
  • 列表的内容是什么?如果是空列表:有你的答案
  • @Sharku: listdefaultdict 用法的一部分,而不是您所说的输入列表。
  • @RishuA 请提供可重现的样本。
  • 我已经更改了里面的内容,看来这就是为什么你不能像我一样得到相同的输出,给我一些时间会给你提供几乎类似的 dict..

标签: python python-3.x collections


【解决方案1】:

我用的是python3,结果不一样:

import collections

a = collections.defaultdict(list,
        {'./lec5.pdf': ['social'],
         './some 3.pdf': ['social']})

a.values()
Out[0]:dict_values([['social'], ['social']])

a.keys()
Out[1]:dict_keys(['./lec5.pdf', './some 3.pdf'])

尝试重新运行您的代码。

【讨论】:

  • 是的,在 Python-2.7 中也是如此,见上面我的评论。
【解决方案2】:

首先回答你的问题: 您可以更轻松地在 python 中初始化字典:

a = {'./lec5.pdf': ['social'],
    './some 3.pdf': ['social']}

print(a.values())
   out: dict_values([['social'], ['social']])
print(a.keys())
   out: dict_keys(['./lec5.pdf', './some 3.pdf'])

由于您需要帮助,我建议从要保存在目录中的所有文件中创建一个列表,然后创建目录并循环创建或复制每个文件的列表。

【讨论】:

  • 这是我保存在a中的一些集合的输出
猜你喜欢
  • 2018-01-15
  • 2017-09-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-27
  • 2011-10-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多