├── .gitignore ├── 01-data-model ├── README.md ├── data-model.ipynb ├── frenchdeck.doctest ├── frenchdeck.py ├── test.sh ├── vector2d.doctest └── vector2d.py ├── 02-array-seq ├── README.rst ├── array-seq.ipynb ├── bisect_demo.py ├── bisect_insort.py ├── lispy │ ├── py3.10 │ │ ├── examples_test.py │ │ ├── lis.py │ │ ├── lis_test.py │ │ └── quicksort.scm │ └── py3.9 │ │ ├── README.md │ │ ├── examples_test.py │ │ ├── lis.py │ │ └── lis_test.py ├── listcomp_speed.py ├── match_lat_lon.py ├── memoryviews.ipynb ├── metro_lat_lon.py └── test.sh ├── 03-dict-set ├── 03-dict-set.ipynb ├── README.md ├── dialcodes.py ├── index.py ├── index0.py ├── index_default.py ├── missing.py ├── py3.10 │ └── creator.py ├── strkeydict.py ├── strkeydict0.py ├── support │ ├── container_perftest.py │ ├── container_perftest_datagen.py │ └── hashdiff.py ├── transformdict.py └── zen.txt ├── 04-text-byte ├── .gitignore ├── README.rst ├── categories.py ├── charfinder │ ├── README.rst │ ├── cf.py │ └── test.sh ├── default_encodings.py ├── encodings-win10.txt ├── locale_sort.py ├── normeq.py ├── numerics_demo.py ├── ola.py ├── ramanujan.py ├── simplify.py ├── skin.py ├── stdout_check.py ├── two_flags.py ├── zwj_sample.ipynb ├── zwj_sample.png └── zwj_sample.py ├── 05-data-classes ├── README.asciidoc ├── cards.doctest ├── cards.py ├── cards_enum.py ├── class │ └── coordinates.py ├── dataclass │ ├── club.py │ ├── club_generic.py │ ├── club_wrong.py │ ├── coordinates.py │ ├── hackerclub.py │ ├── hackerclub_annotated.py │ ├── resource.py │ └── resource_repr.py ├── frenchdeck.doctest ├── frenchdeck.py ├── match_cities.py ├── meaning │ ├── demo_dc.py │ ├── demo_nt.py │ └── demo_plain.py └── typing_namedtuple │ ├── coordinates.py │ ├── coordinates2.py │ └── nocheck_demo.py ├── 06-obj-ref ├── README.rst ├── bus.py ├── cheese.py ├── haunted_bus.py └── twilight_bus.py ├── 07-1class-func ├── README.rst ├── bingocall.py └── tagger.py ├── 08-def-type-hints ├── README.asciidoc ├── arg_lab.py ├── birds │ ├── birds.py │ ├── daffy.py │ ├── protocol │ │ ├── lake.py │ │ ├── parrot.py │ │ └── swan.py │ └── woody.py ├── bus.py ├── callable │ └── variance.py ├── charindex.py ├── colors.py ├── columnize.py ├── columnize_test.py ├── comparable │ ├── comparable.py │ ├── top.py │ └── top_test.py ├── coordinates │ ├── coordinates.py │ ├── coordinates_named.py │ ├── coordinates_named_test.py │ ├── coordinates_test.py │ └── requirements.txt ├── ctime.py ├── double │ ├── double_object.py │ ├── double_protocol.py │ ├── double_sequence.py │ └── double_test.py ├── messages │ ├── hints_1 │ │ ├── messages.py │ │ └── messages_test.py │ ├── hints_2 │ │ ├── messages.py │ │ └── messages_test.py │ └── no_hints │ │ ├── messages.py │ │ └── messages_test.py ├── mode │ ├── mode_float.py │ └── mode_hashable.py ├── mypy.ini ├── replacer.py ├── romans.py ├── romans_test.py ├── sample.py ├── typevar_bounded.py └── typevars_constrained.py ├── 09-closure-deco ├── README.rst ├── average.py ├── average_oo.py ├── clock │ ├── clockdeco.py │ ├── clockdeco0.py │ ├── clockdeco_cls.py │ ├── clockdeco_demo.py │ ├── clockdeco_param.py │ ├── clockdeco_param_demo1.py │ └── clockdeco_param_demo2.py ├── fibo_compare.py ├── fibo_demo.py ├── fibo_demo_cache.py ├── global_x_local.rst ├── htmlizer.py ├── registration.py ├── registration_abridged.py ├── registration_param.py └── stacked.py ├── 10-dp-1class-func ├── README.rst ├── classic_strategy.py ├── classic_strategy_test.py ├── monkeytype │ ├── classic_strategy.py │ ├── classic_strategy.pyi │ ├── classic_strategy_test.py │ └── run.py ├── promotions.py ├── pytypes │ ├── classic_strategy.py │ ├── classic_strategy_test.py │ └── typelogger_output │ │ └── classic_strategy.pyi ├── requirements.txt ├── strategy.py ├── strategy_best.py ├── strategy_best2.py ├── strategy_best3.py ├── strategy_best4.py ├── strategy_param.py ├── strategy_param_test.py ├── strategy_test.py └── untyped │ ├── classic_strategy.py │ ├── promotions.py │ ├── strategy.py │ ├── strategy_best.py │ ├── strategy_best2.py │ ├── strategy_best3.py │ ├── strategy_best4.py │ ├── strategy_param.py │ └── strategy_param2.py ├── 11-pythonic-obj ├── README.md ├── mem_test.py ├── patterns.py ├── private │ ├── .gitignore │ ├── Confidential.java │ ├── Expose.java │ ├── expose.py │ ├── leakprivate.py │ └── no_respect.py ├── slots.rst ├── vector2d_v0.py ├── vector2d_v1.py ├── vector2d_v2.py ├── vector2d_v2_fmt_snippet.py ├── vector2d_v3.py ├── vector2d_v3_prophash.py └── vector2d_v3_slots.py ├── 12-seq-hacking ├── vector_v1.py ├── vector_v2.py ├── vector_v3.py ├── vector_v4.py └── vector_v5.py ├── 13-protocol-abc ├── README.rst ├── bingo.py ├── double │ ├── double_object.py │ ├── double_protocol.py │ ├── double_sequence.py │ └── double_test.py ├── drum.py ├── frenchdeck2.py ├── lotto.py ├── tombola.py ├── tombola_runner.py ├── tombola_subhook.py ├── tombola_tests.rst ├── tombolist.py └── typing │ ├── randompick.py │ ├── randompick_test.py │ ├── randompickload.py │ ├── randompickload_test.py │ ├── vector2d_v4.py │ ├── vector2d_v4_test.py │ ├── vector2d_v5.py │ └── vector2d_v5_test.py ├── 14-inheritance ├── README.rst ├── diamond.py ├── diamond2.py ├── strkeydict_dictsub.py └── uppermixin.py ├── 15-more-types ├── cafeteria │ ├── cafeteria.py │ ├── contravariant.py │ ├── covariant.py │ └── invariant.py ├── cast │ ├── empty.py │ ├── find.py │ ├── tcp_echo.py │ └── tcp_echo_no_cast.py ├── clip_annot.py ├── clip_annot_demo.py ├── clip_annot_post.py ├── collections_variance.py ├── gen_contra.py ├── lotto │ ├── generic_lotto.py │ ├── generic_lotto_demo.py │ ├── generic_lotto_errors.py │ └── tombola.py ├── mysum.py ├── petbox │ ├── petbox.py │ └── petbox_demo.py ├── protocol │ ├── abs_demo.py │ ├── mymax │ │ ├── mymax.py │ │ ├── mymax_demo.py │ │ └── mymax_test.py │ └── random │ │ ├── erp.py │ │ ├── erp_test.py │ │ ├── generic_randompick.py │ │ ├── generic_randompick_test.py │ │ ├── randompop.py │ │ └── randompop_test.py └── typeddict │ ├── books.py │ ├── books_any.py │ ├── demo_books.py │ ├── demo_not_book.py │ ├── test_books.py │ └── test_books_check_fails.py ├── 16-op-overloading ├── README.rst ├── bingo.py ├── bingoaddable.py ├── tombola.py ├── unary_plus_decimal.py ├── vector2d_v3.py ├── vector_v6.py ├── vector_v7.py └── vector_v8.py ├── 17-it-generator ├── README.rst ├── aritprog.rst ├── aritprog_float_error.py ├── aritprog_runner.py ├── aritprog_v0.py ├── aritprog_v1.py ├── aritprog_v2.py ├── aritprog_v3.py ├── columnize_iter.py ├── coroaverager.py ├── coroaverager2.py ├── fibo_by_hand.py ├── fibo_gen.py ├── isis2json │ ├── README.rst │ ├── isis2json.py │ ├── iso2709.py │ └── subfield.py ├── iter_gen_type.py ├── sentence.py ├── sentence.rst ├── sentence_gen.py ├── sentence_gen2.py ├── sentence_genexp.py ├── sentence_iter.py ├── sentence_iter2.py ├── sentence_runner.py ├── tree │ ├── 4steps │ │ ├── tree_step0.py │ │ ├── tree_step1.py │ │ ├── tree_step2.py │ │ └── tree_step3.py │ ├── classtree │ │ ├── classtree.py │ │ └── classtree_test.py │ ├── extra │ │ ├── drawtree.py │ │ ├── test_drawtree.py │ │ ├── test_tree.py │ │ └── tree.py │ ├── step0 │ │ ├── test_tree.py │ │ └── tree.py │ ├── step1 │ │ ├── test_tree.py │ │ └── tree.py │ ├── step2 │ │ ├── test_tree.py │ │ └── tree.py │ ├── step3 │ │ ├── test_tree.py │ │ └── tree.py │ ├── step4 │ │ ├── test_tree.py │ │ └── tree.py │ ├── step5 │ │ ├── test_tree.py │ │ └── tree.py │ └── step6 │ │ ├── test_tree.py │ │ └── tree.py ├── yield_delegate_fail.py └── yield_delegate_fix.py ├── 18-with-match ├── README.rst ├── lispy │ ├── LICENSE │ ├── README.md │ ├── original │ │ ├── LICENSE │ │ ├── README.md │ │ ├── lis.py │ │ ├── lispy.py │ │ └── lispytest.py │ ├── py3.10 │ │ ├── examples_test.py │ │ ├── lis.py │ │ ├── lis_test.py │ │ └── quicksort.scm │ └── py3.9 │ │ ├── README.md │ │ ├── examples_test.py │ │ ├── lis.py │ │ └── lis_test.py ├── mirror.py ├── mirror_gen.py └── mirror_gen_exc.py ├── 19-concurrency ├── primes │ ├── README.md │ ├── log-procs.txt │ ├── primes.py │ ├── procs.py │ ├── procs_race_condition.py │ ├── py36 │ │ ├── primes.py │ │ └── procs.py │ ├── run_procs.sh │ ├── sequential.py │ ├── spinner_prime_async_broken.py │ ├── spinner_prime_async_nap.py │ ├── spinner_prime_proc.py │ ├── spinner_prime_thread.py │ ├── stats-procs.ipynb │ └── threads.py ├── spinner_async.py ├── spinner_async_experiment.py ├── spinner_proc.py └── spinner_thread.py ├── 20-executors ├── demo_executor_map.py ├── getflags │ ├── .gitignore │ ├── README.adoc │ ├── country_codes.txt │ ├── flags.py │ ├── flags.zip │ ├── flags2_asyncio.py │ ├── flags2_asyncio_executor.py │ ├── flags2_common.py │ ├── flags2_sequential.py │ ├── flags2_threadpool.py │ ├── flags3_asyncio.py │ ├── flags_asyncio.py │ ├── flags_threadpool.py │ ├── flags_threadpool_futures.py │ ├── httpx-error-tree │ │ ├── drawtree.py │ │ └── tree.py │ ├── requirements.txt │ └── slow_server.py └── primes │ ├── primes.py │ └── proc_pool.py ├── 21-async ├── README.rst ├── domains │ ├── README.rst │ ├── asyncio │ │ ├── blogdom.py │ │ ├── domaincheck.py │ │ └── domainlib.py │ └── curio │ │ ├── blogdom.py │ │ ├── domaincheck.py │ │ ├── domainlib.py │ │ └── requirements.txt └── mojifinder │ ├── README.md │ ├── bottle.py │ ├── charindex.py │ ├── requirements.txt │ ├── static │ └── form.html │ ├── tcp_mojifinder.py │ ├── web_mojifinder.py │ └── web_mojifinder_bottle.py ├── 22-dyn-attr-prop ├── README.rst ├── blackknight.py ├── bulkfood │ ├── bulkfood_v1.py │ ├── bulkfood_v2.py │ ├── bulkfood_v2b.py │ └── bulkfood_v2prop.py ├── doc_property.py ├── oscon │ ├── data │ │ └── osconfeed.json │ ├── explore0.py │ ├── explore1.py │ ├── explore2.py │ ├── osconfeed-sample.json │ ├── osconfeed_explore.rst │ ├── runtests.sh │ ├── schedule_v1.py │ ├── schedule_v2.py │ ├── schedule_v3.py │ ├── schedule_v4.py │ ├── schedule_v4_hasattr.py │ ├── schedule_v5.py │ ├── test_schedule_v1.py │ ├── test_schedule_v2.py │ ├── test_schedule_v3.py │ ├── test_schedule_v4.py │ └── test_schedule_v5.py └── pseudo_construction.py ├── 23-descriptor ├── README.rst ├── bulkfood │ ├── bulkfood_v3.py │ ├── bulkfood_v4.py │ ├── bulkfood_v4c.py │ ├── bulkfood_v5.py │ ├── model_v4c.py │ └── model_v5.py ├── descriptorkinds.py ├── descriptorkinds_dump.py └── method_is_descriptor.py ├── 24-class-metaprog ├── autoconst │ ├── autoconst.py │ └── autoconst_demo.py ├── bulkfood │ ├── README.md │ ├── bulkfood_v6.py │ ├── bulkfood_v7.py │ ├── bulkfood_v8.py │ ├── model_v6.py │ ├── model_v7.py │ └── model_v8.py ├── checked │ ├── decorator │ │ ├── checkeddeco.py │ │ ├── checkeddeco_demo.py │ │ └── checkeddeco_test.py │ ├── initsub │ │ ├── checked_demo.py │ │ ├── checkedlib.py │ │ └── checkedlib_test.py │ └── metaclass │ │ ├── checked_demo.py │ │ ├── checkedlib.py │ │ └── checkedlib_test.py ├── evaltime │ ├── builderlib.py │ ├── evaldemo.py │ ├── evaldemo_meta.py │ └── metalib.py ├── factories.py ├── factories_ducktyped.py ├── hours │ ├── hours.py │ └── hours_test.py ├── metabunch │ ├── README.md │ ├── from3.6 │ │ ├── bunch.py │ │ └── bunch_test.py │ ├── nutshell3e │ │ ├── bunch.py │ │ └── bunch_test.py │ ├── original │ │ ├── bunch.py │ │ └── bunch_test.py │ └── pre3.6 │ │ ├── bunch.py │ │ └── bunch_test.py ├── persistent │ ├── .gitignore │ ├── dblib.py │ ├── dblib_test.py │ ├── persistlib.py │ └── persistlib_test.py ├── qualname │ ├── fakedjango.py │ └── models.py ├── sentinel │ ├── sentinel.py │ └── sentinel_test.py ├── setattr │ └── example_from_leo.py ├── slots │ └── slots_timing.py ├── timeslice.py └── tinyenums │ ├── microenum.py │ ├── microenum_demo.py │ ├── nanoenum.py │ └── nanoenum_demo.py ├── LICENSE ├── README.md ├── links ├── FPY.LI.htaccess └── README.md ├── pytest.ini └── ruff.toml /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/.gitignore -------------------------------------------------------------------------------- /01-data-model/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/01-data-model/README.md -------------------------------------------------------------------------------- /01-data-model/data-model.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/01-data-model/data-model.ipynb -------------------------------------------------------------------------------- /01-data-model/frenchdeck.doctest: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/01-data-model/frenchdeck.doctest -------------------------------------------------------------------------------- /01-data-model/frenchdeck.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/01-data-model/frenchdeck.py -------------------------------------------------------------------------------- /01-data-model/test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/01-data-model/test.sh -------------------------------------------------------------------------------- /01-data-model/vector2d.doctest: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/01-data-model/vector2d.doctest -------------------------------------------------------------------------------- /01-data-model/vector2d.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/01-data-model/vector2d.py -------------------------------------------------------------------------------- /02-array-seq/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/README.rst -------------------------------------------------------------------------------- /02-array-seq/array-seq.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/array-seq.ipynb -------------------------------------------------------------------------------- /02-array-seq/bisect_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/bisect_demo.py -------------------------------------------------------------------------------- /02-array-seq/bisect_insort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/bisect_insort.py -------------------------------------------------------------------------------- /02-array-seq/lispy/py3.10/examples_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/lispy/py3.10/examples_test.py -------------------------------------------------------------------------------- /02-array-seq/lispy/py3.10/lis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/lispy/py3.10/lis.py -------------------------------------------------------------------------------- /02-array-seq/lispy/py3.10/lis_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/lispy/py3.10/lis_test.py -------------------------------------------------------------------------------- /02-array-seq/lispy/py3.10/quicksort.scm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/lispy/py3.10/quicksort.scm -------------------------------------------------------------------------------- /02-array-seq/lispy/py3.9/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/lispy/py3.9/README.md -------------------------------------------------------------------------------- /02-array-seq/lispy/py3.9/examples_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/lispy/py3.9/examples_test.py -------------------------------------------------------------------------------- /02-array-seq/lispy/py3.9/lis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/lispy/py3.9/lis.py -------------------------------------------------------------------------------- /02-array-seq/lispy/py3.9/lis_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/lispy/py3.9/lis_test.py -------------------------------------------------------------------------------- /02-array-seq/listcomp_speed.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/listcomp_speed.py -------------------------------------------------------------------------------- /02-array-seq/match_lat_lon.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/match_lat_lon.py -------------------------------------------------------------------------------- /02-array-seq/memoryviews.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/memoryviews.ipynb -------------------------------------------------------------------------------- /02-array-seq/metro_lat_lon.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/metro_lat_lon.py -------------------------------------------------------------------------------- /02-array-seq/test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/02-array-seq/test.sh -------------------------------------------------------------------------------- /03-dict-set/03-dict-set.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/03-dict-set.ipynb -------------------------------------------------------------------------------- /03-dict-set/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/README.md -------------------------------------------------------------------------------- /03-dict-set/dialcodes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/dialcodes.py -------------------------------------------------------------------------------- /03-dict-set/index.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/index.py -------------------------------------------------------------------------------- /03-dict-set/index0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/index0.py -------------------------------------------------------------------------------- /03-dict-set/index_default.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/index_default.py -------------------------------------------------------------------------------- /03-dict-set/missing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/missing.py -------------------------------------------------------------------------------- /03-dict-set/py3.10/creator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/py3.10/creator.py -------------------------------------------------------------------------------- /03-dict-set/strkeydict.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/strkeydict.py -------------------------------------------------------------------------------- /03-dict-set/strkeydict0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/strkeydict0.py -------------------------------------------------------------------------------- /03-dict-set/support/container_perftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/support/container_perftest.py -------------------------------------------------------------------------------- /03-dict-set/support/container_perftest_datagen.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/support/container_perftest_datagen.py -------------------------------------------------------------------------------- /03-dict-set/support/hashdiff.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/support/hashdiff.py -------------------------------------------------------------------------------- /03-dict-set/transformdict.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/transformdict.py -------------------------------------------------------------------------------- /03-dict-set/zen.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/03-dict-set/zen.txt -------------------------------------------------------------------------------- /04-text-byte/.gitignore: -------------------------------------------------------------------------------- 1 | dummy 2 | -------------------------------------------------------------------------------- /04-text-byte/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/README.rst -------------------------------------------------------------------------------- /04-text-byte/categories.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/categories.py -------------------------------------------------------------------------------- /04-text-byte/charfinder/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/charfinder/README.rst -------------------------------------------------------------------------------- /04-text-byte/charfinder/cf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/charfinder/cf.py -------------------------------------------------------------------------------- /04-text-byte/charfinder/test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | python3 -m doctest README.rst $1 3 | -------------------------------------------------------------------------------- /04-text-byte/default_encodings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/default_encodings.py -------------------------------------------------------------------------------- /04-text-byte/encodings-win10.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/encodings-win10.txt -------------------------------------------------------------------------------- /04-text-byte/locale_sort.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/locale_sort.py -------------------------------------------------------------------------------- /04-text-byte/normeq.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/normeq.py -------------------------------------------------------------------------------- /04-text-byte/numerics_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/numerics_demo.py -------------------------------------------------------------------------------- /04-text-byte/ola.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/ola.py -------------------------------------------------------------------------------- /04-text-byte/ramanujan.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/ramanujan.py -------------------------------------------------------------------------------- /04-text-byte/simplify.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/simplify.py -------------------------------------------------------------------------------- /04-text-byte/skin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/skin.py -------------------------------------------------------------------------------- /04-text-byte/stdout_check.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/stdout_check.py -------------------------------------------------------------------------------- /04-text-byte/two_flags.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/two_flags.py -------------------------------------------------------------------------------- /04-text-byte/zwj_sample.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/zwj_sample.ipynb -------------------------------------------------------------------------------- /04-text-byte/zwj_sample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/zwj_sample.png -------------------------------------------------------------------------------- /04-text-byte/zwj_sample.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/04-text-byte/zwj_sample.py -------------------------------------------------------------------------------- /05-data-classes/README.asciidoc: -------------------------------------------------------------------------------- 1 | == Record-like Structures 2 | -------------------------------------------------------------------------------- /05-data-classes/cards.doctest: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/cards.doctest -------------------------------------------------------------------------------- /05-data-classes/cards.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/cards.py -------------------------------------------------------------------------------- /05-data-classes/cards_enum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/cards_enum.py -------------------------------------------------------------------------------- /05-data-classes/class/coordinates.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/class/coordinates.py -------------------------------------------------------------------------------- /05-data-classes/dataclass/club.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/dataclass/club.py -------------------------------------------------------------------------------- /05-data-classes/dataclass/club_generic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/dataclass/club_generic.py -------------------------------------------------------------------------------- /05-data-classes/dataclass/club_wrong.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/dataclass/club_wrong.py -------------------------------------------------------------------------------- /05-data-classes/dataclass/coordinates.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/dataclass/coordinates.py -------------------------------------------------------------------------------- /05-data-classes/dataclass/hackerclub.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/dataclass/hackerclub.py -------------------------------------------------------------------------------- /05-data-classes/dataclass/hackerclub_annotated.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/dataclass/hackerclub_annotated.py -------------------------------------------------------------------------------- /05-data-classes/dataclass/resource.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/dataclass/resource.py -------------------------------------------------------------------------------- /05-data-classes/dataclass/resource_repr.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/dataclass/resource_repr.py -------------------------------------------------------------------------------- /05-data-classes/frenchdeck.doctest: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/frenchdeck.doctest -------------------------------------------------------------------------------- /05-data-classes/frenchdeck.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/frenchdeck.py -------------------------------------------------------------------------------- /05-data-classes/match_cities.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/match_cities.py -------------------------------------------------------------------------------- /05-data-classes/meaning/demo_dc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/meaning/demo_dc.py -------------------------------------------------------------------------------- /05-data-classes/meaning/demo_nt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/meaning/demo_nt.py -------------------------------------------------------------------------------- /05-data-classes/meaning/demo_plain.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/meaning/demo_plain.py -------------------------------------------------------------------------------- /05-data-classes/typing_namedtuple/coordinates.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/typing_namedtuple/coordinates.py -------------------------------------------------------------------------------- /05-data-classes/typing_namedtuple/coordinates2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/typing_namedtuple/coordinates2.py -------------------------------------------------------------------------------- /05-data-classes/typing_namedtuple/nocheck_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/05-data-classes/typing_namedtuple/nocheck_demo.py -------------------------------------------------------------------------------- /06-obj-ref/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/06-obj-ref/README.rst -------------------------------------------------------------------------------- /06-obj-ref/bus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/06-obj-ref/bus.py -------------------------------------------------------------------------------- /06-obj-ref/cheese.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/06-obj-ref/cheese.py -------------------------------------------------------------------------------- /06-obj-ref/haunted_bus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/06-obj-ref/haunted_bus.py -------------------------------------------------------------------------------- /06-obj-ref/twilight_bus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/06-obj-ref/twilight_bus.py -------------------------------------------------------------------------------- /07-1class-func/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/07-1class-func/README.rst -------------------------------------------------------------------------------- /07-1class-func/bingocall.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/07-1class-func/bingocall.py -------------------------------------------------------------------------------- /07-1class-func/tagger.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/07-1class-func/tagger.py -------------------------------------------------------------------------------- /08-def-type-hints/README.asciidoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/README.asciidoc -------------------------------------------------------------------------------- /08-def-type-hints/arg_lab.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/arg_lab.py -------------------------------------------------------------------------------- /08-def-type-hints/birds/birds.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/birds/birds.py -------------------------------------------------------------------------------- /08-def-type-hints/birds/daffy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/birds/daffy.py -------------------------------------------------------------------------------- /08-def-type-hints/birds/protocol/lake.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/birds/protocol/lake.py -------------------------------------------------------------------------------- /08-def-type-hints/birds/protocol/parrot.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/birds/protocol/parrot.py -------------------------------------------------------------------------------- /08-def-type-hints/birds/protocol/swan.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/birds/protocol/swan.py -------------------------------------------------------------------------------- /08-def-type-hints/birds/woody.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/birds/woody.py -------------------------------------------------------------------------------- /08-def-type-hints/bus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/bus.py -------------------------------------------------------------------------------- /08-def-type-hints/callable/variance.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/callable/variance.py -------------------------------------------------------------------------------- /08-def-type-hints/charindex.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/charindex.py -------------------------------------------------------------------------------- /08-def-type-hints/colors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/colors.py -------------------------------------------------------------------------------- /08-def-type-hints/columnize.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/columnize.py -------------------------------------------------------------------------------- /08-def-type-hints/columnize_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/columnize_test.py -------------------------------------------------------------------------------- /08-def-type-hints/comparable/comparable.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/comparable/comparable.py -------------------------------------------------------------------------------- /08-def-type-hints/comparable/top.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/comparable/top.py -------------------------------------------------------------------------------- /08-def-type-hints/comparable/top_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/comparable/top_test.py -------------------------------------------------------------------------------- /08-def-type-hints/coordinates/coordinates.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/coordinates/coordinates.py -------------------------------------------------------------------------------- /08-def-type-hints/coordinates/coordinates_named.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/coordinates/coordinates_named.py -------------------------------------------------------------------------------- /08-def-type-hints/coordinates/coordinates_named_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/coordinates/coordinates_named_test.py -------------------------------------------------------------------------------- /08-def-type-hints/coordinates/coordinates_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/coordinates/coordinates_test.py -------------------------------------------------------------------------------- /08-def-type-hints/coordinates/requirements.txt: -------------------------------------------------------------------------------- 1 | geolib==1.0.7 2 | future==0.18.3 3 | -------------------------------------------------------------------------------- /08-def-type-hints/ctime.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/ctime.py -------------------------------------------------------------------------------- /08-def-type-hints/double/double_object.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/double/double_object.py -------------------------------------------------------------------------------- /08-def-type-hints/double/double_protocol.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/double/double_protocol.py -------------------------------------------------------------------------------- /08-def-type-hints/double/double_sequence.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/double/double_sequence.py -------------------------------------------------------------------------------- /08-def-type-hints/double/double_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/double/double_test.py -------------------------------------------------------------------------------- /08-def-type-hints/messages/hints_1/messages.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/messages/hints_1/messages.py -------------------------------------------------------------------------------- /08-def-type-hints/messages/hints_1/messages_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/messages/hints_1/messages_test.py -------------------------------------------------------------------------------- /08-def-type-hints/messages/hints_2/messages.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/messages/hints_2/messages.py -------------------------------------------------------------------------------- /08-def-type-hints/messages/hints_2/messages_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/messages/hints_2/messages_test.py -------------------------------------------------------------------------------- /08-def-type-hints/messages/no_hints/messages.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/messages/no_hints/messages.py -------------------------------------------------------------------------------- /08-def-type-hints/messages/no_hints/messages_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/messages/no_hints/messages_test.py -------------------------------------------------------------------------------- /08-def-type-hints/mode/mode_float.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/mode/mode_float.py -------------------------------------------------------------------------------- /08-def-type-hints/mode/mode_hashable.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/mode/mode_hashable.py -------------------------------------------------------------------------------- /08-def-type-hints/mypy.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/mypy.ini -------------------------------------------------------------------------------- /08-def-type-hints/replacer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/replacer.py -------------------------------------------------------------------------------- /08-def-type-hints/romans.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/romans.py -------------------------------------------------------------------------------- /08-def-type-hints/romans_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/romans_test.py -------------------------------------------------------------------------------- /08-def-type-hints/sample.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/sample.py -------------------------------------------------------------------------------- /08-def-type-hints/typevar_bounded.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/typevar_bounded.py -------------------------------------------------------------------------------- /08-def-type-hints/typevars_constrained.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/08-def-type-hints/typevars_constrained.py -------------------------------------------------------------------------------- /09-closure-deco/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/README.rst -------------------------------------------------------------------------------- /09-closure-deco/average.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/average.py -------------------------------------------------------------------------------- /09-closure-deco/average_oo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/average_oo.py -------------------------------------------------------------------------------- /09-closure-deco/clock/clockdeco.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/clock/clockdeco.py -------------------------------------------------------------------------------- /09-closure-deco/clock/clockdeco0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/clock/clockdeco0.py -------------------------------------------------------------------------------- /09-closure-deco/clock/clockdeco_cls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/clock/clockdeco_cls.py -------------------------------------------------------------------------------- /09-closure-deco/clock/clockdeco_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/clock/clockdeco_demo.py -------------------------------------------------------------------------------- /09-closure-deco/clock/clockdeco_param.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/clock/clockdeco_param.py -------------------------------------------------------------------------------- /09-closure-deco/clock/clockdeco_param_demo1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/clock/clockdeco_param_demo1.py -------------------------------------------------------------------------------- /09-closure-deco/clock/clockdeco_param_demo2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/clock/clockdeco_param_demo2.py -------------------------------------------------------------------------------- /09-closure-deco/fibo_compare.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/fibo_compare.py -------------------------------------------------------------------------------- /09-closure-deco/fibo_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/fibo_demo.py -------------------------------------------------------------------------------- /09-closure-deco/fibo_demo_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/fibo_demo_cache.py -------------------------------------------------------------------------------- /09-closure-deco/global_x_local.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/global_x_local.rst -------------------------------------------------------------------------------- /09-closure-deco/htmlizer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/htmlizer.py -------------------------------------------------------------------------------- /09-closure-deco/registration.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/registration.py -------------------------------------------------------------------------------- /09-closure-deco/registration_abridged.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/registration_abridged.py -------------------------------------------------------------------------------- /09-closure-deco/registration_param.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/registration_param.py -------------------------------------------------------------------------------- /09-closure-deco/stacked.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/09-closure-deco/stacked.py -------------------------------------------------------------------------------- /10-dp-1class-func/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/README.rst -------------------------------------------------------------------------------- /10-dp-1class-func/classic_strategy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/classic_strategy.py -------------------------------------------------------------------------------- /10-dp-1class-func/classic_strategy_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/classic_strategy_test.py -------------------------------------------------------------------------------- /10-dp-1class-func/monkeytype/classic_strategy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/monkeytype/classic_strategy.py -------------------------------------------------------------------------------- /10-dp-1class-func/monkeytype/classic_strategy.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/monkeytype/classic_strategy.pyi -------------------------------------------------------------------------------- /10-dp-1class-func/monkeytype/classic_strategy_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/monkeytype/classic_strategy_test.py -------------------------------------------------------------------------------- /10-dp-1class-func/monkeytype/run.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/monkeytype/run.py -------------------------------------------------------------------------------- /10-dp-1class-func/promotions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/promotions.py -------------------------------------------------------------------------------- /10-dp-1class-func/pytypes/classic_strategy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/pytypes/classic_strategy.py -------------------------------------------------------------------------------- /10-dp-1class-func/pytypes/classic_strategy_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/pytypes/classic_strategy_test.py -------------------------------------------------------------------------------- /10-dp-1class-func/pytypes/typelogger_output/classic_strategy.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/pytypes/typelogger_output/classic_strategy.pyi -------------------------------------------------------------------------------- /10-dp-1class-func/requirements.txt: -------------------------------------------------------------------------------- 1 | mypy==0.910 2 | pytest==6.2.4 3 | -------------------------------------------------------------------------------- /10-dp-1class-func/strategy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/strategy.py -------------------------------------------------------------------------------- /10-dp-1class-func/strategy_best.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/strategy_best.py -------------------------------------------------------------------------------- /10-dp-1class-func/strategy_best2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/strategy_best2.py -------------------------------------------------------------------------------- /10-dp-1class-func/strategy_best3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/strategy_best3.py -------------------------------------------------------------------------------- /10-dp-1class-func/strategy_best4.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/strategy_best4.py -------------------------------------------------------------------------------- /10-dp-1class-func/strategy_param.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/strategy_param.py -------------------------------------------------------------------------------- /10-dp-1class-func/strategy_param_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/strategy_param_test.py -------------------------------------------------------------------------------- /10-dp-1class-func/strategy_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/strategy_test.py -------------------------------------------------------------------------------- /10-dp-1class-func/untyped/classic_strategy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/untyped/classic_strategy.py -------------------------------------------------------------------------------- /10-dp-1class-func/untyped/promotions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/untyped/promotions.py -------------------------------------------------------------------------------- /10-dp-1class-func/untyped/strategy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/untyped/strategy.py -------------------------------------------------------------------------------- /10-dp-1class-func/untyped/strategy_best.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/untyped/strategy_best.py -------------------------------------------------------------------------------- /10-dp-1class-func/untyped/strategy_best2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/untyped/strategy_best2.py -------------------------------------------------------------------------------- /10-dp-1class-func/untyped/strategy_best3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/untyped/strategy_best3.py -------------------------------------------------------------------------------- /10-dp-1class-func/untyped/strategy_best4.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/untyped/strategy_best4.py -------------------------------------------------------------------------------- /10-dp-1class-func/untyped/strategy_param.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/untyped/strategy_param.py -------------------------------------------------------------------------------- /10-dp-1class-func/untyped/strategy_param2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/10-dp-1class-func/untyped/strategy_param2.py -------------------------------------------------------------------------------- /11-pythonic-obj/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/README.md -------------------------------------------------------------------------------- /11-pythonic-obj/mem_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/mem_test.py -------------------------------------------------------------------------------- /11-pythonic-obj/patterns.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/patterns.py -------------------------------------------------------------------------------- /11-pythonic-obj/private/.gitignore: -------------------------------------------------------------------------------- 1 | *.class 2 | .jython_cache/ 3 | -------------------------------------------------------------------------------- /11-pythonic-obj/private/Confidential.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/private/Confidential.java -------------------------------------------------------------------------------- /11-pythonic-obj/private/Expose.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/private/Expose.java -------------------------------------------------------------------------------- /11-pythonic-obj/private/expose.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/private/expose.py -------------------------------------------------------------------------------- /11-pythonic-obj/private/leakprivate.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/private/leakprivate.py -------------------------------------------------------------------------------- /11-pythonic-obj/private/no_respect.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/private/no_respect.py -------------------------------------------------------------------------------- /11-pythonic-obj/slots.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/slots.rst -------------------------------------------------------------------------------- /11-pythonic-obj/vector2d_v0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/vector2d_v0.py -------------------------------------------------------------------------------- /11-pythonic-obj/vector2d_v1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/vector2d_v1.py -------------------------------------------------------------------------------- /11-pythonic-obj/vector2d_v2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/vector2d_v2.py -------------------------------------------------------------------------------- /11-pythonic-obj/vector2d_v2_fmt_snippet.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/vector2d_v2_fmt_snippet.py -------------------------------------------------------------------------------- /11-pythonic-obj/vector2d_v3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/vector2d_v3.py -------------------------------------------------------------------------------- /11-pythonic-obj/vector2d_v3_prophash.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/vector2d_v3_prophash.py -------------------------------------------------------------------------------- /11-pythonic-obj/vector2d_v3_slots.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/11-pythonic-obj/vector2d_v3_slots.py -------------------------------------------------------------------------------- /12-seq-hacking/vector_v1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/12-seq-hacking/vector_v1.py -------------------------------------------------------------------------------- /12-seq-hacking/vector_v2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/12-seq-hacking/vector_v2.py -------------------------------------------------------------------------------- /12-seq-hacking/vector_v3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/12-seq-hacking/vector_v3.py -------------------------------------------------------------------------------- /12-seq-hacking/vector_v4.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/12-seq-hacking/vector_v4.py -------------------------------------------------------------------------------- /12-seq-hacking/vector_v5.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/12-seq-hacking/vector_v5.py -------------------------------------------------------------------------------- /13-protocol-abc/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/README.rst -------------------------------------------------------------------------------- /13-protocol-abc/bingo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/bingo.py -------------------------------------------------------------------------------- /13-protocol-abc/double/double_object.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/double/double_object.py -------------------------------------------------------------------------------- /13-protocol-abc/double/double_protocol.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/double/double_protocol.py -------------------------------------------------------------------------------- /13-protocol-abc/double/double_sequence.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/double/double_sequence.py -------------------------------------------------------------------------------- /13-protocol-abc/double/double_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/double/double_test.py -------------------------------------------------------------------------------- /13-protocol-abc/drum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/drum.py -------------------------------------------------------------------------------- /13-protocol-abc/frenchdeck2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/frenchdeck2.py -------------------------------------------------------------------------------- /13-protocol-abc/lotto.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/lotto.py -------------------------------------------------------------------------------- /13-protocol-abc/tombola.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/tombola.py -------------------------------------------------------------------------------- /13-protocol-abc/tombola_runner.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/tombola_runner.py -------------------------------------------------------------------------------- /13-protocol-abc/tombola_subhook.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/tombola_subhook.py -------------------------------------------------------------------------------- /13-protocol-abc/tombola_tests.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/tombola_tests.rst -------------------------------------------------------------------------------- /13-protocol-abc/tombolist.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/tombolist.py -------------------------------------------------------------------------------- /13-protocol-abc/typing/randompick.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/typing/randompick.py -------------------------------------------------------------------------------- /13-protocol-abc/typing/randompick_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/typing/randompick_test.py -------------------------------------------------------------------------------- /13-protocol-abc/typing/randompickload.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/typing/randompickload.py -------------------------------------------------------------------------------- /13-protocol-abc/typing/randompickload_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/typing/randompickload_test.py -------------------------------------------------------------------------------- /13-protocol-abc/typing/vector2d_v4.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/typing/vector2d_v4.py -------------------------------------------------------------------------------- /13-protocol-abc/typing/vector2d_v4_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/typing/vector2d_v4_test.py -------------------------------------------------------------------------------- /13-protocol-abc/typing/vector2d_v5.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/typing/vector2d_v5.py -------------------------------------------------------------------------------- /13-protocol-abc/typing/vector2d_v5_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/13-protocol-abc/typing/vector2d_v5_test.py -------------------------------------------------------------------------------- /14-inheritance/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/14-inheritance/README.rst -------------------------------------------------------------------------------- /14-inheritance/diamond.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/14-inheritance/diamond.py -------------------------------------------------------------------------------- /14-inheritance/diamond2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/14-inheritance/diamond2.py -------------------------------------------------------------------------------- /14-inheritance/strkeydict_dictsub.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/14-inheritance/strkeydict_dictsub.py -------------------------------------------------------------------------------- /14-inheritance/uppermixin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/14-inheritance/uppermixin.py -------------------------------------------------------------------------------- /15-more-types/cafeteria/cafeteria.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/cafeteria/cafeteria.py -------------------------------------------------------------------------------- /15-more-types/cafeteria/contravariant.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/cafeteria/contravariant.py -------------------------------------------------------------------------------- /15-more-types/cafeteria/covariant.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/cafeteria/covariant.py -------------------------------------------------------------------------------- /15-more-types/cafeteria/invariant.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/cafeteria/invariant.py -------------------------------------------------------------------------------- /15-more-types/cast/empty.py: -------------------------------------------------------------------------------- 1 | # Mypy 0.812 can't spot this inevitable runtime IndexError 2 | print([][0]) -------------------------------------------------------------------------------- /15-more-types/cast/find.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/cast/find.py -------------------------------------------------------------------------------- /15-more-types/cast/tcp_echo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/cast/tcp_echo.py -------------------------------------------------------------------------------- /15-more-types/cast/tcp_echo_no_cast.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/cast/tcp_echo_no_cast.py -------------------------------------------------------------------------------- /15-more-types/clip_annot.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/clip_annot.py -------------------------------------------------------------------------------- /15-more-types/clip_annot_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/clip_annot_demo.py -------------------------------------------------------------------------------- /15-more-types/clip_annot_post.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/clip_annot_post.py -------------------------------------------------------------------------------- /15-more-types/collections_variance.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/collections_variance.py -------------------------------------------------------------------------------- /15-more-types/gen_contra.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/gen_contra.py -------------------------------------------------------------------------------- /15-more-types/lotto/generic_lotto.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/lotto/generic_lotto.py -------------------------------------------------------------------------------- /15-more-types/lotto/generic_lotto_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/lotto/generic_lotto_demo.py -------------------------------------------------------------------------------- /15-more-types/lotto/generic_lotto_errors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/lotto/generic_lotto_errors.py -------------------------------------------------------------------------------- /15-more-types/lotto/tombola.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/lotto/tombola.py -------------------------------------------------------------------------------- /15-more-types/mysum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/mysum.py -------------------------------------------------------------------------------- /15-more-types/petbox/petbox.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/petbox/petbox.py -------------------------------------------------------------------------------- /15-more-types/petbox/petbox_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/petbox/petbox_demo.py -------------------------------------------------------------------------------- /15-more-types/protocol/abs_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/protocol/abs_demo.py -------------------------------------------------------------------------------- /15-more-types/protocol/mymax/mymax.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/protocol/mymax/mymax.py -------------------------------------------------------------------------------- /15-more-types/protocol/mymax/mymax_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/protocol/mymax/mymax_demo.py -------------------------------------------------------------------------------- /15-more-types/protocol/mymax/mymax_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/protocol/mymax/mymax_test.py -------------------------------------------------------------------------------- /15-more-types/protocol/random/erp.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/protocol/random/erp.py -------------------------------------------------------------------------------- /15-more-types/protocol/random/erp_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/protocol/random/erp_test.py -------------------------------------------------------------------------------- /15-more-types/protocol/random/generic_randompick.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/protocol/random/generic_randompick.py -------------------------------------------------------------------------------- /15-more-types/protocol/random/generic_randompick_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/protocol/random/generic_randompick_test.py -------------------------------------------------------------------------------- /15-more-types/protocol/random/randompop.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/protocol/random/randompop.py -------------------------------------------------------------------------------- /15-more-types/protocol/random/randompop_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/protocol/random/randompop_test.py -------------------------------------------------------------------------------- /15-more-types/typeddict/books.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/typeddict/books.py -------------------------------------------------------------------------------- /15-more-types/typeddict/books_any.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/typeddict/books_any.py -------------------------------------------------------------------------------- /15-more-types/typeddict/demo_books.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/typeddict/demo_books.py -------------------------------------------------------------------------------- /15-more-types/typeddict/demo_not_book.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/typeddict/demo_not_book.py -------------------------------------------------------------------------------- /15-more-types/typeddict/test_books.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/typeddict/test_books.py -------------------------------------------------------------------------------- /15-more-types/typeddict/test_books_check_fails.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/15-more-types/typeddict/test_books_check_fails.py -------------------------------------------------------------------------------- /16-op-overloading/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/16-op-overloading/README.rst -------------------------------------------------------------------------------- /16-op-overloading/bingo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/16-op-overloading/bingo.py -------------------------------------------------------------------------------- /16-op-overloading/bingoaddable.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/16-op-overloading/bingoaddable.py -------------------------------------------------------------------------------- /16-op-overloading/tombola.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/16-op-overloading/tombola.py -------------------------------------------------------------------------------- /16-op-overloading/unary_plus_decimal.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/16-op-overloading/unary_plus_decimal.py -------------------------------------------------------------------------------- /16-op-overloading/vector2d_v3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/16-op-overloading/vector2d_v3.py -------------------------------------------------------------------------------- /16-op-overloading/vector_v6.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/16-op-overloading/vector_v6.py -------------------------------------------------------------------------------- /16-op-overloading/vector_v7.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/16-op-overloading/vector_v7.py -------------------------------------------------------------------------------- /16-op-overloading/vector_v8.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/16-op-overloading/vector_v8.py -------------------------------------------------------------------------------- /17-it-generator/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/README.rst -------------------------------------------------------------------------------- /17-it-generator/aritprog.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/aritprog.rst -------------------------------------------------------------------------------- /17-it-generator/aritprog_float_error.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/aritprog_float_error.py -------------------------------------------------------------------------------- /17-it-generator/aritprog_runner.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/aritprog_runner.py -------------------------------------------------------------------------------- /17-it-generator/aritprog_v0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/aritprog_v0.py -------------------------------------------------------------------------------- /17-it-generator/aritprog_v1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/aritprog_v1.py -------------------------------------------------------------------------------- /17-it-generator/aritprog_v2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/aritprog_v2.py -------------------------------------------------------------------------------- /17-it-generator/aritprog_v3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/aritprog_v3.py -------------------------------------------------------------------------------- /17-it-generator/columnize_iter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/columnize_iter.py -------------------------------------------------------------------------------- /17-it-generator/coroaverager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/coroaverager.py -------------------------------------------------------------------------------- /17-it-generator/coroaverager2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/coroaverager2.py -------------------------------------------------------------------------------- /17-it-generator/fibo_by_hand.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/fibo_by_hand.py -------------------------------------------------------------------------------- /17-it-generator/fibo_gen.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/fibo_gen.py -------------------------------------------------------------------------------- /17-it-generator/isis2json/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/isis2json/README.rst -------------------------------------------------------------------------------- /17-it-generator/isis2json/isis2json.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/isis2json/isis2json.py -------------------------------------------------------------------------------- /17-it-generator/isis2json/iso2709.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/isis2json/iso2709.py -------------------------------------------------------------------------------- /17-it-generator/isis2json/subfield.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/isis2json/subfield.py -------------------------------------------------------------------------------- /17-it-generator/iter_gen_type.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/iter_gen_type.py -------------------------------------------------------------------------------- /17-it-generator/sentence.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/sentence.py -------------------------------------------------------------------------------- /17-it-generator/sentence.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/sentence.rst -------------------------------------------------------------------------------- /17-it-generator/sentence_gen.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/sentence_gen.py -------------------------------------------------------------------------------- /17-it-generator/sentence_gen2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/sentence_gen2.py -------------------------------------------------------------------------------- /17-it-generator/sentence_genexp.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/sentence_genexp.py -------------------------------------------------------------------------------- /17-it-generator/sentence_iter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/sentence_iter.py -------------------------------------------------------------------------------- /17-it-generator/sentence_iter2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/sentence_iter2.py -------------------------------------------------------------------------------- /17-it-generator/sentence_runner.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/sentence_runner.py -------------------------------------------------------------------------------- /17-it-generator/tree/4steps/tree_step0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/4steps/tree_step0.py -------------------------------------------------------------------------------- /17-it-generator/tree/4steps/tree_step1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/4steps/tree_step1.py -------------------------------------------------------------------------------- /17-it-generator/tree/4steps/tree_step2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/4steps/tree_step2.py -------------------------------------------------------------------------------- /17-it-generator/tree/4steps/tree_step3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/4steps/tree_step3.py -------------------------------------------------------------------------------- /17-it-generator/tree/classtree/classtree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/classtree/classtree.py -------------------------------------------------------------------------------- /17-it-generator/tree/classtree/classtree_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/classtree/classtree_test.py -------------------------------------------------------------------------------- /17-it-generator/tree/extra/drawtree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/extra/drawtree.py -------------------------------------------------------------------------------- /17-it-generator/tree/extra/test_drawtree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/extra/test_drawtree.py -------------------------------------------------------------------------------- /17-it-generator/tree/extra/test_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/extra/test_tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/extra/tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/extra/tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step0/test_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step0/test_tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step0/tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step0/tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step1/test_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step1/test_tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step1/tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step1/tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step2/test_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step2/test_tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step2/tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step2/tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step3/test_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step3/test_tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step3/tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step3/tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step4/test_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step4/test_tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step4/tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step4/tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step5/test_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step5/test_tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step5/tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step5/tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step6/test_tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step6/test_tree.py -------------------------------------------------------------------------------- /17-it-generator/tree/step6/tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/tree/step6/tree.py -------------------------------------------------------------------------------- /17-it-generator/yield_delegate_fail.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/yield_delegate_fail.py -------------------------------------------------------------------------------- /17-it-generator/yield_delegate_fix.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/17-it-generator/yield_delegate_fix.py -------------------------------------------------------------------------------- /18-with-match/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/README.rst -------------------------------------------------------------------------------- /18-with-match/lispy/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/LICENSE -------------------------------------------------------------------------------- /18-with-match/lispy/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/README.md -------------------------------------------------------------------------------- /18-with-match/lispy/original/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/original/LICENSE -------------------------------------------------------------------------------- /18-with-match/lispy/original/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/original/README.md -------------------------------------------------------------------------------- /18-with-match/lispy/original/lis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/original/lis.py -------------------------------------------------------------------------------- /18-with-match/lispy/original/lispy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/original/lispy.py -------------------------------------------------------------------------------- /18-with-match/lispy/original/lispytest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/original/lispytest.py -------------------------------------------------------------------------------- /18-with-match/lispy/py3.10/examples_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/py3.10/examples_test.py -------------------------------------------------------------------------------- /18-with-match/lispy/py3.10/lis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/py3.10/lis.py -------------------------------------------------------------------------------- /18-with-match/lispy/py3.10/lis_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/py3.10/lis_test.py -------------------------------------------------------------------------------- /18-with-match/lispy/py3.10/quicksort.scm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/py3.10/quicksort.scm -------------------------------------------------------------------------------- /18-with-match/lispy/py3.9/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/py3.9/README.md -------------------------------------------------------------------------------- /18-with-match/lispy/py3.9/examples_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/py3.9/examples_test.py -------------------------------------------------------------------------------- /18-with-match/lispy/py3.9/lis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/py3.9/lis.py -------------------------------------------------------------------------------- /18-with-match/lispy/py3.9/lis_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/lispy/py3.9/lis_test.py -------------------------------------------------------------------------------- /18-with-match/mirror.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/mirror.py -------------------------------------------------------------------------------- /18-with-match/mirror_gen.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/mirror_gen.py -------------------------------------------------------------------------------- /18-with-match/mirror_gen_exc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/18-with-match/mirror_gen_exc.py -------------------------------------------------------------------------------- /19-concurrency/primes/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/README.md -------------------------------------------------------------------------------- /19-concurrency/primes/log-procs.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/log-procs.txt -------------------------------------------------------------------------------- /19-concurrency/primes/primes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/primes.py -------------------------------------------------------------------------------- /19-concurrency/primes/procs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/procs.py -------------------------------------------------------------------------------- /19-concurrency/primes/procs_race_condition.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/procs_race_condition.py -------------------------------------------------------------------------------- /19-concurrency/primes/py36/primes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/py36/primes.py -------------------------------------------------------------------------------- /19-concurrency/primes/py36/procs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/py36/procs.py -------------------------------------------------------------------------------- /19-concurrency/primes/run_procs.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/run_procs.sh -------------------------------------------------------------------------------- /19-concurrency/primes/sequential.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/sequential.py -------------------------------------------------------------------------------- /19-concurrency/primes/spinner_prime_async_broken.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/spinner_prime_async_broken.py -------------------------------------------------------------------------------- /19-concurrency/primes/spinner_prime_async_nap.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/spinner_prime_async_nap.py -------------------------------------------------------------------------------- /19-concurrency/primes/spinner_prime_proc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/spinner_prime_proc.py -------------------------------------------------------------------------------- /19-concurrency/primes/spinner_prime_thread.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/spinner_prime_thread.py -------------------------------------------------------------------------------- /19-concurrency/primes/stats-procs.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/stats-procs.ipynb -------------------------------------------------------------------------------- /19-concurrency/primes/threads.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/primes/threads.py -------------------------------------------------------------------------------- /19-concurrency/spinner_async.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/spinner_async.py -------------------------------------------------------------------------------- /19-concurrency/spinner_async_experiment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/spinner_async_experiment.py -------------------------------------------------------------------------------- /19-concurrency/spinner_proc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/spinner_proc.py -------------------------------------------------------------------------------- /19-concurrency/spinner_thread.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/19-concurrency/spinner_thread.py -------------------------------------------------------------------------------- /20-executors/demo_executor_map.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/demo_executor_map.py -------------------------------------------------------------------------------- /20-executors/getflags/.gitignore: -------------------------------------------------------------------------------- 1 | flags/ 2 | downloaded/ 3 | -------------------------------------------------------------------------------- /20-executors/getflags/README.adoc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/README.adoc -------------------------------------------------------------------------------- /20-executors/getflags/country_codes.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/country_codes.txt -------------------------------------------------------------------------------- /20-executors/getflags/flags.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags.py -------------------------------------------------------------------------------- /20-executors/getflags/flags.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags.zip -------------------------------------------------------------------------------- /20-executors/getflags/flags2_asyncio.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags2_asyncio.py -------------------------------------------------------------------------------- /20-executors/getflags/flags2_asyncio_executor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags2_asyncio_executor.py -------------------------------------------------------------------------------- /20-executors/getflags/flags2_common.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags2_common.py -------------------------------------------------------------------------------- /20-executors/getflags/flags2_sequential.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags2_sequential.py -------------------------------------------------------------------------------- /20-executors/getflags/flags2_threadpool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags2_threadpool.py -------------------------------------------------------------------------------- /20-executors/getflags/flags3_asyncio.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags3_asyncio.py -------------------------------------------------------------------------------- /20-executors/getflags/flags_asyncio.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags_asyncio.py -------------------------------------------------------------------------------- /20-executors/getflags/flags_threadpool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags_threadpool.py -------------------------------------------------------------------------------- /20-executors/getflags/flags_threadpool_futures.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/flags_threadpool_futures.py -------------------------------------------------------------------------------- /20-executors/getflags/httpx-error-tree/drawtree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/httpx-error-tree/drawtree.py -------------------------------------------------------------------------------- /20-executors/getflags/httpx-error-tree/tree.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/httpx-error-tree/tree.py -------------------------------------------------------------------------------- /20-executors/getflags/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/requirements.txt -------------------------------------------------------------------------------- /20-executors/getflags/slow_server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/getflags/slow_server.py -------------------------------------------------------------------------------- /20-executors/primes/primes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/primes/primes.py -------------------------------------------------------------------------------- /20-executors/primes/proc_pool.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/20-executors/primes/proc_pool.py -------------------------------------------------------------------------------- /21-async/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/README.rst -------------------------------------------------------------------------------- /21-async/domains/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/domains/README.rst -------------------------------------------------------------------------------- /21-async/domains/asyncio/blogdom.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/domains/asyncio/blogdom.py -------------------------------------------------------------------------------- /21-async/domains/asyncio/domaincheck.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/domains/asyncio/domaincheck.py -------------------------------------------------------------------------------- /21-async/domains/asyncio/domainlib.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/domains/asyncio/domainlib.py -------------------------------------------------------------------------------- /21-async/domains/curio/blogdom.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/domains/curio/blogdom.py -------------------------------------------------------------------------------- /21-async/domains/curio/domaincheck.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/domains/curio/domaincheck.py -------------------------------------------------------------------------------- /21-async/domains/curio/domainlib.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/domains/curio/domainlib.py -------------------------------------------------------------------------------- /21-async/domains/curio/requirements.txt: -------------------------------------------------------------------------------- 1 | curio==1.5 2 | -------------------------------------------------------------------------------- /21-async/mojifinder/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/mojifinder/README.md -------------------------------------------------------------------------------- /21-async/mojifinder/bottle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/mojifinder/bottle.py -------------------------------------------------------------------------------- /21-async/mojifinder/charindex.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/mojifinder/charindex.py -------------------------------------------------------------------------------- /21-async/mojifinder/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/mojifinder/requirements.txt -------------------------------------------------------------------------------- /21-async/mojifinder/static/form.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/mojifinder/static/form.html -------------------------------------------------------------------------------- /21-async/mojifinder/tcp_mojifinder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/mojifinder/tcp_mojifinder.py -------------------------------------------------------------------------------- /21-async/mojifinder/web_mojifinder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/mojifinder/web_mojifinder.py -------------------------------------------------------------------------------- /21-async/mojifinder/web_mojifinder_bottle.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/21-async/mojifinder/web_mojifinder_bottle.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/README.rst -------------------------------------------------------------------------------- /22-dyn-attr-prop/blackknight.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/blackknight.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/bulkfood/bulkfood_v1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/bulkfood/bulkfood_v1.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/bulkfood/bulkfood_v2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/bulkfood/bulkfood_v2.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/bulkfood/bulkfood_v2b.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/bulkfood/bulkfood_v2b.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/bulkfood/bulkfood_v2prop.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/bulkfood/bulkfood_v2prop.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/doc_property.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/doc_property.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/data/osconfeed.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/data/osconfeed.json -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/explore0.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/explore0.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/explore1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/explore1.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/explore2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/explore2.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/osconfeed-sample.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/osconfeed-sample.json -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/osconfeed_explore.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/osconfeed_explore.rst -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/runtests.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/runtests.sh -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/schedule_v1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/schedule_v1.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/schedule_v2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/schedule_v2.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/schedule_v3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/schedule_v3.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/schedule_v4.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/schedule_v4.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/schedule_v4_hasattr.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/schedule_v4_hasattr.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/schedule_v5.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/schedule_v5.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/test_schedule_v1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/test_schedule_v1.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/test_schedule_v2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/test_schedule_v2.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/test_schedule_v3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/test_schedule_v3.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/test_schedule_v4.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/test_schedule_v4.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/oscon/test_schedule_v5.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/oscon/test_schedule_v5.py -------------------------------------------------------------------------------- /22-dyn-attr-prop/pseudo_construction.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/22-dyn-attr-prop/pseudo_construction.py -------------------------------------------------------------------------------- /23-descriptor/README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/23-descriptor/README.rst -------------------------------------------------------------------------------- /23-descriptor/bulkfood/bulkfood_v3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/23-descriptor/bulkfood/bulkfood_v3.py -------------------------------------------------------------------------------- /23-descriptor/bulkfood/bulkfood_v4.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/23-descriptor/bulkfood/bulkfood_v4.py -------------------------------------------------------------------------------- /23-descriptor/bulkfood/bulkfood_v4c.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/23-descriptor/bulkfood/bulkfood_v4c.py -------------------------------------------------------------------------------- /23-descriptor/bulkfood/bulkfood_v5.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/23-descriptor/bulkfood/bulkfood_v5.py -------------------------------------------------------------------------------- /23-descriptor/bulkfood/model_v4c.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/23-descriptor/bulkfood/model_v4c.py -------------------------------------------------------------------------------- /23-descriptor/bulkfood/model_v5.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/23-descriptor/bulkfood/model_v5.py -------------------------------------------------------------------------------- /23-descriptor/descriptorkinds.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/23-descriptor/descriptorkinds.py -------------------------------------------------------------------------------- /23-descriptor/descriptorkinds_dump.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/23-descriptor/descriptorkinds_dump.py -------------------------------------------------------------------------------- /23-descriptor/method_is_descriptor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/23-descriptor/method_is_descriptor.py -------------------------------------------------------------------------------- /24-class-metaprog/autoconst/autoconst.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/autoconst/autoconst.py -------------------------------------------------------------------------------- /24-class-metaprog/autoconst/autoconst_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/autoconst/autoconst_demo.py -------------------------------------------------------------------------------- /24-class-metaprog/bulkfood/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/bulkfood/README.md -------------------------------------------------------------------------------- /24-class-metaprog/bulkfood/bulkfood_v6.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/bulkfood/bulkfood_v6.py -------------------------------------------------------------------------------- /24-class-metaprog/bulkfood/bulkfood_v7.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/bulkfood/bulkfood_v7.py -------------------------------------------------------------------------------- /24-class-metaprog/bulkfood/bulkfood_v8.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/bulkfood/bulkfood_v8.py -------------------------------------------------------------------------------- /24-class-metaprog/bulkfood/model_v6.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/bulkfood/model_v6.py -------------------------------------------------------------------------------- /24-class-metaprog/bulkfood/model_v7.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/bulkfood/model_v7.py -------------------------------------------------------------------------------- /24-class-metaprog/bulkfood/model_v8.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/bulkfood/model_v8.py -------------------------------------------------------------------------------- /24-class-metaprog/checked/decorator/checkeddeco.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/checked/decorator/checkeddeco.py -------------------------------------------------------------------------------- /24-class-metaprog/checked/decorator/checkeddeco_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/checked/decorator/checkeddeco_demo.py -------------------------------------------------------------------------------- /24-class-metaprog/checked/decorator/checkeddeco_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/checked/decorator/checkeddeco_test.py -------------------------------------------------------------------------------- /24-class-metaprog/checked/initsub/checked_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/checked/initsub/checked_demo.py -------------------------------------------------------------------------------- /24-class-metaprog/checked/initsub/checkedlib.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/checked/initsub/checkedlib.py -------------------------------------------------------------------------------- /24-class-metaprog/checked/initsub/checkedlib_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/checked/initsub/checkedlib_test.py -------------------------------------------------------------------------------- /24-class-metaprog/checked/metaclass/checked_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/checked/metaclass/checked_demo.py -------------------------------------------------------------------------------- /24-class-metaprog/checked/metaclass/checkedlib.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/checked/metaclass/checkedlib.py -------------------------------------------------------------------------------- /24-class-metaprog/checked/metaclass/checkedlib_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/checked/metaclass/checkedlib_test.py -------------------------------------------------------------------------------- /24-class-metaprog/evaltime/builderlib.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/evaltime/builderlib.py -------------------------------------------------------------------------------- /24-class-metaprog/evaltime/evaldemo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/evaltime/evaldemo.py -------------------------------------------------------------------------------- /24-class-metaprog/evaltime/evaldemo_meta.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/evaltime/evaldemo_meta.py -------------------------------------------------------------------------------- /24-class-metaprog/evaltime/metalib.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/evaltime/metalib.py -------------------------------------------------------------------------------- /24-class-metaprog/factories.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/factories.py -------------------------------------------------------------------------------- /24-class-metaprog/factories_ducktyped.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/factories_ducktyped.py -------------------------------------------------------------------------------- /24-class-metaprog/hours/hours.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/hours/hours.py -------------------------------------------------------------------------------- /24-class-metaprog/hours/hours_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/hours/hours_test.py -------------------------------------------------------------------------------- /24-class-metaprog/metabunch/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/metabunch/README.md -------------------------------------------------------------------------------- /24-class-metaprog/metabunch/from3.6/bunch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/metabunch/from3.6/bunch.py -------------------------------------------------------------------------------- /24-class-metaprog/metabunch/from3.6/bunch_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/metabunch/from3.6/bunch_test.py -------------------------------------------------------------------------------- /24-class-metaprog/metabunch/nutshell3e/bunch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/metabunch/nutshell3e/bunch.py -------------------------------------------------------------------------------- /24-class-metaprog/metabunch/nutshell3e/bunch_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/metabunch/nutshell3e/bunch_test.py -------------------------------------------------------------------------------- /24-class-metaprog/metabunch/original/bunch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/metabunch/original/bunch.py -------------------------------------------------------------------------------- /24-class-metaprog/metabunch/original/bunch_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/metabunch/original/bunch_test.py -------------------------------------------------------------------------------- /24-class-metaprog/metabunch/pre3.6/bunch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/metabunch/pre3.6/bunch.py -------------------------------------------------------------------------------- /24-class-metaprog/metabunch/pre3.6/bunch_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/metabunch/pre3.6/bunch_test.py -------------------------------------------------------------------------------- /24-class-metaprog/persistent/.gitignore: -------------------------------------------------------------------------------- 1 | *.db 2 | -------------------------------------------------------------------------------- /24-class-metaprog/persistent/dblib.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/persistent/dblib.py -------------------------------------------------------------------------------- /24-class-metaprog/persistent/dblib_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/persistent/dblib_test.py -------------------------------------------------------------------------------- /24-class-metaprog/persistent/persistlib.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/persistent/persistlib.py -------------------------------------------------------------------------------- /24-class-metaprog/persistent/persistlib_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/persistent/persistlib_test.py -------------------------------------------------------------------------------- /24-class-metaprog/qualname/fakedjango.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/qualname/fakedjango.py -------------------------------------------------------------------------------- /24-class-metaprog/qualname/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/qualname/models.py -------------------------------------------------------------------------------- /24-class-metaprog/sentinel/sentinel.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/sentinel/sentinel.py -------------------------------------------------------------------------------- /24-class-metaprog/sentinel/sentinel_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/sentinel/sentinel_test.py -------------------------------------------------------------------------------- /24-class-metaprog/setattr/example_from_leo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/setattr/example_from_leo.py -------------------------------------------------------------------------------- /24-class-metaprog/slots/slots_timing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/slots/slots_timing.py -------------------------------------------------------------------------------- /24-class-metaprog/timeslice.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/timeslice.py -------------------------------------------------------------------------------- /24-class-metaprog/tinyenums/microenum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/tinyenums/microenum.py -------------------------------------------------------------------------------- /24-class-metaprog/tinyenums/microenum_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/tinyenums/microenum_demo.py -------------------------------------------------------------------------------- /24-class-metaprog/tinyenums/nanoenum.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/tinyenums/nanoenum.py -------------------------------------------------------------------------------- /24-class-metaprog/tinyenums/nanoenum_demo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/24-class-metaprog/tinyenums/nanoenum_demo.py -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/README.md -------------------------------------------------------------------------------- /links/FPY.LI.htaccess: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/links/FPY.LI.htaccess -------------------------------------------------------------------------------- /links/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/links/README.md -------------------------------------------------------------------------------- /pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | addopts = --doctest-modules 3 | -------------------------------------------------------------------------------- /ruff.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fluentpython/example-code-2e/HEAD/ruff.toml --------------------------------------------------------------------------------