diff options
author | Joern Hees <dev@joernhees.de> | 2015-02-24 18:07:23 +0100 |
---|---|---|
committer | Joern Hees <dev@joernhees.de> | 2015-02-24 18:07:23 +0100 |
commit | 13e2babb71988e7a777ff83ebad9bdfa864b7dae (patch) | |
tree | c86d440e3d4c957dd6058497a084a8b2b5e13066 | |
parent | 74c520fda5b444e7ca4fe8f4b5b7d5c20bf6196a (diff) | |
download | rdflib-13e2babb71988e7a777ff83ebad9bdfa864b7dae.tar.gz |
slight performance increase for graph.all_nodes()
set.update() seems to be faster than union and we can save the set
creation overhead:
```python
In [1]: %timeit s = set(range(1000)) ; s.update(range(10000))
1000 loops, best of 3: 419 µs per loop
In [2]: %timeit s = set(range(1000)) ; s.update(set(range(10000)))
1000 loops, best of 3: 584 µs per loop
In [3]: %timeit s = set(range(1000)) ; s.union(set(range(10000)))
1000 loops, best of 3: 610 µs per loop
```
-rw-r--r-- | rdflib/graph.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/rdflib/graph.py b/rdflib/graph.py index 1fb38ce7..dbbe67c8 100644 --- a/rdflib/graph.py +++ b/rdflib/graph.py @@ -1163,9 +1163,9 @@ class Graph(Node): return False def all_nodes(self): - obj = set(self.objects()) - allNodes = obj.union(set(self.subjects())) - return allNodes + res = set(self.objects()) + res.update(self.subjects()) + return res def resource(self, identifier): """Create a new ``Resource`` instance. |