diff --git a/dicts/dialcodes.py b/03-dict-set/dialcodes.py similarity index 100% rename from dicts/dialcodes.py rename to 03-dict-set/dialcodes.py diff --git a/dicts/index.py b/03-dict-set/index.py similarity index 100% rename from dicts/index.py rename to 03-dict-set/index.py diff --git a/dicts/index0.py b/03-dict-set/index0.py similarity index 94% rename from dicts/index0.py rename to 03-dict-set/index0.py index a61dca2..e1fa28f 100644 --- a/dicts/index0.py +++ b/03-dict-set/index0.py @@ -23,6 +23,6 @@ with open(sys.argv[1], encoding='utf-8') as fp: index[word] = occurrences # <3> # print in alphabetical order -for word in sorted(index, key=str.upper): +for word in sorted(index, key=str.upper): # <4> print(word, index[word]) # END INDEX0 diff --git a/dicts/index_default.py b/03-dict-set/index_default.py similarity index 100% rename from dicts/index_default.py rename to 03-dict-set/index_default.py diff --git a/dicts/strkeydict.py b/03-dict-set/strkeydict.py similarity index 100% rename from dicts/strkeydict.py rename to 03-dict-set/strkeydict.py diff --git a/dicts/strkeydict0.py b/03-dict-set/strkeydict0.py similarity index 100% rename from dicts/strkeydict0.py rename to 03-dict-set/strkeydict0.py diff --git a/dicts/transformdict.py b/03-dict-set/transformdict.py similarity index 100% rename from dicts/transformdict.py rename to 03-dict-set/transformdict.py diff --git a/strings-bytes/default_encodings.py b/04-text-byte/default_encodings.py similarity index 100% rename from strings-bytes/default_encodings.py rename to 04-text-byte/default_encodings.py diff --git a/strings-bytes/normeq.py b/04-text-byte/normeq.py similarity index 100% rename from strings-bytes/normeq.py rename to 04-text-byte/normeq.py diff --git a/strings-bytes/numerics_demo.py b/04-text-byte/numerics_demo.py similarity index 100% rename from strings-bytes/numerics_demo.py rename to 04-text-byte/numerics_demo.py diff --git a/strings-bytes/ramanujan.py b/04-text-byte/ramanujan.py similarity index 100% rename from strings-bytes/ramanujan.py rename to 04-text-byte/ramanujan.py diff --git a/strings-bytes/sanitize.py b/04-text-byte/sanitize.py similarity index 100% rename from strings-bytes/sanitize.py rename to 04-text-byte/sanitize.py diff --git a/functions/bingo.py b/05-1class-func/bingo.py similarity index 100% rename from functions/bingo.py rename to 05-1class-func/bingo.py diff --git a/functions/clip.py b/05-1class-func/clip.py similarity index 100% rename from functions/clip.py rename to 05-1class-func/clip.py diff --git a/functions/clip_annot.py b/05-1class-func/clip_annot.py similarity index 93% rename from functions/clip_annot.py rename to 05-1class-func/clip_annot.py index d0ad564..1fd7ff1 100644 --- a/functions/clip_annot.py +++ b/05-1class-func/clip_annot.py @@ -19,7 +19,7 @@ # BEGIN CLIP_ANNOT -def clip(text:str, max_len:'int > 0'=80) -> str: +def clip(text:str, max_len:'int > 0'=80) -> str: # <1> """Return text clipped at the last space before or after max_len """ end = None diff --git a/functions/clip_annot_signature.rst b/05-1class-func/clip_annot_signature.rst similarity index 100% rename from functions/clip_annot_signature.rst rename to 05-1class-func/clip_annot_signature.rst diff --git a/functions/clip_introspection.rst b/05-1class-func/clip_introspection.rst similarity index 100% rename from functions/clip_introspection.rst rename to 05-1class-func/clip_introspection.rst diff --git a/functions/clip_signature.rst b/05-1class-func/clip_signature.rst similarity index 100% rename from functions/clip_signature.rst rename to 05-1class-func/clip_signature.rst diff --git a/functions/tagger.py b/05-1class-func/tagger.py similarity index 100% rename from functions/tagger.py rename to 05-1class-func/tagger.py diff --git a/patterns-func/classic_strategy.py b/06-dp-1class-func/classic_strategy.py similarity index 98% rename from patterns-func/classic_strategy.py rename to 06-dp-1class-func/classic_strategy.py index 41bd437..0d8f7d6 100644 --- a/patterns-func/classic_strategy.py +++ b/06-dp-1class-func/classic_strategy.py @@ -73,7 +73,7 @@ class Promotion(ABC): # the Strategy: an Abstract Base Class @abstractmethod def discount(self, order): - """Return discount as an positive dollar amount""" + """Return discount as a positive dollar amount""" class FidelityPromo(Promotion): # first Concrete Strategy diff --git a/patterns-func/promotions.py b/06-dp-1class-func/promotions.py similarity index 100% rename from patterns-func/promotions.py rename to 06-dp-1class-func/promotions.py diff --git a/patterns-func/strategy.py b/06-dp-1class-func/strategy.py similarity index 100% rename from patterns-func/strategy.py rename to 06-dp-1class-func/strategy.py diff --git a/patterns-func/strategy_best.py b/06-dp-1class-func/strategy_best.py similarity index 100% rename from patterns-func/strategy_best.py rename to 06-dp-1class-func/strategy_best.py diff --git a/patterns-func/strategy_best2.py b/06-dp-1class-func/strategy_best2.py similarity index 100% rename from patterns-func/strategy_best2.py rename to 06-dp-1class-func/strategy_best2.py diff --git a/patterns-func/strategy_best3.py b/06-dp-1class-func/strategy_best3.py similarity index 100% rename from patterns-func/strategy_best3.py rename to 06-dp-1class-func/strategy_best3.py diff --git a/decorators/average.py b/07-closure-deco/average.py similarity index 100% rename from decorators/average.py rename to 07-closure-deco/average.py diff --git a/decorators/average_oo.py b/07-closure-deco/average_oo.py similarity index 100% rename from decorators/average_oo.py rename to 07-closure-deco/average_oo.py diff --git a/decorators/clockdeco_demo.py b/07-closure-deco/clockdeco_demo.py similarity index 100% rename from decorators/clockdeco_demo.py rename to 07-closure-deco/clockdeco_demo.py diff --git a/decorators/clockdeco_param.py b/07-closure-deco/clockdeco_param.py similarity index 100% rename from decorators/clockdeco_param.py rename to 07-closure-deco/clockdeco_param.py diff --git a/decorators/clockdeco_param_demo1.py b/07-closure-deco/clockdeco_param_demo1.py similarity index 100% rename from decorators/clockdeco_param_demo1.py rename to 07-closure-deco/clockdeco_param_demo1.py diff --git a/decorators/clockdeco_param_demo2.py b/07-closure-deco/clockdeco_param_demo2.py similarity index 100% rename from decorators/clockdeco_param_demo2.py rename to 07-closure-deco/clockdeco_param_demo2.py diff --git a/decorators/fibo_demo.py b/07-closure-deco/fibo_demo.py similarity index 100% rename from decorators/fibo_demo.py rename to 07-closure-deco/fibo_demo.py diff --git a/decorators/fibo_demo_lru.py b/07-closure-deco/fibo_demo_lru.py similarity index 100% rename from decorators/fibo_demo_lru.py rename to 07-closure-deco/fibo_demo_lru.py diff --git a/decorators/generic.py b/07-closure-deco/generic.py similarity index 100% rename from decorators/generic.py rename to 07-closure-deco/generic.py diff --git a/closures/global_x_local.rst b/07-closure-deco/global_x_local.rst similarity index 100% rename from closures/global_x_local.rst rename to 07-closure-deco/global_x_local.rst diff --git a/decorators/registration.py b/07-closure-deco/registration.py similarity index 100% rename from decorators/registration.py rename to 07-closure-deco/registration.py diff --git a/decorators/registration_abridged.py b/07-closure-deco/registration_abridged.py similarity index 100% rename from decorators/registration_abridged.py rename to 07-closure-deco/registration_abridged.py diff --git a/decorators/registration_param.py b/07-closure-deco/registration_param.py similarity index 84% rename from decorators/registration_param.py rename to 07-closure-deco/registration_param.py index ce81975..7cbea22 100644 --- a/decorators/registration_param.py +++ b/07-closure-deco/registration_param.py @@ -8,9 +8,8 @@ def register(active=True): # <2> % (active, func)) if active: # <4> registry.add(func) - else: # <5> - if func in registry: - registry.remove(func) + else: + registry.discard(func) # <5> return func # <6> return decorate # <7> diff --git a/decorators/strategy_best4.py b/07-closure-deco/strategy_best4.py similarity index 100% rename from decorators/strategy_best4.py rename to 07-closure-deco/strategy_best4.py diff --git a/decorators/average_broken.py b/attic/decorators/average_broken.py similarity index 100% rename from decorators/average_broken.py rename to attic/decorators/average_broken.py diff --git a/decorators/average_fixed.py b/attic/decorators/average_fixed.py similarity index 100% rename from decorators/average_fixed.py rename to attic/decorators/average_fixed.py diff --git a/decorators/average_fixed_py2.py b/attic/decorators/average_fixed_py2.py similarity index 100% rename from decorators/average_fixed_py2.py rename to attic/decorators/average_fixed_py2.py diff --git a/decorators/average_partial.py b/attic/decorators/average_partial.py similarity index 100% rename from decorators/average_partial.py rename to attic/decorators/average_partial.py diff --git a/decorators/average_py2.py b/attic/decorators/average_py2.py similarity index 100% rename from decorators/average_py2.py rename to attic/decorators/average_py2.py diff --git a/decorators/clockdeco.py b/attic/decorators/clockdeco.py similarity index 100% rename from decorators/clockdeco.py rename to attic/decorators/clockdeco.py diff --git a/decorators/clockdeco2.py b/attic/decorators/clockdeco2.py similarity index 100% rename from decorators/clockdeco2.py rename to attic/decorators/clockdeco2.py diff --git a/decorators/clockdeco2_demo.py b/attic/decorators/clockdeco2_demo.py similarity index 100% rename from decorators/clockdeco2_demo.py rename to attic/decorators/clockdeco2_demo.py diff --git a/decorators/clockdeco2_tests.py b/attic/decorators/clockdeco2_tests.py similarity index 100% rename from decorators/clockdeco2_tests.py rename to attic/decorators/clockdeco2_tests.py diff --git a/decorators/clockdeco_demo2.py b/attic/decorators/clockdeco_demo2.py similarity index 100% rename from decorators/clockdeco_demo2.py rename to attic/decorators/clockdeco_demo2.py diff --git a/decorators/clockdeco_demo3.py b/attic/decorators/clockdeco_demo3.py similarity index 100% rename from decorators/clockdeco_demo3.py rename to attic/decorators/clockdeco_demo3.py diff --git a/decorators/clockdeco_tests.py b/attic/decorators/clockdeco_tests.py similarity index 100% rename from decorators/clockdeco_tests.py rename to attic/decorators/clockdeco_tests.py diff --git a/decorators/currency.py b/attic/decorators/currency.py similarity index 100% rename from decorators/currency.py rename to attic/decorators/currency.py diff --git a/decorators/fibonacci.py b/attic/decorators/fibonacci.py similarity index 100% rename from decorators/fibonacci.py rename to attic/decorators/fibonacci.py diff --git a/decorators/local_demo.py b/attic/decorators/local_demo.py similarity index 100% rename from decorators/local_demo.py rename to attic/decorators/local_demo.py diff --git a/decorators/stacked_demo.py b/attic/decorators/stacked_demo.py similarity index 100% rename from decorators/stacked_demo.py rename to attic/decorators/stacked_demo.py diff --git a/dicts/dict_perftest.py b/attic/dicts/dict_perftest.py similarity index 100% rename from dicts/dict_perftest.py rename to attic/dicts/dict_perftest.py diff --git a/dicts/index_alex.py b/attic/dicts/index_alex.py similarity index 100% rename from dicts/index_alex.py rename to attic/dicts/index_alex.py diff --git a/dicts/set_perftest.py b/attic/dicts/set_perftest.py similarity index 100% rename from dicts/set_perftest.py rename to attic/dicts/set_perftest.py diff --git a/dicts/strkeydict0_userdictsub.py b/attic/dicts/strkeydict0_userdictsub.py similarity index 100% rename from dicts/strkeydict0_userdictsub.py rename to attic/dicts/strkeydict0_userdictsub.py diff --git a/dicts/strkeydict_dictsub.py b/attic/dicts/strkeydict_dictsub.py similarity index 100% rename from dicts/strkeydict_dictsub.py rename to attic/dicts/strkeydict_dictsub.py diff --git a/dicts/test_transformdict.py b/attic/dicts/test_transformdict.py similarity index 100% rename from dicts/test_transformdict.py rename to attic/dicts/test_transformdict.py diff --git a/functions/accgen.py b/attic/functions/accgen.py similarity index 100% rename from functions/accgen.py rename to attic/functions/accgen.py diff --git a/functions/attrgetter_demo.py b/attic/functions/attrgetter_demo.py similarity index 100% rename from functions/attrgetter_demo.py rename to attic/functions/attrgetter_demo.py diff --git a/functions/attrgetter_demo.rst b/attic/functions/attrgetter_demo.rst similarity index 100% rename from functions/attrgetter_demo.rst rename to attic/functions/attrgetter_demo.rst diff --git a/functions/hello.py b/attic/functions/hello.py similarity index 100% rename from functions/hello.py rename to attic/functions/hello.py diff --git a/functions/strkeydict2.py b/attic/functions/strkeydict2.py similarity index 100% rename from functions/strkeydict2.py rename to attic/functions/strkeydict2.py diff --git a/sequences/bisect_demo_pos.py b/attic/sequences/bisect_demo_pos.py similarity index 100% rename from sequences/bisect_demo_pos.py rename to attic/sequences/bisect_demo_pos.py diff --git a/sequences/bisect_find.py b/attic/sequences/bisect_find.py similarity index 100% rename from sequences/bisect_find.py rename to attic/sequences/bisect_find.py diff --git a/sequences/bisect_in.py b/attic/sequences/bisect_in.py similarity index 100% rename from sequences/bisect_in.py rename to attic/sequences/bisect_in.py diff --git a/sequences/bisect_time.py b/attic/sequences/bisect_time.py similarity index 100% rename from sequences/bisect_time.py rename to attic/sequences/bisect_time.py diff --git a/sequences/dis_iadd_to_item.ods b/attic/sequences/dis_iadd_to_item.ods similarity index 100% rename from sequences/dis_iadd_to_item.ods rename to attic/sequences/dis_iadd_to_item.ods diff --git a/sequences/dis_iadd_to_item.txt b/attic/sequences/dis_iadd_to_item.txt similarity index 100% rename from sequences/dis_iadd_to_item.txt rename to attic/sequences/dis_iadd_to_item.txt diff --git a/sequences/frenchdeck2.doctest b/attic/sequences/frenchdeck2.doctest similarity index 100% rename from sequences/frenchdeck2.doctest rename to attic/sequences/frenchdeck2.doctest diff --git a/sequences/frenchdeck2.py b/attic/sequences/frenchdeck2.py similarity index 100% rename from sequences/frenchdeck2.py rename to attic/sequences/frenchdeck2.py diff --git a/sequences/metro_areas.py b/attic/sequences/metro_areas.py similarity index 100% rename from sequences/metro_areas.py rename to attic/sequences/metro_areas.py diff --git a/sequences/metro_areas.txt b/attic/sequences/metro_areas.txt similarity index 100% rename from sequences/metro_areas.txt rename to attic/sequences/metro_areas.txt diff --git a/sequences/named_slices.py b/attic/sequences/named_slices.py similarity index 100% rename from sequences/named_slices.py rename to attic/sequences/named_slices.py diff --git a/sequences/sentence.doctest b/attic/sequences/sentence.doctest similarity index 100% rename from sequences/sentence.doctest rename to attic/sequences/sentence.doctest diff --git a/sequences/sentence.py b/attic/sequences/sentence.py similarity index 100% rename from sequences/sentence.py rename to attic/sequences/sentence.py diff --git a/sequences/sentence_slice.doctest b/attic/sequences/sentence_slice.doctest similarity index 100% rename from sequences/sentence_slice.doctest rename to attic/sequences/sentence_slice.doctest diff --git a/sequences/sentence_slice.py b/attic/sequences/sentence_slice.py similarity index 100% rename from sequences/sentence_slice.py rename to attic/sequences/sentence_slice.py diff --git a/sequences/slice_dump.py b/attic/sequences/slice_dump.py similarity index 100% rename from sequences/slice_dump.py rename to attic/sequences/slice_dump.py diff --git a/sequences/slice_test.py b/attic/sequences/slice_test.py similarity index 100% rename from sequences/slice_test.py rename to attic/sequences/slice_test.py diff --git a/sequences/slice_viewer.py b/attic/sequences/slice_viewer.py similarity index 100% rename from sequences/slice_viewer.py rename to attic/sequences/slice_viewer.py diff --git a/sequences/str_concat.py b/attic/sequences/str_concat.py similarity index 100% rename from sequences/str_concat.py rename to attic/sequences/str_concat.py diff --git a/sequences/table.py b/attic/sequences/table.py similarity index 100% rename from sequences/table.py rename to attic/sequences/table.py diff --git a/sequences/tuples.doctest b/attic/sequences/tuples.doctest similarity index 100% rename from sequences/tuples.doctest rename to attic/sequences/tuples.doctest diff --git a/sequences/war-and-peace.txt b/attic/sequences/war-and-peace.txt similarity index 100% rename from sequences/war-and-peace.txt rename to attic/sequences/war-and-peace.txt diff --git a/strings-bytes/cafe-gr.txt b/attic/strings-bytes/cafe-gr.txt similarity index 100% rename from strings-bytes/cafe-gr.txt rename to attic/strings-bytes/cafe-gr.txt diff --git a/strings-bytes/cafe.txt b/attic/strings-bytes/cafe.txt similarity index 100% rename from strings-bytes/cafe.txt rename to attic/strings-bytes/cafe.txt diff --git a/strings-bytes/casefold_demo.py b/attic/strings-bytes/casefold_demo.py similarity index 100% rename from strings-bytes/casefold_demo.py rename to attic/strings-bytes/casefold_demo.py diff --git a/strings-bytes/category_demo.py b/attic/strings-bytes/category_demo.py similarity index 100% rename from strings-bytes/category_demo.py rename to attic/strings-bytes/category_demo.py diff --git a/strings-bytes/charfinder.py b/attic/strings-bytes/charfinder.py similarity index 100% rename from strings-bytes/charfinder.py rename to attic/strings-bytes/charfinder.py diff --git a/strings-bytes/currency_demo.py b/attic/strings-bytes/currency_demo.py similarity index 100% rename from strings-bytes/currency_demo.py rename to attic/strings-bytes/currency_demo.py diff --git a/strings-bytes/encodings_demo.py b/attic/strings-bytes/encodings_demo.py similarity index 100% rename from strings-bytes/encodings_demo.py rename to attic/strings-bytes/encodings_demo.py diff --git a/strings-bytes/identifier_norm.py b/attic/strings-bytes/identifier_norm.py similarity index 100% rename from strings-bytes/identifier_norm.py rename to attic/strings-bytes/identifier_norm.py diff --git a/strings-bytes/identifier_norm_writer.py b/attic/strings-bytes/identifier_norm_writer.py similarity index 100% rename from strings-bytes/identifier_norm_writer.py rename to attic/strings-bytes/identifier_norm_writer.py diff --git a/strings-bytes/nfc_demo.py b/attic/strings-bytes/nfc_demo.py similarity index 100% rename from strings-bytes/nfc_demo.py rename to attic/strings-bytes/nfc_demo.py diff --git a/strings-bytes/nfk_demo.py b/attic/strings-bytes/nfk_demo.py similarity index 100% rename from strings-bytes/nfk_demo.py rename to attic/strings-bytes/nfk_demo.py diff --git a/strings-bytes/numerics.py b/attic/strings-bytes/numerics.py similarity index 100% rename from strings-bytes/numerics.py rename to attic/strings-bytes/numerics.py diff --git a/strings-bytes/numerics_demo.txt b/attic/strings-bytes/numerics_demo.txt similarity index 100% rename from strings-bytes/numerics_demo.txt rename to attic/strings-bytes/numerics_demo.txt diff --git a/strings-bytes/ola.py b/attic/strings-bytes/ola.py similarity index 100% rename from strings-bytes/ola.py rename to attic/strings-bytes/ola.py diff --git a/strings-bytes/plane_count.py b/attic/strings-bytes/plane_count.py similarity index 100% rename from strings-bytes/plane_count.py rename to attic/strings-bytes/plane_count.py diff --git a/strings-bytes/sorting.py b/attic/strings-bytes/sorting.py similarity index 100% rename from strings-bytes/sorting.py rename to attic/strings-bytes/sorting.py diff --git a/strings-bytes/sorting_uca.py b/attic/strings-bytes/sorting_uca.py similarity index 100% rename from strings-bytes/sorting_uca.py rename to attic/strings-bytes/sorting_uca.py diff --git a/strings-bytes/sorting_uca.txt b/attic/strings-bytes/sorting_uca.txt similarity index 100% rename from strings-bytes/sorting_uca.txt rename to attic/strings-bytes/sorting_uca.txt diff --git a/strings-bytes/str_repr.py b/attic/strings-bytes/str_repr.py similarity index 100% rename from strings-bytes/str_repr.py rename to attic/strings-bytes/str_repr.py diff --git a/strings-bytes/str_repr2.py b/attic/strings-bytes/str_repr2.py similarity index 100% rename from strings-bytes/str_repr2.py rename to attic/strings-bytes/str_repr2.py diff --git a/strings-bytes/strings-bytes-test.txt b/attic/strings-bytes/strings-bytes-test.txt similarity index 100% rename from strings-bytes/strings-bytes-test.txt rename to attic/strings-bytes/strings-bytes-test.txt