整合现有的第三方配方,用于对集和多集/袋进行分区。

PartitionSets的Python项目详细描述


分区集提供了一组由其他 多年的用户和麻省理工学院的许可。我稍微修改了一下 它们现在同样在Python2和Python3下工作。所有的虫子都是我的;-)

您可能会发现它对涉及小集合和多集合/包的任务很有用。

安装

一个简单的pip install PartitionSets就足够了。

用法

python代码中的典型用法如下:

#!/usr/bin/env python

from __future__ import print_function
from partitionsets import ordered_set
from partitionsets import partition

a_list = 'red green yellow blue'.split(" ")
an_oset = ordered_set.OrderedSet(a_list)
a_partition = partition.Partition(ordered_set)
for a_part in a_partition:
    print (a_part)

bin文件夹中的sriptpartition_sets.py可能提供有用的命令。 有关用法信息,请使用-hhelp选项运行它:

$> partition_sets.py -h
usage: partition_sets.py [-h] [-q | -v] [-o OUT_FILENAME] [-T {text,csv,json}]
                         [-b] [-m]
                         element [element ...]

partitioning of small sets with 25 or less members

positional arguments:
  element               define set as list of elements separated by spaces

optional arguments:
  -h, --help            show this help message and exit
  -q, --quiet
  -v, --verbosity       increase output verbosity
  -o OUT_FILENAME, --out-filename OUT_FILENAME
                        out file name if specified, else all sent to stdout
  -T {text,csv,json}, --type {text,csv,json}
                        type of output (format), defaults to text
  -b, --bell-numbers    export the Bell numbers known by package
  -m, --multi-set       handle elements as being par tof a multiset or bag

注释

请注意,此实现仅适用于具有25个成员或更少成员的集。

这种约束被认为是非常合理的,因为 整数索引)对于较大的数字开始溢出。记住:数字 每个附加构件的隔板都会急剧上升…

也要感谢

这个包仅仅包含了一些温和提供的菜谱(和评论) 在麻省理工学院的许可下通过几个人。我注意到的那些已经记在下面了。 任何遗漏的名字都是我的错。如果我接到通知,我会尽力 相应地更新、添加或删除下面列表中的项。

分区

  • 安东·弗雷德古尔
  • 克里斯·霍克

有序集

  • 唐·萨瓦茨基
  • 埃米尔墙
  • 雷蒙德·赫廷格

其他

有关进一步的参考,请参阅模块文件的注释。

参考文献

[a0001011]:“钟形或指数数:放置n个标记球的方法
http://oeis.org/A000110
[bell number]:维基百科条目bellu number
http://en.wikipedia.org/wiki/Bell_number
[oeis]:维基百科条目在线百科全书
http://en.wikipedia.org/wiki/On-Line_Encyclopedia_of_Integer_Sequences

[薄片8]:https://pypi.python.org/pypi/flake8

[ordsetimplpy]:http://code.activestate.com/recipes/576694/(与
来自don sawatzky评论的简化代码,这就足够了 对于此任务)

[部分复制]:http://code.activestate.com/recipes/577211/(r1)

[部分集合wp]:维基百科条目分区
http://en.wikipedia.org/wiki/Partition_of_a_set

[Pylint]:https://pypi.python.org/pypi/pylint

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java错误:无法解析方法   如何用相同的父标记和子标记在Java中解析XML?   日期使用Java中的时区偏移将本地时间转换为UTC   java如何在多进程、多线程环境中读取文件   WebView中的java弹出式对话框不在当前显示范围内,但在chrome浏览器中运行良好   只有2个参数的java递归二进制搜索方法   无法在java中调用函数   java JavaMail在Tomcat服务器上运行时停止工作   反射通过java程序生成、编译和运行java类   java Android:如何使ListView即使在应用程序关闭后仍保持禁用状态   在JAVA中识别匿名类实例   java渲染一个由三角形组成的立方体,在旋转时会产生奇怪的角度   函数式编程如何基于比较连续的列表元素将Java流减少为布尔值   java如何替换列表中的多个项目?   java Android如何获取随机sqlite数据?   java我已经将useSSL设置为false,但仍然收到警告   java使用动态变量生成jlabel   apachespark:java。lang.NoClassDefFoundError v2TableWithV1回退