summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoern Hees <dev@joernhees.de>2015-02-24 18:07:23 +0100
committerJoern Hees <dev@joernhees.de>2015-02-24 18:07:23 +0100
commit13e2babb71988e7a777ff83ebad9bdfa864b7dae (patch)
treec86d440e3d4c957dd6058497a084a8b2b5e13066
parent74c520fda5b444e7ca4fe8f4b5b7d5c20bf6196a (diff)
downloadrdflib-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.py6
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.