当前位置: 首页 > 知识库问答 >
问题:

什么是最好的方法来打开一个冻集列表?

齐高阳
2023-03-14

不允许使用任何导入。

输入:

[frozenset({1}), frozenset({32}), frozenset({40}), frozenset(), frozenset({76})]

所需输出:

[1,32,40,76]

我在找一个简洁的方法。我知道如何用多行for循环来解包它。

共有2个答案

杜元明
2023-03-14

我们可以在frozenset的列表中迭代,并将它们的数据类型更改为list(请参阅此处)

l = [frozenset({1}), frozenset({32}), frozenset({40}), frozenset(), frozenset({76})]
arr = []
for element in l:
    new = list(element)
    if new != []:
        arr.append(new[0])
print(arr)
周朗
2023-03-14

您可以使用列表理解来生成输出。为了提取每个frozenset中的值,您可以在其上创建一个迭代器,并使用迭代器的next()方法获取第一个且唯一的值,如果它不为空:

lst =  [frozenset({1}), frozenset({32}), frozenset({40}), frozenset(), frozenset({76})]

out = [next(iter(fset)) for fset in lst if fset]

print(out)
# [1, 32, 40, 76]
 类似资料:
  • 我写了一个代码来检查两个列表之间的交集。我只需要有交集。有没有更快的方法。

  • 问题内容: 主管的指示:“我要避免在其中添加任何逻辑models.py。从现在开始,让我们将其用作访问数据库的类,并将所有逻辑保留在使用模型类或包装它们的外部类中。” 我觉得这是错误的方法。我觉得将逻辑排除在模型之外只是为了减小文件大小是一个坏主意。如果逻辑在模型中是最好的,那么无论文件大小如何,它实际上都是应该去的地方。 那么有没有一种简单的方法可以只使用include?用PHP讲,我想向主管建

  • 我和JNI有一个Android项目。在实现侦听器类的CPP文件中,有一个回调x()。调用x()函数时,我想调用java类中的另一个函数。然而,为了调用该java函数,我需要访问JNIEnv*。 我知道在回调的同一个cpp文件中,有一个函数: 当

  • 问题内容: 假设我有两个或两个以上相同长度的列表。遍历它们的好方法是什么? ,是列表。 要么 还是我缺少任何变体? 使用一个相对于另一个有什么特别的优势吗? 问题答案: 通常的方法是使用: 这将停止两个iterables时较短且耗尽。另外值得注意的是:(仅适用于Python 2)和(适用于Python 3)。

  • 我将PHP和MySQL用于社交网络系统 我有MySQL表命名为member_feed,在这个表中我为每个成员保存提要,我的表结构是: 在这个表中,我有超过1.2亿条记录,每个成员都有一套记录。 我目前的工作是从MySQL迁移到MongoDB,我是MongoDB的新手。所以我需要将此表转换为MongoDB中的集合。我想为member_feed表建立我的收藏,比如: 1-表格中的每一行member_f

  • 我需要根据一些配置数据启动多个独立的周期性任务——总数事先不知道。例如,我想检查具有不同间隔和不同参数的不同目录的内容,其中列表和参数是从配置中读取的。 在我看来,夸克斯调度器只能调度固定的、预先已知的方法。动态/编程调度的最佳方法是什么?<代码>vertx.set周期 是正确的方法还是我应该以某种方式访问Quartz?