Browse code
...
Showing 19 changed files
- COPYING
- Y_combinator.py
- a.yml
- b.yml
- c.yml
- compare_dicts.py
- dupkeydict.py
- hier.py
- lazy_attributes.py
- memoize_and_partialfuncs.py
- modpath
- piecewise_function.py
- put_str.py
- pydit
- registry.py
- splitsnippets.py
- unittest_skeleton.py
- unsorted/pythonsnippets_asd.py
- unsorted/pythonsnippets_oOzjm0.py
... | ... |
@@ -1,3 +1,34 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
31 |
+ |
|
1 | 32 |
|
2 | 33 |
def f(h): |
3 | 34 |
def g(n): |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
a: |
2 | 32 |
- 1 |
3 | 33 |
- 2 |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
a: |
2 | 32 |
- 1 |
3 | 33 |
- 2 |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
a: |
2 | 32 |
- 1 |
3 | 33 |
- 2 |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
|
2 | 32 |
def cmp_dicts(dct, dct1): |
3 | 33 |
cp = set() |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
import collections |
2 | 32 |
|
3 | 33 |
class dkeydict(collections.Mapping): |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
import itertools |
2 | 32 |
def dict_merge(dct1, dct2): |
3 | 33 |
commonkeys = set(dct1) & set(dct2) |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
class LazyLoad(object): |
2 | 32 |
def __init__(self, __func_, *args, **kwargs): |
3 | 33 |
self.__func = __func_ |
... | ... |
@@ -18,4 +48,4 @@ class a(object): |
18 | 48 |
c = LazyLoad(func, 2,3,4) |
19 | 49 |
d = LazyLoad(func, 3,4,5) |
20 | 50 |
__e = LazyLoad(func, 4,5,6) |
21 |
- def __str__(self): return str(self.__e) |
|
22 | 51 |
\ No newline at end of file |
52 |
+ def __str__(self): return str(self.__e) |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
import functools |
2 | 32 |
|
3 | 33 |
def memoize(func): |
... | ... |
@@ -51,4 +81,4 @@ def sum(a,b): |
51 | 81 |
def fib(n): |
52 | 82 |
if n < 1: raise ValueError, "not n >= 1" |
53 | 83 |
else: |
54 |
- return fib(n-1) + fib(n-2) |
|
55 | 84 |
\ No newline at end of file |
85 |
+ return fib(n-1) + fib(n-2) |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
#!/usr/bin/python -O |
2 | 32 |
"""Print the path to a python module""" |
3 | 33 |
import os |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
import functools |
2 | 32 |
class piecewise_function(object): |
3 | 33 |
def __init__(self, fallback): |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
def put_str(store, str, v): |
2 | 32 |
cur = store |
3 | 33 |
for c in str: |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
#!/usr/bin/env python -O |
2 | 32 |
""" |
3 | 33 |
Edit a python file by its module name (i.e. twisted.internet.thread) |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
import contextlib |
2 | 32 |
import functools |
3 | 33 |
|
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
""" |
2 | 32 |
Split a file of python snippets into its constituent snippets, splitting |
3 | 33 |
on lines whose first non-whitespace character is # |
... | ... |
@@ -1,3 +1,33 @@ |
1 |
+# Copyright (c) 2011 Edward Langley |
|
2 |
+# All rights reserved. |
|
3 |
+# |
|
4 |
+# Redistribution and use in source and binary forms, with or without |
|
5 |
+# modification, are permitted provided that the following conditions |
|
6 |
+# are met: |
|
7 |
+# |
|
8 |
+# Redistributions of source code must retain the above copyright notice, |
|
9 |
+# this list of conditions and the following disclaimer. |
|
10 |
+# |
|
11 |
+# Redistributions in binary form must reproduce the above copyright |
|
12 |
+# notice, this list of conditions and the following disclaimer in the |
|
13 |
+# documentation and/or other materials provided with the distribution. |
|
14 |
+# |
|
15 |
+# Neither the name of the project's author nor the names of its |
|
16 |
+# contributors may be used to endorse or promote products derived from |
|
17 |
+# this software without specific prior written permission. |
|
18 |
+# |
|
19 |
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
20 |
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
21 |
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
|
22 |
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
23 |
+# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
24 |
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED |
|
25 |
+# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|
26 |
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|
27 |
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|
28 |
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|
29 |
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
30 |
+ |
|
1 | 31 |
import <module> |
2 | 32 |
import unittest |
3 | 33 |
|