A WeakSet class for storing objects using weak references.
Project description
Python 2.7 & 3.1 include a WeakSet class, a collection for storing objects using weak references (see the Python weakref module).
This project is a backport of the weakrefset module, and tests, for Python 2.5 and 2.6. The tests require the unittest2 package.
Mercurial repository & issue tracker: http://code.google.com/p/weakrefset/
You can install it with: pip install weakrefset
Usage is straightforward. You don’t need to deal with weak references themselves, the WeakSet manages the references and you can add / remove / iterate over your objects directly:
>>> from weakrefset import WeakSet >>> class Foo(object): pass ... >>> f1 = Foo() >>> f2 = Foo() >>> refs = WeakSet([f1, f2]) >>> f3 = Foo() >>> refs.add(f3) >>> refs.remove(f1) >>> del f2 >>> f3 in refs True >>> for f in refs: ... print f ... <__main__.Foo object at 0x40e410>
To be compatible with Python 2.5, 2.6 and future versions of Python you can import it like this:
try: # location in Python 2.7 and 3.1 from weakref import WeakSet except ImportError: # separately installed from weakrefset import WeakSet
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file weakrefset-1.0.0.tar.gz
.
File metadata
- Download URL: weakrefset-1.0.0.tar.gz
- Upload date:
- Size: 2.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1199c768153c2f4ac123f2a57e93a28185d843b09864ea3f4219d383d1cc16aa |
|
MD5 | a5d93c85dd296886516528172fc512a4 |
|
BLAKE2b-256 | d2cd8c62dab782ac0abcacaff31a3c5919eb8cd42b6936ab70b0d8a0a221ec5e |