跟踪添加和删除的元素的集合实现。

history-set的Python项目详细描述


跟踪添加和删除的元素的集合实现。

用法

>>>fromhistory_setimportHistorySet>>>history_set=HistorySet([1,2,3])>>>history_set.add(4)>>>history_set# Prints: {1, 2, 3, 4}>>>history_set.added()# Prints: {4}>>>history_set.remove(1)>>>history_set# Prints: {2, 3, 4}>>>history_set.removed()# Prints: {1}>>>history_set.reset()>>>history_set.added()# Prints: set()>>>history_set.removed()# Prints: set()

特殊情况

默认情况下,如果添加了一个元素并随后删除了它,则它将不会 在历史记录中跟踪

>>>history_set=HistorySet([1,2,3])>>>history_set.add(4)>>>history_set.remove(4)>>>history_set.added()# Prints: set()>>>history_set.removed()# Prints: set()

如果需要跟踪这些元素,可以构造 带有eidetic关键字参数的对象

>>>history_set=HistorySet([1,2,3],eidetic=True)>>>history_set.add(4)>>>history_set.remove(4)>>>history_set.added()# Prints: {4}>>>history_set.removed()# Prints: {4}

默认情况下,reset()方法将清除整个历史记录

>>>history_set=HistorySet([1,2,3])>>>history_set.add(4)>>>history_set.added()# Prints: {4}>>>history_set.remove(2)>>>history_set.removed()# Prints: {2}>>>history_set.reset()>>>history_set.added()# Prints: set()>>>history_set.removed()# Prints: set()

如果只需要重置added()removed()历史记录, 可以用addedremovedbooleans调用reset方法 用于指定要重置的历史记录的值

>>>history_set=HistorySet([1,2,3])>>>history_set.add(4)>>>history_set.added()# Prints: {4}>>>history_set.remove(2)>>>history_set.removed()# Prints: {2}>>>history_set.reset(added=True)>>>history_set.added()# Prints: set()>>>history_set.removed()# Prints: {2}

测试

您可以使用 tox

tox

发布

要发布此包的新版本,您的pypi用户无需 添加到项目中。(请TJAART为您提供访问权限)

# Update version number in setup.py

python setup.py sdist
twine upload dist/*

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

推荐PyPI第三方库


热门话题
使用多个参数的枚举   从Oracle到Redis的java复制表   java如何保护tomcat服务器中的db用户名和密码。xml   java如何使用注册密钥保护移动应用程序?   java在什么情况下超类不应该是抽象的?   java Backspace键在macOS上的Scala REPL中不起作用   arduino Java+Uno+RFID:调用方法读取Java中的RFID   带有where语句中集合的java JPA查询   java如何向基于Tyrus注释的客户端添加请求头   java对我的二进制搜索算法的反馈   java重新访问数据库时文件的内容不正确   用户在字符串中输入值后退出While循环(Java)   java如何在Maven中的多个项目之间共享项目依赖关系?   java Close从未在数据库上被明确调用   在java中从文件读入布尔矩阵   Java:如何使用父节点将XML流拆分为小型XML文档。VTDXML