Skip to content

Commit e35b293

Browse files
committed
Initial move
1 parent afd6f1c commit e35b293

34 files changed

Lines changed: 4317 additions & 20 deletions

.coveragerc

Lines changed: 0 additions & 5 deletions
This file was deleted.

.travis.yml

Lines changed: 0 additions & 15 deletions
This file was deleted.

pygraph/__init__.py

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
# Copyright (c) 2007-2012 Pedro Matiello <pmatiello@gmail.com>
2+
#
3+
# Permission is hereby granted, free of charge, to any person
4+
# obtaining a copy of this software and associated documentation
5+
# files (the "Software"), to deal in the Software without
6+
# restriction, including without limitation the rights to use,
7+
# copy, modify, merge, publish, distribute, sublicense, and/or sell
8+
# copies of the Software, and to permit persons to whom the
9+
# Software is furnished to do so, subject to the following
10+
# conditions:
11+
12+
# The above copyright notice and this permission notice shall be
13+
# included in all copies or substantial portions of the Software.
14+
15+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16+
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
17+
# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18+
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
19+
# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
20+
# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21+
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22+
# OTHER DEALINGS IN THE SOFTWARE.
23+
24+
25+
"""
26+
B{python-graph}
27+
28+
A library for working with graphs in Python.
29+
30+
@version: 1.8.2
31+
32+
L{Data structure<pygraph.classes>} classes are located at C{pygraph.classes}.
33+
34+
L{Exception<pygraph.classes.exceptions>} classes are located at C{pygraph.classes.exceptions}.
35+
36+
L{Search filters<pygraph.algorithms.filters>} are located at C{pygraph.algorithms.filters}.
37+
38+
L{Heuristics<pygraph.algorithms.heuristics>} for the A* algorithm are exposed in
39+
C{pygraph.algorithms.heuristics}.
40+
41+
A quick introductory example:
42+
43+
>>> # Import the module and instantiate a graph object
44+
>>> from pygraph.classes.graph import graph
45+
>>> from pygraph.algorithms.searching import depth_first_search
46+
>>> gr = graph()
47+
>>> # Add nodes
48+
>>> gr.add_nodes(['X','Y','Z'])
49+
>>> gr.add_nodes(['A','B','C'])
50+
>>> # Add edges
51+
>>> gr.add_edge(('X','Y'))
52+
>>> gr.add_edge(('X','Z'))
53+
>>> gr.add_edge(('A','B'))
54+
>>> gr.add_edge(('A','C'))
55+
>>> gr.add_edge(('Y','B'))
56+
>>> # Depth first search rooted on node X
57+
>>> st, pre, post = depth_first_search(gr, root='X')
58+
>>> # Print the spanning tree
59+
>>> print st
60+
{'A': 'B', 'C': 'A', 'B': 'Y', 'Y': 'X', 'X': None, 'Z': 'X'}
61+
"""
62+
63+
__import__('pkg_resources').declare_namespace(__name__)

pygraph/algorithms/__init__.py

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Copyright (c) 2008-2009 Pedro Matiello <pmatiello@gmail.com>
2+
#
3+
# Permission is hereby granted, free of charge, to any person
4+
# obtaining a copy of this software and associated documentation
5+
# files (the "Software"), to deal in the Software without
6+
# restriction, including without limitation the rights to use,
7+
# copy, modify, merge, publish, distribute, sublicense, and/or sell
8+
# copies of the Software, and to permit persons to whom the
9+
# Software is furnished to do so, subject to the following
10+
# conditions:
11+
12+
# The above copyright notice and this permission notice shall be
13+
# included in all copies or substantial portions of the Software.
14+
15+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16+
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
17+
# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18+
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
19+
# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
20+
# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21+
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22+
# OTHER DEALINGS IN THE SOFTWARE.
23+
24+
25+
"""
26+
Algorithms
27+
28+
This subpackage contains a set of modules, each one of them containing some algorithms.
29+
"""
30+
31+
__import__('pkg_resources').declare_namespace(__name__)

0 commit comments

Comments
 (0)