From 155a44f730b21aea689d5bc74fa0d65a8a960208 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Sun, 30 Jul 2023 17:44:15 +0200 Subject: [PATCH 01/26] move files --- {src/teachpyx => teachpyx}/__init__.py | 0 {src/teachpyx => teachpyx}/examples/__init__.py | 0 {src/teachpyx => teachpyx}/examples/classiques.py | 0 {src/teachpyx => teachpyx}/examples/construction_classique.py | 0 {src/teachpyx => teachpyx}/examples/numpysex.py | 0 {src/teachpyx => teachpyx}/faq/__init__.py | 0 {src/teachpyx => teachpyx}/faq/faq_exception.py | 0 {src/teachpyx => teachpyx}/faq/faq_numpy.py | 0 {src/teachpyx => teachpyx}/faq/faq_python.py | 0 9 files changed, 0 insertions(+), 0 deletions(-) rename {src/teachpyx => teachpyx}/__init__.py (100%) rename {src/teachpyx => teachpyx}/examples/__init__.py (100%) rename {src/teachpyx => teachpyx}/examples/classiques.py (100%) rename {src/teachpyx => teachpyx}/examples/construction_classique.py (100%) rename {src/teachpyx => teachpyx}/examples/numpysex.py (100%) rename {src/teachpyx => teachpyx}/faq/__init__.py (100%) rename {src/teachpyx => teachpyx}/faq/faq_exception.py (100%) rename {src/teachpyx => teachpyx}/faq/faq_numpy.py (100%) rename {src/teachpyx => teachpyx}/faq/faq_python.py (100%) diff --git a/src/teachpyx/__init__.py b/teachpyx/__init__.py similarity index 100% rename from src/teachpyx/__init__.py rename to teachpyx/__init__.py diff --git a/src/teachpyx/examples/__init__.py b/teachpyx/examples/__init__.py similarity index 100% rename from src/teachpyx/examples/__init__.py rename to teachpyx/examples/__init__.py diff --git a/src/teachpyx/examples/classiques.py b/teachpyx/examples/classiques.py similarity index 100% rename from src/teachpyx/examples/classiques.py rename to teachpyx/examples/classiques.py diff --git a/src/teachpyx/examples/construction_classique.py b/teachpyx/examples/construction_classique.py similarity index 100% rename from src/teachpyx/examples/construction_classique.py rename to teachpyx/examples/construction_classique.py diff --git a/src/teachpyx/examples/numpysex.py b/teachpyx/examples/numpysex.py similarity index 100% rename from src/teachpyx/examples/numpysex.py rename to teachpyx/examples/numpysex.py diff --git a/src/teachpyx/faq/__init__.py b/teachpyx/faq/__init__.py similarity index 100% rename from src/teachpyx/faq/__init__.py rename to teachpyx/faq/__init__.py diff --git a/src/teachpyx/faq/faq_exception.py b/teachpyx/faq/faq_exception.py similarity index 100% rename from src/teachpyx/faq/faq_exception.py rename to teachpyx/faq/faq_exception.py diff --git a/src/teachpyx/faq/faq_numpy.py b/teachpyx/faq/faq_numpy.py similarity index 100% rename from src/teachpyx/faq/faq_numpy.py rename to teachpyx/faq/faq_numpy.py diff --git a/src/teachpyx/faq/faq_python.py b/teachpyx/faq/faq_python.py similarity index 100% rename from src/teachpyx/faq/faq_python.py rename to teachpyx/faq/faq_python.py From d85cec6d3223d9e7becc0e130a612de3b9b7ff33 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Sun, 30 Jul 2023 18:05:10 +0200 Subject: [PATCH 02/26] move files --- .circleci/config.yml | 8 +- .gitignore | 303 ++---------------- .landscape.yml | 18 -- .local.jenkins.lin.yml | 2 +- .local.jenkins.win.yml | 21 -- .travis.yml | 19 -- CHANGELOGS.rst | 7 + HISTORY.rst | 22 -- README.rst | 24 +- _unittests/ut_module/test___init__.py | 16 - _unittests/ut_module/test_code_style.py | 45 --- .../ut_module/test_convert_notebooks.py | 36 --- .../ut_module/test_latex_translation.py | 35 -- _unittests/ut_module/test_readme.py | 37 --- appveyor.yml | 4 +- build_script.bat | 13 - pyproject.toml | 54 ++++ requirements-dev.txt | 20 ++ requirements.txt | 33 +- setup.cfg | 5 + setup.py | 101 +++--- 21 files changed, 174 insertions(+), 649 deletions(-) delete mode 100644 .landscape.yml delete mode 100644 .local.jenkins.win.yml delete mode 100644 .travis.yml create mode 100644 CHANGELOGS.rst delete mode 100644 HISTORY.rst delete mode 100644 _unittests/ut_module/test___init__.py delete mode 100644 _unittests/ut_module/test_code_style.py delete mode 100644 _unittests/ut_module/test_convert_notebooks.py delete mode 100644 _unittests/ut_module/test_latex_translation.py delete mode 100644 _unittests/ut_module/test_readme.py delete mode 100644 build_script.bat create mode 100644 pyproject.toml create mode 100644 requirements-dev.txt create mode 100644 setup.cfg diff --git a/.circleci/config.yml b/.circleci/config.yml index c54498cd..7c974d7d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -11,7 +11,7 @@ jobs: - restore_cache: keys: - - v2-dependencies-{{ checksum "requirements.txt" }} + - v2-dependencies-{{ checksum "requirements-dev.txt" }} - v2-dependencies- - run: @@ -57,18 +57,16 @@ jobs: - save_cache: paths: - ./venv - key: v2-dependencies-{{ checksum "requirements.txt" }} + key: v2-dependencies-{{ checksum "requirements-dev.txt" }} - run: name: run tests command: | - export PYTHONPATH=src - python setup.py unittests + python -m pytest _unittests - run: name: wheel command: | - export PYTHONPATH=src python setup.py bdist_wheel mkdir -p test-reports/dist cp dist/*.whl test-reports/dist diff --git a/.gitignore b/.gitignore index 27d03d5f..95cc9a02 100644 --- a/.gitignore +++ b/.gitignore @@ -1,282 +1,25 @@ -################# -## Eclipse -################# - -*.pydevproject -.project -.metadata -bin/ -tmp/ -_virtualenv/ -*.tmp -*.bak -*.swp -*~.nib -local.properties -.classpath -.settings/ -.loadpath -*.pyproj -dummy.py - -# External tool builders -.externalToolBuilders/ - -# Locally stored "Eclipse launch configurations" -*.launch - -# CDT-specific -.cproject - -# PDT-specific -.buildpath - - -################# -## Visual Studio -################# - -## Ignore Visual Studio temporary files, build results, and -## files generated by popular Visual Studio add-ons. - -# User-specific files -*.suo -*.user -*.sln.docstates - -# Build results - -[Dd]ebug/ -[Rr]elease/ -x64/ -build/ -[Bb]in/ -[Oo]bj/ - -# MSTest test Results -[Tt]est[Rr]esult*/ -[Bb]uild[Ll]og.* - -*_i.c -*_p.c -*.ilk -*.meta -*.obj -*.pch -*.pdb -*.pgc -*.pgd -*.rsp -*.sbr -*.tlb -*.tli -*.tlh -*.tmp -*.tmp_proj -*.log -*.vspscc -*.vssscc -.builds -*.pidb -*.log -*.scc - -# Visual C++ cache files -ipch/ -*.aps -*.ncb -*.opensdf -*.sdf -*.cachefile - -# Visual Studio profiler -*.psess -*.vsp -*.vspx - -# Guidance Automation Toolkit -*.gpState - -# ReSharper is a .NET coding add-in -_ReSharper*/ -*.[Rr]e[Ss]harper - -# TeamCity is a build add-in -_TeamCity* - -# DotCover is a Code Coverage Tool -*.dotCover - -# NCrunch -*.ncrunch* -.*crunch*.local.xml - -# Installshield output folder -[Ee]xpress/ - -# DocProject is a documentation generator add-in -DocProject/buildhelp/ -DocProject/Help/*.HxT -DocProject/Help/*.HxC -DocProject/Help/*.hhc -DocProject/Help/*.hhk -DocProject/Help/*.hhp -DocProject/Help/Html2 -DocProject/Help/html - -# Click-Once directory -publish/ - -# Publish Web Output -*.Publish.xml -*.pubxml - -# NuGet Packages Directory -## TODO: If you have NuGet Package Restore enabled, uncomment the next line -#packages/ - -# Windows Azure Build Output -csx -*.build.csdef - -# Windows Store app package directory -AppPackages/ - -# Others -sql/ -*.Cache -ClientBin/ -[Ss]tyle[Cc]op.* -~$* -*~ -*.dbmdl -*.[Pp]ublish.xml -*.pfx -*.publishsettings - -# RIA/Silverlight projects -Generated_Code/ - -# Backup & report files from converting an old project file to a newer -# Visual Studio version. Backup files are not needed, because we have git ;-) -_UpgradeReport_Files/ -Backup*/ -UpgradeLog*.XML -UpgradeLog*.htm - -# SQL Server files -App_Data/*.mdf -App_Data/*.ldf - -############# -## Windows detritus -############# - -# Windows image file caches -Thumbs.db -ehthumbs.db - -# Folder config file -Desktop.ini - -# Recycle Bin used on file shares -$RECYCLE.BIN/ - -# Mac crap -.DS_Store - - -############# -## Python -############# - -*.py[co] - -# Packages -*.egg -*.egg-info -dist/ -build/ -eggs/ -parts/ -var/ -sdist/ -develop-eggs/ -__pycache__/ -.installed.cfg - -# Installer logs -pip-log.txt - -# Unit test / coverage reports +*.dot +*.dylib +*.prof +*.pyc +*.pyd +*.so .coverage -.tox - -#Translations -*.mo - -#Mr Developer -.mr.developer.cfg - -# py* packages +.eggs/* +_cache/* +build/* +dist/* +*egg-info/* +onnxruntime_profile* +prof temp_* -out_* -*/sphinxdoc/source/index_* -*/sphinxdoc/source/readme.* -*/sphinxdoc/source/LICENSE.txt -*/sphinxdoc/source/filechanges.* -version.txt -_doc/sphinxdoc/source/python_template/*box.html -_doc/sphinxdoc/source/python_template/*toc.html -_doc/sphinxdoc/source/teachpyx/ -_doc/sphinxdoc/source/coverage/* -*/sphinxdoc/source/all*.rst -_doc/sphinxdoc/source/notebooks/* -*/sphinxdoc/source/gynotebooks/* -_doc/sphinxdoc/source/gyexamples/* -_doc/sphinxdoc/source/examples/* -_doc/sphinxdoc/source/gallery/* -_doc/sphinxdoc/source/gallerynb/* -build_help.bat -_doc/sphinxdoc/source/blog/*.rst -_doc/sphinxdoc/source/blog/rss.xml -_doc/sphinxdoc/source/phdoc_templates/*toc.html -_doc/sphinxdoc/source/phdoc_templates/*box.html -_doc/sphinxdoc/source/blog/feed-icon*.png -_doc/sphinxdoc/source/_static/reveal.js/* -_doc/notebooks/.ipynb_checkpoints/* -dist_module27/* -auto_*.bat -auto_*.sh -auto_*.py -auto_*.xml -auto_*.db3 -_doc/sphinxdoc/source/_static/require.js -_doc/sphinxdoc/require.js -ex.* -m.temp -_doc/notebooks/*/.ipynb_checkpoints -_doc/notebooks/nlp/frwiki-latest-all-titles-in-ns0 -_doc/notebooks/nlp/sample*.txt -_doc/notebooks/nlp/completion.prof -_doc/notebooks/nlp/profile.png -_doc/notebooks/nlp/completion.dot -_doc/notebooks/nlp/completion.png -_doc/notebooks/nlp/completion.pstat -_unittests/run_unittests.py.out -*.err -_doc/sphinxdoc/source/_static/style_notebook_snippet.css -_todo/programme/data.bin -_todo/programme/info.bin -_doc/sphinxdoc/data.bin -_doc/sphinxdoc/info.bin -_doc/notebooks/Untitled.ipynb -_doc/sphinxdoc/source/c_gui/images/ren.py -_doc/sphinxdoc/source/nbcov.png -_doc/notebooks/python/include/* -_doc/notebooks/python/bin/* -_doc/notebooks/python/schema_pb2.py -_doc/notebooks/python/schema.proto -_doc/notebooks/python/protoc-*.zip -_doc/sphinxdoc/source/_temp_custom_run_script_* -_doc/sphinxdoc/source/_static/viz.js +.ipynb_checkpoints +_doc/CHANGELOGS.rst +_doc/LICENSE.txt +_doc/auto_examples/* +_doc/examples/plot_*.png +_doc/examples/plot_*.xlsx +_doc/examples/data/*.optimized.onnx +_doc/examples/*.html +_doc/_static/require.js +_doc/_static/viz.js diff --git a/.landscape.yml b/.landscape.yml deleted file mode 100644 index 2288fb96..00000000 --- a/.landscape.yml +++ /dev/null @@ -1,18 +0,0 @@ -doc-warnings: true -test-warnings: false -strictness: veryhigh -max-line-length: 120 -autodetect: true -pep8: full -python-targets: 3 -requirements: - - requirement.txt -ignore-paths: - - _unittests - - _doc - - src - - dist - - build -ignore-patterns: - - .*Parser\.py$ - - .*Lexer\.py$ diff --git a/.local.jenkins.lin.yml b/.local.jenkins.lin.yml index 4e2a4208..aa3babbc 100644 --- a/.local.jenkins.lin.yml +++ b/.local.jenkins.lin.yml @@ -10,7 +10,7 @@ virtualenv: install: - $PYINT -m pip install --upgrade pip - $PYINT -m pip install --upgrade --no-cache-dir --no-deps --index http://localhost:8067/simple/ jyquickhelper pyquickhelper pandas_streaming --extra-index-url=https://pypi.python.org/simple/ - - $PYINT -m pip install -r requirements.txt + - $PYINT -m pip install -r requirements-dev.txt - $PYINT --version - $PYINT -m pip freeze diff --git a/.local.jenkins.win.yml b/.local.jenkins.win.yml deleted file mode 100644 index cffcc11f..00000000 --- a/.local.jenkins.win.yml +++ /dev/null @@ -1,21 +0,0 @@ -language: python -python: - - { PATH: "{{replace(Python39, '\\', '\\\\')}}", VERSION: 3.9, DIST: std, PYTHONPATH: src } -virtualenv: - - path: {{ospathjoin(root_path, pickname("%NAME_JENKINS%", project_name + "_%VERSION%_%DIST%_%NAME%"), "_venv")}} -install: - - pip install --upgrade pip - - pip install --no-cache-dir --no-deps --index http://localhost:8067/simple/ pyquickhelper pyensae pymmails pymyinstall pyrsslocal - - pip install -r requirements.txt - - pip freeze - - pip freeze > pip_freeze.txt -script: - - { CMD: "python -X faulthandler -X showrefcount -u setup.py unittests", NAME: "UT" } - - { CMD: "python -X faulthandler -X showrefcount -u setup.py unittests_LONG", NAME: "UT_LONG", TIMEOUT: 3600 } -after_script: - - python -u setup.py bdist_wheel - - if [ ${DIST} != "conda" and ${NAME} == "UT" ] then copy dist\*.whl {{root_path}}\..\..\local_pypi\local_pypi_server fi -documentation: - - if [ ${NAME} == "UT" ] then python -u setup.py build_sphinx fi - - if [ ${NAME} == "UT" ] then xcopy /E /C /I /Y _doc\sphinxdoc\build\html dist\html fi - - if [ ${NAME} == "UT" ] then xcopy /E /C /I /Y _doc\sphinxdoc\build\elatex\*.pdf dist\html fi diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index b83388aa..00000000 --- a/.travis.yml +++ /dev/null @@ -1,19 +0,0 @@ -dist: focal -sudo: true -language: python -env: - - SDL_VIDEODRIVER=dummy SDL_AUDIODRIVER=disk -matrix: - include: - - python: 3.10 - addons: - - apt: - - packages: - - graphviz -before_install: - -install: - - pip install -r requirements.txt - - export PYTHONPATH=src -script: - - python setup.py unittests diff --git a/CHANGELOGS.rst b/CHANGELOGS.rst new file mode 100644 index 00000000..6c121ad6 --- /dev/null +++ b/CHANGELOGS.rst @@ -0,0 +1,7 @@ +Change Logs +=========== + +0.2.0 ++++++ + +* :pr:`7`: refactoring diff --git a/HISTORY.rst b/HISTORY.rst deleted file mode 100644 index 8ca1e733..00000000 --- a/HISTORY.rst +++ /dev/null @@ -1,22 +0,0 @@ - -.. _l-HISTORY: - -======= -History -======= - -current - 2021-01-01 - 0.00Mb -============================= - -0.0.0 - 2021-01-01 - 0.00Mb -=========================== - -* `14`: Aborder la notation f"" (2019-12-22) -* `10`: talk about warnings (2018-09-23) -* `6`: remove double entries in index (website) (2018-09-23) -* `9`: move pandas_groupby_nan to pandas_streaming (2018-05-17) -* `8`: talk about protobuf (2018-04-21) -* `7`: talk about serialization (2018-04-20) -* `5`: fix .. only:: html in readme.rst (2018-03-29) -* `2`: finish the migration of latex (2017-06-10) -* `1`: completed completion (2016-09-25) diff --git a/README.rst b/README.rst index c30fa027..02535df6 100644 --- a/README.rst +++ b/README.rst @@ -1,8 +1,4 @@ -.. image:: https://travis-ci.com/sdpython/teachpyx.svg?branch=master - :target: https://app.travis-ci.com/github/sdpython/teachpyx - :alt: Build status - .. image:: https://ci.appveyor.com/api/projects/status/5jl303wl14dtesl0?svg=true :target: https://ci.appveyor.com/project/sdpython/teachpyx :alt: Build Status Windows @@ -24,25 +20,13 @@ :alt: GitHub Issues :target: https://github.com/sdpython/teachpyx/issues -.. image:: http://www.xavierdupre.fr/app/teachpyx/helpsphinx/_images/nbcov.png - :target: http://www.xavierdupre.fr/app/teachpyx/helpsphinx/all_notebooks_coverage.html - :alt: Notebook Coverage - .. image:: https://img.shields.io/github/repo-size/sdpython/teachpyx :target: https://github.com/sdpython/teachpyx/ :alt: size -.. _l-README: - -teachpyx -======== +teachpyx: programmation python +============================== -Programmation *Python* en français. -A usage pédagogique. La documentation du module +Programmation *Python* en français. A usage pédagogique. La +`documentation `_ du module est construite pour un cours de programmation. - -**Links:** - -* `GitHub/teachpyx `_ -* `documentation `_ -* `Blog `_ diff --git a/_unittests/ut_module/test___init__.py b/_unittests/ut_module/test___init__.py deleted file mode 100644 index d4c2272f..00000000 --- a/_unittests/ut_module/test___init__.py +++ /dev/null @@ -1,16 +0,0 @@ -""" -@brief test log(time=0s) -""" -import unittest -from teachpyx import check, _setup_hook - - -class TestInit(unittest.TestCase): - - def test_check(self): - assert check() - _setup_hook() - - -if __name__ == "__main__": - unittest.main() diff --git a/_unittests/ut_module/test_code_style.py b/_unittests/ut_module/test_code_style.py deleted file mode 100644 index 5af1b29d..00000000 --- a/_unittests/ut_module/test_code_style.py +++ /dev/null @@ -1,45 +0,0 @@ -""" -@brief test log(time=0s) -""" - -import os -import unittest -from pyquickhelper.loghelper import fLOG -from pyquickhelper.pycode import check_pep8 - - -class TestCodeStyle(unittest.TestCase): - - def test_code_style_src(self): - fLOG( - __file__, - self._testMethodName, - OutputPrint=__name__ == "__main__") - - thi = os.path.abspath(os.path.dirname(__file__)) - src_ = os.path.normpath(os.path.join(thi, "..", "..", "src")) - check_pep8(src_, fLOG=fLOG, - pylint_ignore=('C0103', 'C1801', 'R1705', 'W0108', 'W0613', - 'W0212', 'W0107', 'C0415', 'C0209'), - skip=['construction_classique.py:577: C0200', - "Redefining built-in 'format'", - "data_bikes.py:1: F0002"]) - - def test_code_style_test(self): - fLOG( - __file__, - self._testMethodName, - OutputPrint=__name__ == "__main__") - - thi = os.path.abspath(os.path.dirname(__file__)) - test = os.path.normpath(os.path.join(thi, "..", )) - check_pep8(test, fLOG=fLOG, neg_pattern="temp_.*", - pylint_ignore=('C0111', 'C0103', 'W0622', 'C1801', 'C0412', - 'W0122', 'W0123', 'E1101', 'R1705', - 'W0703', 'W0107', 'C0415', 'C0209'), - skip=["Unused argument 'cell'", - ]) - - -if __name__ == "__main__": - unittest.main() diff --git a/_unittests/ut_module/test_convert_notebooks.py b/_unittests/ut_module/test_convert_notebooks.py deleted file mode 100644 index 09fe244f..00000000 --- a/_unittests/ut_module/test_convert_notebooks.py +++ /dev/null @@ -1,36 +0,0 @@ -""" -@brief test log(time=0s) -""" -import os -import unittest -from pyquickhelper.loghelper import fLOG -from pyquickhelper.filehelper import explore_folder_iterfile -from pyquickhelper.ipythonhelper import upgrade_notebook, remove_execution_number - - -class TestConvertNotebooks(unittest.TestCase): - - def test_convert_notebooks(self): - fLOG( - __file__, - self._testMethodName, - OutputPrint=__name__ == "__main__") - fold = os.path.abspath(os.path.dirname(__file__)) - fold2 = os.path.normpath( - os.path.join(fold, "..", "..", "_doc", "notebooks")) - for nbf in explore_folder_iterfile(fold2, pattern=".*[.]ipynb"): - t = upgrade_notebook(nbf) - if t: - fLOG("modified", nbf) - # remove numbers - remove_execution_number(nbf, nbf) - - fold2 = os.path.normpath(os.path.join(fold, "..", "..", "_unittests")) - for nbf in explore_folder_iterfile(fold2, pattern=".*[.]ipynb"): - t = upgrade_notebook(nbf) - if t: - fLOG("modified", nbf) - - -if __name__ == "__main__": - unittest.main() diff --git a/_unittests/ut_module/test_latex_translation.py b/_unittests/ut_module/test_latex_translation.py deleted file mode 100644 index 7e427eba..00000000 --- a/_unittests/ut_module/test_latex_translation.py +++ /dev/null @@ -1,35 +0,0 @@ -""" -@brief test log(time=0s) -""" -import os -import unittest -import warnings -from pyquickhelper.loghelper import fLOG -from pyquickhelper.pycode import get_temp_folder, is_travis_or_appveyor - - -class TestLatexTranslation(unittest.TestCase): - - def test_translation(self): - fLOG( - __file__, - self._testMethodName, - OutputPrint=__name__ == "__main__") - - if is_travis_or_appveyor(): - warnings.warn("no pandoc") - return - from pyquickhelper.helpgen import latex2rst - temp = get_temp_folder(__file__, "temp_translation") - tex = os.path.join(temp, "..", "..", "..", "_todo") - for t in os.listdir(tex): - if ".tex" not in t: - continue - ft = os.path.join(tex, t) - to = os.path.join(temp, t.replace(".tex", ".rst")) - tom = os.path.join(temp, t.replace(".tex", ".rst.tmp")) - latex2rst(ft, to, encoding="latin-1", fLOG=fLOG, temp_file=tom) - - -if __name__ == "__main__": - unittest.main() diff --git a/_unittests/ut_module/test_readme.py b/_unittests/ut_module/test_readme.py deleted file mode 100644 index c9d365b3..00000000 --- a/_unittests/ut_module/test_readme.py +++ /dev/null @@ -1,37 +0,0 @@ -""" -@brief test tree node (time=50s) -""" -import os -import unittest -from pyquickhelper.loghelper import fLOG -from pyquickhelper.pycode import get_temp_folder - - -class TestReadme(unittest.TestCase): - - def test_venv_docutils08_readme(self): - fLOG( - __file__, - self._testMethodName, - OutputPrint=__name__ == "__main__") - - fold = os.path.dirname(os.path.abspath(__file__)) - readme = os.path.join(fold, "..", "..", "README.rst") - assert os.path.exists(readme) - with open(readme, "r", encoding="utf8") as f: - content = f.read() - - assert len(content) > 0 - temp = get_temp_folder(__file__, "temp_readme") - - if __name__ != "__main__": - # does not work from a virtual environment - return - - from pyquickhelper.pycode import check_readme_syntax - - check_readme_syntax(readme, folder=temp, fLOG=fLOG) - - -if __name__ == "__main__": - unittest.main() diff --git a/appveyor.yml b/appveyor.yml index 340b8bcb..e8ed747f 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -11,11 +11,11 @@ init: install: - "%PYTHON%\\python -m pip install --upgrade pip" - "%PYTHON%\\Scripts\\pip install -r requirements.txt" - - set PYTHONPATH=src + - "%PYTHON%\\Scripts\\pip install -r requirements-dev.txt" build: off test_script: - - "%PYTHON%\\python -u setup.py unittests" + - "%PYTHON%\\python -m pytest _unittests" after_test: - "%PYTHON%\\python -u setup.py bdist_wheel" diff --git a/build_script.bat b/build_script.bat deleted file mode 100644 index b92257b0..00000000 --- a/build_script.bat +++ /dev/null @@ -1,13 +0,0 @@ -@echo off -if "%1"=="" goto default_value_python: -set pythonexe="%1" -%pythonexe% setup.py write_version -goto custom_python: - -:default_value_python: -set pythonexe="c:\Python391_x64\python.exe" -if not exist %pythonexe% set pythonexe="c:\Python372_x64\python.exe" -:custom_python: -@echo [python] %pythonexe% -%pythonexe% -u setup.py build_script -if %errorlevel% neq 0 exit /b %errorlevel% \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 00000000..97d42ead --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,54 @@ +[tool.rstcheck] +report_level = "INFO" +ignore_directives = [ + "autosignature", + "autoclass", + "autofunction", + "automodule", + "blogpost", + "blogpostagg", + "exref", + "exreflist", + "faqreflist", + "gdot", + "image-sg", + "inheritance-diagram", + "mathdef", + "mathdeflist", + "nbgallery", + "nbgallerylink", + "plot", + "runpython", + "tocdelay", + "todoext", + "todoextlist", +] +ignore_roles = ["epkg", "githublink", "issue"] +ignore_messages = [ + ".*Hyperlink target .* is not referenced.*", + ".*Document or section may not begin with a transition.*", + ".*Unknown target name: .*[0-9]{4}.*", + ".*Duplicate explicit target name: .pdf..*", + ".*Unexpected possible title overline or transition..*", +] + +[tool.ruff] + +# Exclude a variety of commonly ignored directories. +exclude = [ + ".eggs", + ".git", + "build", + "dist", +] + +# Same as Black. +line-length = 88 + +[tool.ruff.mccabe] +# Unlike Flake8, default to a complexity level of 10. +max-complexity = 10 + +[tool.ruff.per-file-ignores] +"_doc/conf.py" = ["F821"] +"teachpyx/__init__.py" = ["E501"] diff --git a/requirements-dev.txt b/requirements-dev.txt new file mode 100644 index 00000000..28a5c8ec --- /dev/null +++ b/requirements-dev.txt @@ -0,0 +1,20 @@ +black +black-nb +blockdiag +coverage +jupyter +jyquickhelper +matplotlib +pandas +pillow +pydata_sphinx_theme +pytest +ruff +scikit-learn>=1.1 +git+https://github.com/onnx/sklearn-onnx.git +sphinx +sphinx-gallery +sphinx-issues +git+https://github.com/sdpython/sphinx-runpython.git +tqdm +wheel diff --git a/requirements.txt b/requirements.txt index 26c544fa..46c38e1f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,32 +1,3 @@ -bokeh -cloudpickle -coverage -ipython -jupyter -jupyter_client -jupyter_core -jyquickhelper matplotlib -mutagen -numpy>=1.11.0 -nbformat -nbpresent -notebook>=5.0.0 -pandas>=1.0.0 -pandas_streaming>=0.1.87 -pillow -protobuf -pycodestyle -pylint>=2.14.0 -pyquickhelper>=1.9 -pyquicksetup>=0.2 -scikit-learn -scipy -sphinx -sphinxcontrib.imagesvg -pydata_sphinx_theme -sphinxcontrib-blockdiag -sphinx_gallery -solar-theme -ujson -wheel +numpy +pandas diff --git a/setup.cfg b/setup.cfg new file mode 100644 index 00000000..cbf5a663 --- /dev/null +++ b/setup.cfg @@ -0,0 +1,5 @@ +[options] +packages = find: + +[options.packages.find] +include = teachpyx* diff --git a/setup.py b/setup.py index 8c092fb9..cdd6defb 100644 --- a/setup.py +++ b/setup.py @@ -1,61 +1,66 @@ # -*- coding: utf-8 -*- -import sys import os -from setuptools import find_packages, setup -from pyquicksetup import read_version, read_readme, default_cmdclass +from setuptools import setup -######### -# settings -######### +###################### +# beginning of setup +###################### -project_var_name = "teachpyx" -versionPython = f"{sys.version_info.major}.{sys.version_info.minor}" -path = "Lib/site-packages/" + project_var_name -readme = 'README.rst' -history = "HISTORY.rst" -requirements = None -KEYWORDS = [project_var_name, 'Xavier Dupré', 'teaching'] -DESCRIPTION = """Lectures about programming mostly in Python.""" +here = os.path.dirname(__file__) +if here == "": + here = "." +package_data = {"teachpyx": ["*.txt"]} +try: + with open(os.path.join(here, "requirements.txt"), "r") as f: + requirements = f.read().strip(" \n\r\t").split("\n") +except FileNotFoundError: + requirements = [] +if len(requirements) == 0 or requirements == [""]: + requirements = ["matplotlib", "numpy", "pandas"] -CLASSIFIERS = [ - 'Programming Language :: Python :: %d' % sys.version_info[0], - 'Intended Audience :: Developers', - 'Topic :: Scientific/Engineering', - 'Topic :: Education', - 'License :: OSI Approved :: MIT License', - 'Development Status :: 5 - Production/Stable' -] - - -####### -# data -####### - - -packages = find_packages('src', exclude='src') -package_dir = {k: "src/" + k.replace(".", "/") for k in packages} -package_data = {} +try: + with open(os.path.join(here, "README.rst"), "r", encoding="utf-8") as f: + long_description = "teachpyx:" + f.read().split("teachpyx:")[1] +except FileNotFoundError: + long_description = "" +version_str = "0.1.0" +with open(os.path.join(here, "teachpyx/__init__.py"), "r") as f: + line = [ + _ + for _ in [_.strip("\r\n ") for _ in f.readlines()] + if _.startswith("__version__") + ] + if len(line) > 0: + version_str = line[0].split("=")[1].strip('" ') +# see https://pypi.org/classifiers/ setup( - name=project_var_name, - version=read_version(__file__, project_var_name, subfolder='src'), - author='Xavier Dupré', - author_email='xavier.dupre@gmail.com', - license="MIT", - url="http://www.xavierdupre.fr/app/teachpyx/helpsphinx/index.html", - download_url="https://github.com/sdpython/teachpyx/", - description=DESCRIPTION, - long_description=read_readme(__file__), - cmdclass=default_cmdclass(), - keywords=KEYWORDS, - classifiers=CLASSIFIERS, - packages=packages, - package_dir=package_dir, + name="teachpyx", + version=version_str, + description="Programmation Python", + long_description=long_description, + author="Xavier Dupré", + author_email="xavier.dupre@gmail.com", + url="https://github.com/sdpython/teachpyx", package_data=package_data, - setup_requires=['pyquicksetup>=0.2'], - install_requires=['numpy>=1.18', 'pandas>=1.0'], + install_requires=requirements, + classifiers=[ + "Intended Audience :: Science/Research", + "Intended Audience :: Education", + "License :: OSI Approved :: MIT License", + "Programming Language :: Python", + "Topic :: Scientific/Engineering", + "Topic :: Scientific/Engineering :: Mathematics", + "Topic :: Education", + "Development Status :: 5 - Production/Stable", + "Operating System :: OS Independent", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + ], ) From 3f2f71e630024b9cd2bb2fb68ac7a78ab04ebe43 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Sun, 30 Jul 2023 18:11:37 +0200 Subject: [PATCH 03/26] move files --- .../source => }/_static/git_logo.png | Bin .../source => }/_static/project_ico.ico | Bin .../source => }/_static/project_ico.png | Bin .../source => }/_static/project_ico_small.png | Bin .../source => }/c_classes/classes.rst | 0 .../source => }/c_classes/index.rst | 0 _doc/{sphinxdoc/source => }/c_data/index.rst | 0 .../source => }/c_exception/exception.rst | 0 .../source => }/c_exception/exception_ext.rst | 0 .../source => }/c_exception/index.rst | 0 .../source => }/c_exception/warning.rst | 0 .../source => }/c_gui/images/after.png | Bin .../source => }/c_gui/images/apachein.png | Bin .../source => }/c_gui/images/apant0.png | Bin .../source => }/c_gui/images/apant1.png | Bin .../source => }/c_gui/images/apant2.png | Bin .../source => }/c_gui/images/apant3.png | Bin .../source => }/c_gui/images/apant4.png | Bin .../source => }/c_gui/images/apant5.png | Bin .../source => }/c_gui/images/arbo.png | Bin .../source => }/c_gui/images/bbette.png | Bin .../source => }/c_gui/images/bbette2.png | Bin .../source => }/c_gui/images/bind.png | Bin .../source => }/c_gui/images/boost.png | Bin .../source => }/c_gui/images/boostp.png | Bin .../source => }/c_gui/images/bouton.png | Bin .../source => }/c_gui/images/bouton2.png | Bin .../source => }/c_gui/images/bouton3.png | Bin .../source => }/c_gui/images/can.png | Bin .../source => }/c_gui/images/check.png | Bin .../source => }/c_gui/images/check2.png | Bin .../source => }/c_gui/images/cmds.png | Bin .../source => }/c_gui/images/cmds26.png | Bin .../source => }/c_gui/images/combo1.png | Bin .../source => }/c_gui/images/combo2.png | Bin .../source => }/c_gui/images/comm1.png | Bin .../source => }/c_gui/images/comm2.png | Bin .../source => }/c_gui/images/config.png | Bin .../source => }/c_gui/images/entree.png | Bin .../source => }/c_gui/images/essai.png | Bin .../source => }/c_gui/images/fenpers.png | Bin .../source => }/c_gui/images/focus.png | Bin .../source => }/c_gui/images/frame.png | Bin .../source => }/c_gui/images/graphviz.png | Bin .../source => }/c_gui/images/grid1.png | Bin .../source => }/c_gui/images/hhw.png | Bin .../source => }/c_gui/images/inte.png | Bin .../source => }/c_gui/images/label.png | Bin .../source => }/c_gui/images/label2.png | Bin .../source => }/c_gui/images/ligne.png | Bin .../source => }/c_gui/images/ligne26.png | Bin .../source => }/c_gui/images/list1.png | Bin .../source => }/c_gui/images/list2.png | Bin .../source => }/c_gui/images/listboxs.png | Bin .../source => }/c_gui/images/mainloop.png | Bin .../source => }/c_gui/images/menu.png | Bin .../source => }/c_gui/images/menut.png | Bin .../source => }/c_gui/images/mysql1.png | Bin .../source => }/c_gui/images/mysql2.png | Bin .../source => }/c_gui/images/mysql3.png | Bin .../source => }/c_gui/images/mysql4.png | Bin .../source => }/c_gui/images/mysql5.png | Bin .../source => }/c_gui/images/mysql6.png | Bin .../source => }/c_gui/images/mysql7.png | Bin .../source => }/c_gui/images/mysql8.png | Bin .../source => }/c_gui/images/mysqlodbc.png | Bin .../source => }/c_gui/images/mysqlodbc2.png | Bin .../source => }/c_gui/images/odbc.png | Bin .../source => }/c_gui/images/pack1.png | Bin .../source => }/c_gui/images/pack2.png | Bin .../source => }/c_gui/images/pass.png | Bin .../source => }/c_gui/images/pcmd.png | Bin .../source => }/c_gui/images/pcmd2.png | Bin .../source => }/c_gui/images/pcmd26.png | Bin .../source => }/c_gui/images/popt.png | Bin .../source => }/c_gui/images/profile.png | Bin .../source => }/c_gui/images/pydoc_image.png | Bin .../source => }/c_gui/images/pydoch.png | Bin .../source => }/c_gui/images/pyform1.png | Bin .../source => }/c_gui/images/pyscripter.png | Bin .../source => }/c_gui/images/radio.png | Bin .../source => }/c_gui/images/radio2.png | Bin .../source => }/c_gui/images/rawinput.png | Bin .../source => }/c_gui/images/reper.png | Bin .../source => }/c_gui/images/reper26.png | Bin .../source => }/c_gui/images/runs.png | Bin .../source => }/c_gui/images/saisie1.png | Bin .../source => }/c_gui/images/saisie2.png | Bin .../source => }/c_gui/images/scite1.png | Bin .../source => }/c_gui/images/scite2.png | Bin .../source => }/c_gui/images/scite226.png | Bin .../source => }/c_gui/images/seqev.png | Bin .../source => }/c_gui/images/sql1.png | Bin .../source => }/c_gui/images/svn1.png | Bin .../source => }/c_gui/images/svn10a.png | Bin .../source => }/c_gui/images/svn10b.png | Bin .../source => }/c_gui/images/svn11a.png | Bin .../source => }/c_gui/images/svn11b.png | Bin .../source => }/c_gui/images/svn12_.png | Bin .../source => }/c_gui/images/svn2ex.png | Bin .../source => }/c_gui/images/svn3r.png | Bin .../source => }/c_gui/images/svn4f.png | Bin .../source => }/c_gui/images/svn5f.png | Bin .../source => }/c_gui/images/svn61.png | Bin .../source => }/c_gui/images/svn72.png | Bin .../source => }/c_gui/images/svn8n.png | Bin .../source => }/c_gui/images/svn8nn.png | Bin .../source => }/c_gui/images/svn9a.png | Bin .../source => }/c_gui/images/svn9b.png | Bin .../source => }/c_gui/images/text1.png | Bin .../source => }/c_gui/images/threadim1.png | Bin .../source => }/c_gui/images/threadim2.png | Bin .../source => }/c_gui/images/tixfile.png | Bin .../source => }/c_gui/images/view.png | Bin .../source => }/c_gui/images/wiki1.png | Bin .../source => }/c_gui/images/wiki2.png | Bin .../source => }/c_gui/images/wiki3.png | Bin .../source => }/c_gui/images/wiki4.png | Bin .../source => }/c_gui/images/wiki5.png | Bin .../source => }/c_gui/images/wiki6.png | Bin .../source => }/c_gui/images/window1.png | Bin _doc/{sphinxdoc/source => }/c_gui/index.rst | 0 _doc/{sphinxdoc/source => }/c_gui/tkinter.rst | 0 .../source => }/c_lang/collections.rst | 0 .../source => }/c_lang/constructions.rst | 0 _doc/{sphinxdoc/source => }/c_lang/dates.rst | 0 .../source => }/c_lang/encoding.rst | 0 _doc/{sphinxdoc/source => }/c_lang/faq.rst | 0 .../source => }/c_lang/images/rawinput.png | Bin _doc/{sphinxdoc/source => }/c_lang/index.rst | 0 .../{sphinxdoc/source => }/c_lang/syntaxe.rst | 0 _doc/{sphinxdoc/source => }/c_lang/types.rst | 0 _doc/{sphinxdoc/source => }/c_module/arbo.png | Bin _doc/{sphinxdoc/source => }/c_module/faq.rst | 0 .../{sphinxdoc/source => }/c_module/files.rst | 0 .../{sphinxdoc/source => }/c_module/index.rst | 0 .../source => }/c_module/module.rst | 0 .../source => }/c_module/serialization.rst | 0 .../c_parallelisation/images/asyncapi.png | Bin .../c_parallelisation/images/pool.png | Bin .../c_parallelisation/images/threadim1.png | Bin .../c_parallelisation/images/threadim2.png | Bin .../source => }/c_parallelisation/index.rst | 0 .../source => }/c_parallelisation/thread.rst | 0 _doc/{sphinxdoc/source => }/c_regex/index.rst | 0 _doc/{sphinxdoc/source => }/c_regex/regex.rst | 0 .../c_resume/conseil_programmes.rst | 0 .../{sphinxdoc/source => }/c_resume/index.rst | 0 .../source => }/c_resume/python_sheet.rst | 0 _doc/conf.py | 217 ++++++++++++++++++ _doc/{sphinxdoc/source => }/defthe_index.rst | 0 _doc/{sphinxdoc/source => }/glossary.rst | 0 _doc/{sphinxdoc/source => }/i_ex.rst | 0 _doc/i_examples.rst | 16 ++ _doc/{sphinxdoc/source => }/i_faq.rst | 0 _doc/{sphinxdoc/source => }/index.rst | 1 - _doc/{sphinxdoc/source => }/introduction.rst | 0 _doc/{sphinxdoc/source => }/license.rst | 0 _doc/sphinxdoc/source/HISTORY.rst | 22 -- _doc/sphinxdoc/source/_static/my-styles.css | 30 --- .../blog/2016/2016-08-18_first_blog.rst | 8 - .../blog/2016/2016-11-20_groupby_nan.rst | 11 - .../blog/2017/2017-01-06_programming.rst | 29 --- .../blog/2017/2017-07-01_cextension.rst | 29 --- .../blog/2018/2018-03-31_classesfonctions.rst | 174 -------------- .../source/blog/2018/2018-04-05_debug.rst | 34 --- .../source/blog/2018/2018-10-24_memory.rst | 20 -- .../source/blog/2020/2020-10-25_numpyinf.rst | 43 ---- _doc/sphinxdoc/source/conf.py | 115 ---------- _doc/sphinxdoc/source/doctestunit.rst | 12 - _doc/sphinxdoc/source/end_index2.rst | 11 - _doc/sphinxdoc/source/end_index_glossaire.rst | 19 -- _doc/sphinxdoc/source/i_examples.rst | 28 --- _doc/sphinxdoc/source/i_index.rst | 21 -- _doc/sphinxdoc/source/issues_todoextlist.rst | 21 -- .../source/phdoc_templates/layout.html | 5 - .../source/phdoc_templates/my-styles.css | 30 --- .../source/phdoc_templates/page.html | 4 - 178 files changed, 233 insertions(+), 667 deletions(-) rename _doc/{sphinxdoc/source => }/_static/git_logo.png (100%) rename _doc/{sphinxdoc/source => }/_static/project_ico.ico (100%) rename _doc/{sphinxdoc/source => }/_static/project_ico.png (100%) rename _doc/{sphinxdoc/source => }/_static/project_ico_small.png (100%) rename _doc/{sphinxdoc/source => }/c_classes/classes.rst (100%) rename _doc/{sphinxdoc/source => }/c_classes/index.rst (100%) rename _doc/{sphinxdoc/source => }/c_data/index.rst (100%) rename _doc/{sphinxdoc/source => }/c_exception/exception.rst (100%) rename _doc/{sphinxdoc/source => }/c_exception/exception_ext.rst (100%) rename _doc/{sphinxdoc/source => }/c_exception/index.rst (100%) rename _doc/{sphinxdoc/source => }/c_exception/warning.rst (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/after.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/apachein.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/apant0.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/apant1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/apant2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/apant3.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/apant4.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/apant5.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/arbo.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/bbette.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/bbette2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/bind.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/boost.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/boostp.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/bouton.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/bouton2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/bouton3.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/can.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/check.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/check2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/cmds.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/cmds26.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/combo1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/combo2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/comm1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/comm2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/config.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/entree.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/essai.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/fenpers.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/focus.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/frame.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/graphviz.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/grid1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/hhw.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/inte.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/label.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/label2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/ligne.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/ligne26.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/list1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/list2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/listboxs.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mainloop.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/menu.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/menut.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mysql1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mysql2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mysql3.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mysql4.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mysql5.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mysql6.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mysql7.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mysql8.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mysqlodbc.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/mysqlodbc2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/odbc.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/pack1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/pack2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/pass.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/pcmd.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/pcmd2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/pcmd26.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/popt.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/profile.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/pydoc_image.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/pydoch.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/pyform1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/pyscripter.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/radio.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/radio2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/rawinput.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/reper.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/reper26.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/runs.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/saisie1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/saisie2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/scite1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/scite2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/scite226.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/seqev.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/sql1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn10a.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn10b.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn11a.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn11b.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn12_.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn2ex.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn3r.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn4f.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn5f.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn61.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn72.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn8n.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn8nn.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn9a.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/svn9b.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/text1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/threadim1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/threadim2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/tixfile.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/view.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/wiki1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/wiki2.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/wiki3.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/wiki4.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/wiki5.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/wiki6.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/images/window1.png (100%) rename _doc/{sphinxdoc/source => }/c_gui/index.rst (100%) rename _doc/{sphinxdoc/source => }/c_gui/tkinter.rst (100%) rename _doc/{sphinxdoc/source => }/c_lang/collections.rst (100%) rename _doc/{sphinxdoc/source => }/c_lang/constructions.rst (100%) rename _doc/{sphinxdoc/source => }/c_lang/dates.rst (100%) rename _doc/{sphinxdoc/source => }/c_lang/encoding.rst (100%) rename _doc/{sphinxdoc/source => }/c_lang/faq.rst (100%) rename _doc/{sphinxdoc/source => }/c_lang/images/rawinput.png (100%) rename _doc/{sphinxdoc/source => }/c_lang/index.rst (100%) rename _doc/{sphinxdoc/source => }/c_lang/syntaxe.rst (100%) rename _doc/{sphinxdoc/source => }/c_lang/types.rst (100%) rename _doc/{sphinxdoc/source => }/c_module/arbo.png (100%) rename _doc/{sphinxdoc/source => }/c_module/faq.rst (100%) rename _doc/{sphinxdoc/source => }/c_module/files.rst (100%) rename _doc/{sphinxdoc/source => }/c_module/index.rst (100%) rename _doc/{sphinxdoc/source => }/c_module/module.rst (100%) rename _doc/{sphinxdoc/source => }/c_module/serialization.rst (100%) rename _doc/{sphinxdoc/source => }/c_parallelisation/images/asyncapi.png (100%) rename _doc/{sphinxdoc/source => }/c_parallelisation/images/pool.png (100%) rename _doc/{sphinxdoc/source => }/c_parallelisation/images/threadim1.png (100%) rename _doc/{sphinxdoc/source => }/c_parallelisation/images/threadim2.png (100%) rename _doc/{sphinxdoc/source => }/c_parallelisation/index.rst (100%) rename _doc/{sphinxdoc/source => }/c_parallelisation/thread.rst (100%) rename _doc/{sphinxdoc/source => }/c_regex/index.rst (100%) rename _doc/{sphinxdoc/source => }/c_regex/regex.rst (100%) rename _doc/{sphinxdoc/source => }/c_resume/conseil_programmes.rst (100%) rename _doc/{sphinxdoc/source => }/c_resume/index.rst (100%) rename _doc/{sphinxdoc/source => }/c_resume/python_sheet.rst (100%) create mode 100644 _doc/conf.py rename _doc/{sphinxdoc/source => }/defthe_index.rst (100%) rename _doc/{sphinxdoc/source => }/glossary.rst (100%) rename _doc/{sphinxdoc/source => }/i_ex.rst (100%) create mode 100644 _doc/i_examples.rst rename _doc/{sphinxdoc/source => }/i_faq.rst (100%) rename _doc/{sphinxdoc/source => }/index.rst (99%) rename _doc/{sphinxdoc/source => }/introduction.rst (100%) rename _doc/{sphinxdoc/source => }/license.rst (100%) delete mode 100644 _doc/sphinxdoc/source/HISTORY.rst delete mode 100644 _doc/sphinxdoc/source/_static/my-styles.css delete mode 100644 _doc/sphinxdoc/source/blog/2016/2016-08-18_first_blog.rst delete mode 100644 _doc/sphinxdoc/source/blog/2016/2016-11-20_groupby_nan.rst delete mode 100644 _doc/sphinxdoc/source/blog/2017/2017-01-06_programming.rst delete mode 100644 _doc/sphinxdoc/source/blog/2017/2017-07-01_cextension.rst delete mode 100644 _doc/sphinxdoc/source/blog/2018/2018-03-31_classesfonctions.rst delete mode 100644 _doc/sphinxdoc/source/blog/2018/2018-04-05_debug.rst delete mode 100644 _doc/sphinxdoc/source/blog/2018/2018-10-24_memory.rst delete mode 100644 _doc/sphinxdoc/source/blog/2020/2020-10-25_numpyinf.rst delete mode 100644 _doc/sphinxdoc/source/conf.py delete mode 100644 _doc/sphinxdoc/source/doctestunit.rst delete mode 100644 _doc/sphinxdoc/source/end_index2.rst delete mode 100644 _doc/sphinxdoc/source/end_index_glossaire.rst delete mode 100644 _doc/sphinxdoc/source/i_examples.rst delete mode 100644 _doc/sphinxdoc/source/i_index.rst delete mode 100644 _doc/sphinxdoc/source/issues_todoextlist.rst delete mode 100644 _doc/sphinxdoc/source/phdoc_templates/layout.html delete mode 100644 _doc/sphinxdoc/source/phdoc_templates/my-styles.css delete mode 100644 _doc/sphinxdoc/source/phdoc_templates/page.html diff --git a/_doc/sphinxdoc/source/_static/git_logo.png b/_doc/_static/git_logo.png similarity index 100% rename from _doc/sphinxdoc/source/_static/git_logo.png rename to _doc/_static/git_logo.png diff --git a/_doc/sphinxdoc/source/_static/project_ico.ico b/_doc/_static/project_ico.ico similarity index 100% rename from _doc/sphinxdoc/source/_static/project_ico.ico rename to _doc/_static/project_ico.ico diff --git a/_doc/sphinxdoc/source/_static/project_ico.png b/_doc/_static/project_ico.png similarity index 100% rename from _doc/sphinxdoc/source/_static/project_ico.png rename to _doc/_static/project_ico.png diff --git a/_doc/sphinxdoc/source/_static/project_ico_small.png b/_doc/_static/project_ico_small.png similarity index 100% rename from _doc/sphinxdoc/source/_static/project_ico_small.png rename to _doc/_static/project_ico_small.png diff --git a/_doc/sphinxdoc/source/c_classes/classes.rst b/_doc/c_classes/classes.rst similarity index 100% rename from _doc/sphinxdoc/source/c_classes/classes.rst rename to _doc/c_classes/classes.rst diff --git a/_doc/sphinxdoc/source/c_classes/index.rst b/_doc/c_classes/index.rst similarity index 100% rename from _doc/sphinxdoc/source/c_classes/index.rst rename to _doc/c_classes/index.rst diff --git a/_doc/sphinxdoc/source/c_data/index.rst b/_doc/c_data/index.rst similarity index 100% rename from _doc/sphinxdoc/source/c_data/index.rst rename to _doc/c_data/index.rst diff --git a/_doc/sphinxdoc/source/c_exception/exception.rst b/_doc/c_exception/exception.rst similarity index 100% rename from _doc/sphinxdoc/source/c_exception/exception.rst rename to _doc/c_exception/exception.rst diff --git a/_doc/sphinxdoc/source/c_exception/exception_ext.rst b/_doc/c_exception/exception_ext.rst similarity index 100% rename from _doc/sphinxdoc/source/c_exception/exception_ext.rst rename to _doc/c_exception/exception_ext.rst diff --git a/_doc/sphinxdoc/source/c_exception/index.rst b/_doc/c_exception/index.rst similarity index 100% rename from _doc/sphinxdoc/source/c_exception/index.rst rename to _doc/c_exception/index.rst diff --git a/_doc/sphinxdoc/source/c_exception/warning.rst b/_doc/c_exception/warning.rst similarity index 100% rename from _doc/sphinxdoc/source/c_exception/warning.rst rename to _doc/c_exception/warning.rst diff --git a/_doc/sphinxdoc/source/c_gui/images/after.png b/_doc/c_gui/images/after.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/after.png rename to _doc/c_gui/images/after.png diff --git a/_doc/sphinxdoc/source/c_gui/images/apachein.png b/_doc/c_gui/images/apachein.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/apachein.png rename to _doc/c_gui/images/apachein.png diff --git a/_doc/sphinxdoc/source/c_gui/images/apant0.png b/_doc/c_gui/images/apant0.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/apant0.png rename to _doc/c_gui/images/apant0.png diff --git a/_doc/sphinxdoc/source/c_gui/images/apant1.png b/_doc/c_gui/images/apant1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/apant1.png rename to _doc/c_gui/images/apant1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/apant2.png b/_doc/c_gui/images/apant2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/apant2.png rename to _doc/c_gui/images/apant2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/apant3.png b/_doc/c_gui/images/apant3.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/apant3.png rename to _doc/c_gui/images/apant3.png diff --git a/_doc/sphinxdoc/source/c_gui/images/apant4.png b/_doc/c_gui/images/apant4.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/apant4.png rename to _doc/c_gui/images/apant4.png diff --git a/_doc/sphinxdoc/source/c_gui/images/apant5.png b/_doc/c_gui/images/apant5.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/apant5.png rename to _doc/c_gui/images/apant5.png diff --git a/_doc/sphinxdoc/source/c_gui/images/arbo.png b/_doc/c_gui/images/arbo.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/arbo.png rename to _doc/c_gui/images/arbo.png diff --git a/_doc/sphinxdoc/source/c_gui/images/bbette.png b/_doc/c_gui/images/bbette.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/bbette.png rename to _doc/c_gui/images/bbette.png diff --git a/_doc/sphinxdoc/source/c_gui/images/bbette2.png b/_doc/c_gui/images/bbette2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/bbette2.png rename to _doc/c_gui/images/bbette2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/bind.png b/_doc/c_gui/images/bind.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/bind.png rename to _doc/c_gui/images/bind.png diff --git a/_doc/sphinxdoc/source/c_gui/images/boost.png b/_doc/c_gui/images/boost.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/boost.png rename to _doc/c_gui/images/boost.png diff --git a/_doc/sphinxdoc/source/c_gui/images/boostp.png b/_doc/c_gui/images/boostp.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/boostp.png rename to _doc/c_gui/images/boostp.png diff --git a/_doc/sphinxdoc/source/c_gui/images/bouton.png b/_doc/c_gui/images/bouton.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/bouton.png rename to _doc/c_gui/images/bouton.png diff --git a/_doc/sphinxdoc/source/c_gui/images/bouton2.png b/_doc/c_gui/images/bouton2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/bouton2.png rename to _doc/c_gui/images/bouton2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/bouton3.png b/_doc/c_gui/images/bouton3.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/bouton3.png rename to _doc/c_gui/images/bouton3.png diff --git a/_doc/sphinxdoc/source/c_gui/images/can.png b/_doc/c_gui/images/can.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/can.png rename to _doc/c_gui/images/can.png diff --git a/_doc/sphinxdoc/source/c_gui/images/check.png b/_doc/c_gui/images/check.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/check.png rename to _doc/c_gui/images/check.png diff --git a/_doc/sphinxdoc/source/c_gui/images/check2.png b/_doc/c_gui/images/check2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/check2.png rename to _doc/c_gui/images/check2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/cmds.png b/_doc/c_gui/images/cmds.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/cmds.png rename to _doc/c_gui/images/cmds.png diff --git a/_doc/sphinxdoc/source/c_gui/images/cmds26.png b/_doc/c_gui/images/cmds26.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/cmds26.png rename to _doc/c_gui/images/cmds26.png diff --git a/_doc/sphinxdoc/source/c_gui/images/combo1.png b/_doc/c_gui/images/combo1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/combo1.png rename to _doc/c_gui/images/combo1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/combo2.png b/_doc/c_gui/images/combo2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/combo2.png rename to _doc/c_gui/images/combo2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/comm1.png b/_doc/c_gui/images/comm1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/comm1.png rename to _doc/c_gui/images/comm1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/comm2.png b/_doc/c_gui/images/comm2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/comm2.png rename to _doc/c_gui/images/comm2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/config.png b/_doc/c_gui/images/config.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/config.png rename to _doc/c_gui/images/config.png diff --git a/_doc/sphinxdoc/source/c_gui/images/entree.png b/_doc/c_gui/images/entree.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/entree.png rename to _doc/c_gui/images/entree.png diff --git a/_doc/sphinxdoc/source/c_gui/images/essai.png b/_doc/c_gui/images/essai.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/essai.png rename to _doc/c_gui/images/essai.png diff --git a/_doc/sphinxdoc/source/c_gui/images/fenpers.png b/_doc/c_gui/images/fenpers.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/fenpers.png rename to _doc/c_gui/images/fenpers.png diff --git a/_doc/sphinxdoc/source/c_gui/images/focus.png b/_doc/c_gui/images/focus.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/focus.png rename to _doc/c_gui/images/focus.png diff --git a/_doc/sphinxdoc/source/c_gui/images/frame.png b/_doc/c_gui/images/frame.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/frame.png rename to _doc/c_gui/images/frame.png diff --git a/_doc/sphinxdoc/source/c_gui/images/graphviz.png b/_doc/c_gui/images/graphviz.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/graphviz.png rename to _doc/c_gui/images/graphviz.png diff --git a/_doc/sphinxdoc/source/c_gui/images/grid1.png b/_doc/c_gui/images/grid1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/grid1.png rename to _doc/c_gui/images/grid1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/hhw.png b/_doc/c_gui/images/hhw.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/hhw.png rename to _doc/c_gui/images/hhw.png diff --git a/_doc/sphinxdoc/source/c_gui/images/inte.png b/_doc/c_gui/images/inte.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/inte.png rename to _doc/c_gui/images/inte.png diff --git a/_doc/sphinxdoc/source/c_gui/images/label.png b/_doc/c_gui/images/label.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/label.png rename to _doc/c_gui/images/label.png diff --git a/_doc/sphinxdoc/source/c_gui/images/label2.png b/_doc/c_gui/images/label2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/label2.png rename to _doc/c_gui/images/label2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/ligne.png b/_doc/c_gui/images/ligne.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/ligne.png rename to _doc/c_gui/images/ligne.png diff --git a/_doc/sphinxdoc/source/c_gui/images/ligne26.png b/_doc/c_gui/images/ligne26.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/ligne26.png rename to _doc/c_gui/images/ligne26.png diff --git a/_doc/sphinxdoc/source/c_gui/images/list1.png b/_doc/c_gui/images/list1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/list1.png rename to _doc/c_gui/images/list1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/list2.png b/_doc/c_gui/images/list2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/list2.png rename to _doc/c_gui/images/list2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/listboxs.png b/_doc/c_gui/images/listboxs.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/listboxs.png rename to _doc/c_gui/images/listboxs.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mainloop.png b/_doc/c_gui/images/mainloop.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mainloop.png rename to _doc/c_gui/images/mainloop.png diff --git a/_doc/sphinxdoc/source/c_gui/images/menu.png b/_doc/c_gui/images/menu.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/menu.png rename to _doc/c_gui/images/menu.png diff --git a/_doc/sphinxdoc/source/c_gui/images/menut.png b/_doc/c_gui/images/menut.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/menut.png rename to _doc/c_gui/images/menut.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mysql1.png b/_doc/c_gui/images/mysql1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mysql1.png rename to _doc/c_gui/images/mysql1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mysql2.png b/_doc/c_gui/images/mysql2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mysql2.png rename to _doc/c_gui/images/mysql2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mysql3.png b/_doc/c_gui/images/mysql3.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mysql3.png rename to _doc/c_gui/images/mysql3.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mysql4.png b/_doc/c_gui/images/mysql4.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mysql4.png rename to _doc/c_gui/images/mysql4.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mysql5.png b/_doc/c_gui/images/mysql5.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mysql5.png rename to _doc/c_gui/images/mysql5.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mysql6.png b/_doc/c_gui/images/mysql6.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mysql6.png rename to _doc/c_gui/images/mysql6.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mysql7.png b/_doc/c_gui/images/mysql7.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mysql7.png rename to _doc/c_gui/images/mysql7.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mysql8.png b/_doc/c_gui/images/mysql8.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mysql8.png rename to _doc/c_gui/images/mysql8.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mysqlodbc.png b/_doc/c_gui/images/mysqlodbc.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mysqlodbc.png rename to _doc/c_gui/images/mysqlodbc.png diff --git a/_doc/sphinxdoc/source/c_gui/images/mysqlodbc2.png b/_doc/c_gui/images/mysqlodbc2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/mysqlodbc2.png rename to _doc/c_gui/images/mysqlodbc2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/odbc.png b/_doc/c_gui/images/odbc.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/odbc.png rename to _doc/c_gui/images/odbc.png diff --git a/_doc/sphinxdoc/source/c_gui/images/pack1.png b/_doc/c_gui/images/pack1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/pack1.png rename to _doc/c_gui/images/pack1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/pack2.png b/_doc/c_gui/images/pack2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/pack2.png rename to _doc/c_gui/images/pack2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/pass.png b/_doc/c_gui/images/pass.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/pass.png rename to _doc/c_gui/images/pass.png diff --git a/_doc/sphinxdoc/source/c_gui/images/pcmd.png b/_doc/c_gui/images/pcmd.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/pcmd.png rename to _doc/c_gui/images/pcmd.png diff --git a/_doc/sphinxdoc/source/c_gui/images/pcmd2.png b/_doc/c_gui/images/pcmd2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/pcmd2.png rename to _doc/c_gui/images/pcmd2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/pcmd26.png b/_doc/c_gui/images/pcmd26.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/pcmd26.png rename to _doc/c_gui/images/pcmd26.png diff --git a/_doc/sphinxdoc/source/c_gui/images/popt.png b/_doc/c_gui/images/popt.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/popt.png rename to _doc/c_gui/images/popt.png diff --git a/_doc/sphinxdoc/source/c_gui/images/profile.png b/_doc/c_gui/images/profile.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/profile.png rename to _doc/c_gui/images/profile.png diff --git a/_doc/sphinxdoc/source/c_gui/images/pydoc_image.png b/_doc/c_gui/images/pydoc_image.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/pydoc_image.png rename to _doc/c_gui/images/pydoc_image.png diff --git a/_doc/sphinxdoc/source/c_gui/images/pydoch.png b/_doc/c_gui/images/pydoch.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/pydoch.png rename to _doc/c_gui/images/pydoch.png diff --git a/_doc/sphinxdoc/source/c_gui/images/pyform1.png b/_doc/c_gui/images/pyform1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/pyform1.png rename to _doc/c_gui/images/pyform1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/pyscripter.png b/_doc/c_gui/images/pyscripter.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/pyscripter.png rename to _doc/c_gui/images/pyscripter.png diff --git a/_doc/sphinxdoc/source/c_gui/images/radio.png b/_doc/c_gui/images/radio.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/radio.png rename to _doc/c_gui/images/radio.png diff --git a/_doc/sphinxdoc/source/c_gui/images/radio2.png b/_doc/c_gui/images/radio2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/radio2.png rename to _doc/c_gui/images/radio2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/rawinput.png b/_doc/c_gui/images/rawinput.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/rawinput.png rename to _doc/c_gui/images/rawinput.png diff --git a/_doc/sphinxdoc/source/c_gui/images/reper.png b/_doc/c_gui/images/reper.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/reper.png rename to _doc/c_gui/images/reper.png diff --git a/_doc/sphinxdoc/source/c_gui/images/reper26.png b/_doc/c_gui/images/reper26.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/reper26.png rename to _doc/c_gui/images/reper26.png diff --git a/_doc/sphinxdoc/source/c_gui/images/runs.png b/_doc/c_gui/images/runs.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/runs.png rename to _doc/c_gui/images/runs.png diff --git a/_doc/sphinxdoc/source/c_gui/images/saisie1.png b/_doc/c_gui/images/saisie1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/saisie1.png rename to _doc/c_gui/images/saisie1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/saisie2.png b/_doc/c_gui/images/saisie2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/saisie2.png rename to _doc/c_gui/images/saisie2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/scite1.png b/_doc/c_gui/images/scite1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/scite1.png rename to _doc/c_gui/images/scite1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/scite2.png b/_doc/c_gui/images/scite2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/scite2.png rename to _doc/c_gui/images/scite2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/scite226.png b/_doc/c_gui/images/scite226.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/scite226.png rename to _doc/c_gui/images/scite226.png diff --git a/_doc/sphinxdoc/source/c_gui/images/seqev.png b/_doc/c_gui/images/seqev.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/seqev.png rename to _doc/c_gui/images/seqev.png diff --git a/_doc/sphinxdoc/source/c_gui/images/sql1.png b/_doc/c_gui/images/sql1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/sql1.png rename to _doc/c_gui/images/sql1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn1.png b/_doc/c_gui/images/svn1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn1.png rename to _doc/c_gui/images/svn1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn10a.png b/_doc/c_gui/images/svn10a.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn10a.png rename to _doc/c_gui/images/svn10a.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn10b.png b/_doc/c_gui/images/svn10b.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn10b.png rename to _doc/c_gui/images/svn10b.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn11a.png b/_doc/c_gui/images/svn11a.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn11a.png rename to _doc/c_gui/images/svn11a.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn11b.png b/_doc/c_gui/images/svn11b.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn11b.png rename to _doc/c_gui/images/svn11b.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn12_.png b/_doc/c_gui/images/svn12_.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn12_.png rename to _doc/c_gui/images/svn12_.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn2ex.png b/_doc/c_gui/images/svn2ex.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn2ex.png rename to _doc/c_gui/images/svn2ex.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn3r.png b/_doc/c_gui/images/svn3r.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn3r.png rename to _doc/c_gui/images/svn3r.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn4f.png b/_doc/c_gui/images/svn4f.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn4f.png rename to _doc/c_gui/images/svn4f.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn5f.png b/_doc/c_gui/images/svn5f.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn5f.png rename to _doc/c_gui/images/svn5f.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn61.png b/_doc/c_gui/images/svn61.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn61.png rename to _doc/c_gui/images/svn61.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn72.png b/_doc/c_gui/images/svn72.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn72.png rename to _doc/c_gui/images/svn72.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn8n.png b/_doc/c_gui/images/svn8n.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn8n.png rename to _doc/c_gui/images/svn8n.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn8nn.png b/_doc/c_gui/images/svn8nn.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn8nn.png rename to _doc/c_gui/images/svn8nn.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn9a.png b/_doc/c_gui/images/svn9a.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn9a.png rename to _doc/c_gui/images/svn9a.png diff --git a/_doc/sphinxdoc/source/c_gui/images/svn9b.png b/_doc/c_gui/images/svn9b.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/svn9b.png rename to _doc/c_gui/images/svn9b.png diff --git a/_doc/sphinxdoc/source/c_gui/images/text1.png b/_doc/c_gui/images/text1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/text1.png rename to _doc/c_gui/images/text1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/threadim1.png b/_doc/c_gui/images/threadim1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/threadim1.png rename to _doc/c_gui/images/threadim1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/threadim2.png b/_doc/c_gui/images/threadim2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/threadim2.png rename to _doc/c_gui/images/threadim2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/tixfile.png b/_doc/c_gui/images/tixfile.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/tixfile.png rename to _doc/c_gui/images/tixfile.png diff --git a/_doc/sphinxdoc/source/c_gui/images/view.png b/_doc/c_gui/images/view.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/view.png rename to _doc/c_gui/images/view.png diff --git a/_doc/sphinxdoc/source/c_gui/images/wiki1.png b/_doc/c_gui/images/wiki1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/wiki1.png rename to _doc/c_gui/images/wiki1.png diff --git a/_doc/sphinxdoc/source/c_gui/images/wiki2.png b/_doc/c_gui/images/wiki2.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/wiki2.png rename to _doc/c_gui/images/wiki2.png diff --git a/_doc/sphinxdoc/source/c_gui/images/wiki3.png b/_doc/c_gui/images/wiki3.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/wiki3.png rename to _doc/c_gui/images/wiki3.png diff --git a/_doc/sphinxdoc/source/c_gui/images/wiki4.png b/_doc/c_gui/images/wiki4.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/wiki4.png rename to _doc/c_gui/images/wiki4.png diff --git a/_doc/sphinxdoc/source/c_gui/images/wiki5.png b/_doc/c_gui/images/wiki5.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/wiki5.png rename to _doc/c_gui/images/wiki5.png diff --git a/_doc/sphinxdoc/source/c_gui/images/wiki6.png b/_doc/c_gui/images/wiki6.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/wiki6.png rename to _doc/c_gui/images/wiki6.png diff --git a/_doc/sphinxdoc/source/c_gui/images/window1.png b/_doc/c_gui/images/window1.png similarity index 100% rename from _doc/sphinxdoc/source/c_gui/images/window1.png rename to _doc/c_gui/images/window1.png diff --git a/_doc/sphinxdoc/source/c_gui/index.rst b/_doc/c_gui/index.rst similarity index 100% rename from _doc/sphinxdoc/source/c_gui/index.rst rename to _doc/c_gui/index.rst diff --git a/_doc/sphinxdoc/source/c_gui/tkinter.rst b/_doc/c_gui/tkinter.rst similarity index 100% rename from _doc/sphinxdoc/source/c_gui/tkinter.rst rename to _doc/c_gui/tkinter.rst diff --git a/_doc/sphinxdoc/source/c_lang/collections.rst b/_doc/c_lang/collections.rst similarity index 100% rename from _doc/sphinxdoc/source/c_lang/collections.rst rename to _doc/c_lang/collections.rst diff --git a/_doc/sphinxdoc/source/c_lang/constructions.rst b/_doc/c_lang/constructions.rst similarity index 100% rename from _doc/sphinxdoc/source/c_lang/constructions.rst rename to _doc/c_lang/constructions.rst diff --git a/_doc/sphinxdoc/source/c_lang/dates.rst b/_doc/c_lang/dates.rst similarity index 100% rename from _doc/sphinxdoc/source/c_lang/dates.rst rename to _doc/c_lang/dates.rst diff --git a/_doc/sphinxdoc/source/c_lang/encoding.rst b/_doc/c_lang/encoding.rst similarity index 100% rename from _doc/sphinxdoc/source/c_lang/encoding.rst rename to _doc/c_lang/encoding.rst diff --git a/_doc/sphinxdoc/source/c_lang/faq.rst b/_doc/c_lang/faq.rst similarity index 100% rename from _doc/sphinxdoc/source/c_lang/faq.rst rename to _doc/c_lang/faq.rst diff --git a/_doc/sphinxdoc/source/c_lang/images/rawinput.png b/_doc/c_lang/images/rawinput.png similarity index 100% rename from _doc/sphinxdoc/source/c_lang/images/rawinput.png rename to _doc/c_lang/images/rawinput.png diff --git a/_doc/sphinxdoc/source/c_lang/index.rst b/_doc/c_lang/index.rst similarity index 100% rename from _doc/sphinxdoc/source/c_lang/index.rst rename to _doc/c_lang/index.rst diff --git a/_doc/sphinxdoc/source/c_lang/syntaxe.rst b/_doc/c_lang/syntaxe.rst similarity index 100% rename from _doc/sphinxdoc/source/c_lang/syntaxe.rst rename to _doc/c_lang/syntaxe.rst diff --git a/_doc/sphinxdoc/source/c_lang/types.rst b/_doc/c_lang/types.rst similarity index 100% rename from _doc/sphinxdoc/source/c_lang/types.rst rename to _doc/c_lang/types.rst diff --git a/_doc/sphinxdoc/source/c_module/arbo.png b/_doc/c_module/arbo.png similarity index 100% rename from _doc/sphinxdoc/source/c_module/arbo.png rename to _doc/c_module/arbo.png diff --git a/_doc/sphinxdoc/source/c_module/faq.rst b/_doc/c_module/faq.rst similarity index 100% rename from _doc/sphinxdoc/source/c_module/faq.rst rename to _doc/c_module/faq.rst diff --git a/_doc/sphinxdoc/source/c_module/files.rst b/_doc/c_module/files.rst similarity index 100% rename from _doc/sphinxdoc/source/c_module/files.rst rename to _doc/c_module/files.rst diff --git a/_doc/sphinxdoc/source/c_module/index.rst b/_doc/c_module/index.rst similarity index 100% rename from _doc/sphinxdoc/source/c_module/index.rst rename to _doc/c_module/index.rst diff --git a/_doc/sphinxdoc/source/c_module/module.rst b/_doc/c_module/module.rst similarity index 100% rename from _doc/sphinxdoc/source/c_module/module.rst rename to _doc/c_module/module.rst diff --git a/_doc/sphinxdoc/source/c_module/serialization.rst b/_doc/c_module/serialization.rst similarity index 100% rename from _doc/sphinxdoc/source/c_module/serialization.rst rename to _doc/c_module/serialization.rst diff --git a/_doc/sphinxdoc/source/c_parallelisation/images/asyncapi.png b/_doc/c_parallelisation/images/asyncapi.png similarity index 100% rename from _doc/sphinxdoc/source/c_parallelisation/images/asyncapi.png rename to _doc/c_parallelisation/images/asyncapi.png diff --git a/_doc/sphinxdoc/source/c_parallelisation/images/pool.png b/_doc/c_parallelisation/images/pool.png similarity index 100% rename from _doc/sphinxdoc/source/c_parallelisation/images/pool.png rename to _doc/c_parallelisation/images/pool.png diff --git a/_doc/sphinxdoc/source/c_parallelisation/images/threadim1.png b/_doc/c_parallelisation/images/threadim1.png similarity index 100% rename from _doc/sphinxdoc/source/c_parallelisation/images/threadim1.png rename to _doc/c_parallelisation/images/threadim1.png diff --git a/_doc/sphinxdoc/source/c_parallelisation/images/threadim2.png b/_doc/c_parallelisation/images/threadim2.png similarity index 100% rename from _doc/sphinxdoc/source/c_parallelisation/images/threadim2.png rename to _doc/c_parallelisation/images/threadim2.png diff --git a/_doc/sphinxdoc/source/c_parallelisation/index.rst b/_doc/c_parallelisation/index.rst similarity index 100% rename from _doc/sphinxdoc/source/c_parallelisation/index.rst rename to _doc/c_parallelisation/index.rst diff --git a/_doc/sphinxdoc/source/c_parallelisation/thread.rst b/_doc/c_parallelisation/thread.rst similarity index 100% rename from _doc/sphinxdoc/source/c_parallelisation/thread.rst rename to _doc/c_parallelisation/thread.rst diff --git a/_doc/sphinxdoc/source/c_regex/index.rst b/_doc/c_regex/index.rst similarity index 100% rename from _doc/sphinxdoc/source/c_regex/index.rst rename to _doc/c_regex/index.rst diff --git a/_doc/sphinxdoc/source/c_regex/regex.rst b/_doc/c_regex/regex.rst similarity index 100% rename from _doc/sphinxdoc/source/c_regex/regex.rst rename to _doc/c_regex/regex.rst diff --git a/_doc/sphinxdoc/source/c_resume/conseil_programmes.rst b/_doc/c_resume/conseil_programmes.rst similarity index 100% rename from _doc/sphinxdoc/source/c_resume/conseil_programmes.rst rename to _doc/c_resume/conseil_programmes.rst diff --git a/_doc/sphinxdoc/source/c_resume/index.rst b/_doc/c_resume/index.rst similarity index 100% rename from _doc/sphinxdoc/source/c_resume/index.rst rename to _doc/c_resume/index.rst diff --git a/_doc/sphinxdoc/source/c_resume/python_sheet.rst b/_doc/c_resume/python_sheet.rst similarity index 100% rename from _doc/sphinxdoc/source/c_resume/python_sheet.rst rename to _doc/c_resume/python_sheet.rst diff --git a/_doc/conf.py b/_doc/conf.py new file mode 100644 index 00000000..2e33cae5 --- /dev/null +++ b/_doc/conf.py @@ -0,0 +1,217 @@ +# -*- coding: utf-8 -*- +import sys +import os +from sphinx_runpython.github_link import make_linkcode_resolve +from sphinx_runpython.conf_helper import has_dvipng, has_dvisvgm +from teachpyx import __version__ + + +extensions = [ + "nbsphinx", + "sphinx.ext.autodoc", + "sphinx.ext.coverage", + "sphinx.ext.githubpages", + "sphinx.ext.ifconfig", + "sphinx.ext.intersphinx", + "sphinx.ext.linkcode", + "sphinx.ext.viewcode", + "sphinx.ext.napoleon", + "sphinx.ext.todo", + "sphinx_gallery.gen_gallery", + "sphinx_issues", + "sphinx_runpython.blocdefs.sphinx_exref_extension", + "sphinx_runpython.blocdefs.sphinx_mathdef_extension", + "sphinx_runpython.epkg", + "sphinx_runpython.gdot", + "sphinx_runpython.runpython", + "matplotlib.sphinxext.plot_directive", +] + +if has_dvisvgm(): + extensions.append("sphinx.ext.imgmath") + imgmath_image_format = "svg" +elif has_dvipng(): + extensions.append("sphinx.ext.pngmath") + imgmath_image_format = "png" +else: + extensions.append("sphinx.ext.mathjax") + +templates_path = ["_templates"] +html_logo = "_static/project_ico.png" +source_suffix = ".rst" +master_doc = "index" +project = "teachpyx" +copyright = "2016-2023, Xavier Dupré" +author = "Xavier Dupré" +version = __version__ +release = __version__ +language = "fr" +exclude_patterns = ["auto_examples/*.ipynb"] +pygments_style = "sphinx" +todo_include_todos = True +nbsphinx_execute = "never" + +html_theme = "pydata_sphinx_theme" +html_theme_path = ["_static"] +html_theme_options = {} +html_sourcelink_suffix = "" +html_static_path = ["_static"] + +issues_github_path = "sdpython/teachpyx" + +# The following is used by sphinx.ext.linkcode to provide links to github +linkcode_resolve = make_linkcode_resolve( + "teachpyx", + ( + "https://github.com/sdpython/teachpyx/" + "blob/{revision}/{package}/" + "{path}#L{lineno}" + ), +) + +latex_elements = { + "papersize": "a4", + "pointsize": "10pt", + "title": project, +} + +mathjax3_config = {"chtml": {"displayAlign": "left"}} + +intersphinx_mapping = { + "onnx": ("https://onnx.ai/onnx/", None), + "matplotlib": ("https://matplotlib.org/", None), + "numpy": ("https://numpy.org/doc/stable", None), + "pandas": ("https://pandas.pydata.org/pandas-docs/stable/", None), + "python": (f"https://docs.python.org/{sys.version_info.major}", None), + "scipy": ("https://docs.scipy.org/doc/scipy/reference", None), + "sklearn": ("https://scikit-learn.org/stable/", None), + "sklearn-onnx": ("https://onnx.ai/sklearn-onnx/", None), + "torch": ("https://pytorch.org/docs/stable/", None), +} + +# Check intersphinx reference targets exist +nitpicky = True +# See also scikit-learn/scikit-learn#26761 +nitpick_ignore = [ + ("py:class", "False"), + ("py:class", "True"), + ("py:class", "pipeline.Pipeline"), + ("py:class", "default=sklearn.utils.metadata_routing.UNCHANGED"), +] + +sphinx_gallery_conf = { + # path to your examples scripts + "examples_dirs": os.path.join(os.path.dirname(__file__), "examples"), + # path where to save gallery generated examples + "gallery_dirs": "auto_examples", +} + +# next + +preamble = """ +\\usepackage{etex} +\\usepackage{fixltx2e} % LaTeX patches, \\textsubscript +\\usepackage{cmap} % fix search and cut-and-paste in Acrobat +\\usepackage[raccourcis]{fast-diagram} +\\usepackage{titlesec} +\\usepackage{amsmath} +\\usepackage{amssymb} +\\usepackage{amsfonts} +\\usepackage{graphics} +\\usepackage{epic} +\\usepackage{eepic} +%\\usepackage{pict2e} +%%% Redefined titleformat +\\setlength{\\parindent}{0cm} +\\setlength{\\parskip}{1ex plus 0.5ex minus 0.2ex} +\\newcommand{\\hsp}{\\hspace{20pt}} +\\newcommand{\\acc}[1]{\\left\\{#1\\right\\}} +\\newcommand{\\cro}[1]{\\left[#1\\right]} +\\newcommand{\\pa}[1]{\\left(#1\\right)} +\\newcommand{\\R}{\\mathbb{R}} +\\newcommand{\\HRule}{\\rule{\\linewidth}{0.5mm}} +%\\titleformat{\\chapter}[hang]{\\Huge\\bfseries\\sffamily}{\\thechapter\\hsp}{0pt}{\\Huge\\bfseries\\sffamily} + +\\usepackage[all]{xy} +\\newcommand{\\vecteur}[2]{\\pa{#1,\\dots,#2}} +\\newcommand{\\N}[0]{\\mathbb{N}} +\\newcommand{\\indicatrice}[1]{ {1\\!\\!1}_{\\acc{#1}} } +\\newcommand{\\infegal}[0]{\\leqslant} +\\newcommand{\\supegal}[0]{\\geqslant} +\\newcommand{\\ensemble}[2]{\\acc{#1,\\dots,#2}} +\\newcommand{\\fleche}[1]{\\overrightarrow{ #1 }} +\\newcommand{\\intervalle}[2]{\\left\\{#1,\\cdots,#2\\right\\}} +\\newcommand{\\independant}[0]{\\perp \\!\\!\\! \\perp} +\\newcommand{\\esp}{\\mathbb{E}} +\\newcommand{\\espf}[2]{\\mathbb{E}_{#1}\\pa{#2}} +\\newcommand{\\var}{\\mathbb{V}} +\\newcommand{\\pr}[1]{\\mathbb{P}\\pa{#1}} +\\newcommand{\\loi}[0]{{\\cal L}} +\\newcommand{\\vecteurno}[2]{#1,\\dots,#2} +\\newcommand{\\norm}[1]{\\left\\Vert#1\\right\\Vert} +\\newcommand{\\norme}[1]{\\left\\Vert#1\\right\\Vert} +\\newcommand{\\scal}[2]{\\left<#1,#2\\right>} +\\newcommand{\\dans}[0]{\\rightarrow} +\\newcommand{\\partialfrac}[2]{\\frac{\\partial #1}{\\partial #2}} +\\newcommand{\\partialdfrac}[2]{\\dfrac{\\partial #1}{\\partial #2}} +\\newcommand{\\trace}[1]{tr\\pa{#1}} +\\newcommand{\\sac}[0]{|} +\\newcommand{\\abs}[1]{\\left|#1\\right|} +\\newcommand{\\loinormale}[2]{{\\cal N} \\pa{#1,#2}} +\\newcommand{\\loibinomialea}[1]{{\\cal B} \\pa{#1}} +\\newcommand{\\loibinomiale}[2]{{\\cal B} \\pa{#1,#2}} +\\newcommand{\\loimultinomiale}[1]{{\\cal M} \\pa{#1}} +\\newcommand{\\variance}[1]{\\mathbb{V}\\pa{#1}} +\\newcommand{\\intf}[1]{\\left\\lfloor #1 \\right\\rfloor} +""" + +epkg_dictionary = { + "ACP": "https://fr.wikipedia.org/wiki/Analyse_en_composantes_principales", + "AESA": "https://tavianator.com/aesa/", + "ApproximateNMFPredictor": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/mlinsights/mlmodel/anmf_predictor.html", + "AUC": "https://en.wikipedia.org/wiki/Receiver_operating_characteristic#Area_under_the_curve", + "B+ tree": "https://en.wikipedia.org/wiki/B%2B_tree", + "BLAS": "https://www.netlib.org/blas/", + "Branch and Bound": "https://en.wikipedia.org/wiki/Branch_and_bound", + "C++": "https://fr.wikipedia.org/wiki/C%2B%2B", + "Custom Criterion for DecisionTreeRegressor": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/piecewise_linear_regression_criterion.html", + "cython": "https://cython.org/", + "DecisionTreeClassifier": "https://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html", + "DecisionTreeRegressor optimized for Linear Regression": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/piecewise_linear_regression_criterion.html", + "dot": "https://fr.wikipedia.org/wiki/DOT_(langage)", + "Holm-Bonferroni method": "https://en.wikipedia.org/wiki/Holm%E2%80%93Bonferroni_method", + "ICML 2016": "https://icml.cc/2016/index.html", + "KMeans": "https://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html", + "LAESA": "https://tavianator.com/aesa/", + "LAPACK": "http://www.netlib.org/lapack/", + "mlinsights": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/index.html", + "mlstatpy": "https://sdpython.github.io/doc/mlstatpy/dev/", + "numpy": ( + "https://www.numpy.org/", + ("https://docs.scipy.org/doc/numpy/reference/generated/numpy.{0}.html", 1), + ("https://docs.scipy.org/doc/numpy/reference/generated/numpy.{0}.{1}.html", 2), + ), + "PiecewiseTreeRegressor": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/mlinsights/mlmodel/" + "piecewise_tree_regression.html#mlinsights.mlmodel.piecewise_tree_regression.PiecewiseTreeRegressor", + "Pillow": "https://pillow.readthedocs.io/en/stable/", + "Predictable t-SNE": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/predictable_tsne.html", + "QuantileLinearRegression": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/mlinsights/mlmodel/quantile_regression.html#mlinsights.mlmodel.quantile_regression.QuantileLinearRegression", + "R-tree": "https://en.wikipedia.org/wiki/R-tree", + "R* tree": "https://en.wikipedia.org/wiki/R*_tree", + "Regression with confidence interval": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/regression_confidence_interval.html", + "relu": "https://en.wikipedia.org/wiki/Rectifier_(neural_networks)", + "ROC": "https://fr.wikipedia.org/wiki/Courbe_ROC", + "scikit-learn": "https://scikit-learn.org/stable/index.html", + "sklearn": "https://scikit-learn.org/stable/index.html", + "sklearn-onnx": "https://onnx.ai/sklearn-onnx/", + "statsmodels": "http://www.statsmodels.org/stable/index.html", + "SVD": "https://fr.wikipedia.org/wiki/D%C3%A9composition_en_valeurs_singuli%C3%A8res", + "teachpyx": "https://sdpython.github.io/doc/teachpyx/dev/", + "tqdm": "https://tqdm.github.io/", + "Visualize a scikit-learn pipeline": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/visualize_pipeline.html", + "X-tree": "https://en.wikipedia.org/wiki/X-tree", + "wikipedia dumps": "https://dumps.wikimedia.org/frwiki/latest/", +} + +imgmath_latex_preamble = preamble +latex_elements["preamble"] = imgmath_latex_preamble diff --git a/_doc/sphinxdoc/source/defthe_index.rst b/_doc/defthe_index.rst similarity index 100% rename from _doc/sphinxdoc/source/defthe_index.rst rename to _doc/defthe_index.rst diff --git a/_doc/sphinxdoc/source/glossary.rst b/_doc/glossary.rst similarity index 100% rename from _doc/sphinxdoc/source/glossary.rst rename to _doc/glossary.rst diff --git a/_doc/sphinxdoc/source/i_ex.rst b/_doc/i_ex.rst similarity index 100% rename from _doc/sphinxdoc/source/i_ex.rst rename to _doc/i_ex.rst diff --git a/_doc/i_examples.rst b/_doc/i_examples.rst new file mode 100644 index 00000000..d8fc6185 --- /dev/null +++ b/_doc/i_examples.rst @@ -0,0 +1,16 @@ + +======== +Exemples +======== + +Exemples, FAQ (Frequently Asked Questions), notebooks +et autres petits bouts de codes qu'on espère pouvoir copier +coller sans les comprendre. Parfois c'est vrai. + +.. toctree:: + :maxdepth: 1 + + i_ex + i_faq + gyexamples/index + all_notebooks diff --git a/_doc/sphinxdoc/source/i_faq.rst b/_doc/i_faq.rst similarity index 100% rename from _doc/sphinxdoc/source/i_faq.rst rename to _doc/i_faq.rst diff --git a/_doc/sphinxdoc/source/index.rst b/_doc/index.rst similarity index 99% rename from _doc/sphinxdoc/source/index.rst rename to _doc/index.rst index a3098fd7..f944cb92 100644 --- a/_doc/sphinxdoc/source/index.rst +++ b/_doc/index.rst @@ -32,7 +32,6 @@ Il est aussi disponible en c_data/index i_examples c_resume/index - i_index Les ordinateurs font principalement des calculs. Ils permettent aussi d'automatiser de nombreuses tâches pour lesquelles ils diff --git a/_doc/sphinxdoc/source/introduction.rst b/_doc/introduction.rst similarity index 100% rename from _doc/sphinxdoc/source/introduction.rst rename to _doc/introduction.rst diff --git a/_doc/sphinxdoc/source/license.rst b/_doc/license.rst similarity index 100% rename from _doc/sphinxdoc/source/license.rst rename to _doc/license.rst diff --git a/_doc/sphinxdoc/source/HISTORY.rst b/_doc/sphinxdoc/source/HISTORY.rst deleted file mode 100644 index f52fe6ab..00000000 --- a/_doc/sphinxdoc/source/HISTORY.rst +++ /dev/null @@ -1,22 +0,0 @@ - -.. _l-HISTORY: - -======= -History -======= - -current - 2021-01-01 - 0.00Mb -============================= - -0.0.0 - 2021-01-01 - 0.00Mb -=========================== - -* :issue:`14`: Aborder la notation f"" (2019-12-22) -* :issue:`10`: talk about warnings (2018-09-23) -* :issue:`6`: remove double entries in index (website) (2018-09-23) -* :issue:`9`: move pandas_groupby_nan to pandas_streaming (2018-05-17) -* :issue:`8`: talk about protobuf (2018-04-21) -* :issue:`7`: talk about serialization (2018-04-20) -* :issue:`5`: fix .. only:: html in readme.rst (2018-03-29) -* :issue:`2`: finish the migration of latex (2017-06-10) -* :issue:`1`: completed completion (2016-09-25) diff --git a/_doc/sphinxdoc/source/_static/my-styles.css b/_doc/sphinxdoc/source/_static/my-styles.css deleted file mode 100644 index a51da6d8..00000000 --- a/_doc/sphinxdoc/source/_static/my-styles.css +++ /dev/null @@ -1,30 +0,0 @@ -.admonition-mathdef { - color: #424242; - background-color: #F9F9F9; - font-size: 14px; -} -.admonition-todoext { - color: #424242; - background-color: #F9F9B9; - font-size: 14px; -} -.admonition-faqref { - color: #424242; - background-color: #F9F9B9; - font-size: 14px; -} -.admonition-exref { - color: #424242; - background-color: #F9F9B9; - font-size: 14px; -} -.admonition-nbref { - color: #424242; - background-color: #F9F9B9; - font-size: 14px; -} -.admonition-blocref { - color: #424242; - background-color: #F9F9B9; - font-size: 14px; -} diff --git a/_doc/sphinxdoc/source/blog/2016/2016-08-18_first_blog.rst b/_doc/sphinxdoc/source/blog/2016/2016-08-18_first_blog.rst deleted file mode 100644 index 19614322..00000000 --- a/_doc/sphinxdoc/source/blog/2016/2016-08-18_first_blog.rst +++ /dev/null @@ -1,8 +0,0 @@ - -.. blogpost:: - :title: Premier blog, juste un essai - :keywords: - :date: 2016-09-18 - :categories: blog - - Premier blog. diff --git a/_doc/sphinxdoc/source/blog/2016/2016-11-20_groupby_nan.rst b/_doc/sphinxdoc/source/blog/2016/2016-11-20_groupby_nan.rst deleted file mode 100644 index fa9d88ed..00000000 --- a/_doc/sphinxdoc/source/blog/2016/2016-11-20_groupby_nan.rst +++ /dev/null @@ -1,11 +0,0 @@ - -.. blogpost:: - :title: pandas, groupby, nan values - :keywords: - :date: 2016-11-20 - :categories: pandas - - La fonction `groupby `_ - ne considère pas (plus) les valeurs manquantes ou - `NaN `_. - Le notebook :ref:`pandasgroupbyrst` illustre ce fait et montre comment les corriger. diff --git a/_doc/sphinxdoc/source/blog/2017/2017-01-06_programming.rst b/_doc/sphinxdoc/source/blog/2017/2017-01-06_programming.rst deleted file mode 100644 index a36d7051..00000000 --- a/_doc/sphinxdoc/source/blog/2017/2017-01-06_programming.rst +++ /dev/null @@ -1,29 +0,0 @@ - -.. blogpost:: - :title: I hate programming sometimes - :keywords: - :date: 2017-01-06 - :categories: weird - - This is the kind of example I never imagined - maybe because I trust too much the code I write - and I can't see it fail for something like what - follows. - - .. runpython:: - :showcode: - :nopep8: - - s1 = 'İ' - s2 = s1.lower() - print(s1, s2) - print(len(s1), len(s2)) - - b = bytes(s2, "utf-8") - print(chr(b[0]), chr(b[1])) - - Do you believe it? - - The length of a lower case character is longer. - - I need a drink. diff --git a/_doc/sphinxdoc/source/blog/2017/2017-07-01_cextension.rst b/_doc/sphinxdoc/source/blog/2017/2017-07-01_cextension.rst deleted file mode 100644 index b5359844..00000000 --- a/_doc/sphinxdoc/source/blog/2017/2017-07-01_cextension.rst +++ /dev/null @@ -1,29 +0,0 @@ - -.. blogpost:: - :title: Inclure un partie C dans un module Python - :keywords: python, C - :date: 2017-07-01 - :categories: module - - Je me suis amusé à programmer un module Python - qui inclut des fonctions écrites en C. - J'ai ajouté un build automatique sur - `travis `_ et - `appveyor `_. - La documentation du module - `cpyquickhelper `_ - et le code sur `github `_. - - Parmi les choses à retenir, il faut un compilateur C++, - `Visual Studio Community Edition 2015 `_ - et `gcc `_ - sous Linux. Pour construire l'extension : - - :: - - python setup.y build_ext --inplace - - Le paramètre ``--inplace`` précise que le module doit être compilé - sur place. Le module peut alors être importé. La partie intéressante - commence - `ici `_. diff --git a/_doc/sphinxdoc/source/blog/2018/2018-03-31_classesfonctions.rst b/_doc/sphinxdoc/source/blog/2018/2018-03-31_classesfonctions.rst deleted file mode 100644 index 29bdc2d4..00000000 --- a/_doc/sphinxdoc/source/blog/2018/2018-03-31_classesfonctions.rst +++ /dev/null @@ -1,174 +0,0 @@ - -.. blogpost:: - :title: C'est obligé les classes ? - :keywords: python, classes - :date: 2018-03-31 - :categories: classe - :label: blog-class-ou-fonction - - *Monsieur, c'est obligé d'utiliser les classes ?* - C'est une question qu'on me pose chaque année - lors des projets informatiques - et je réponds chaque année que non, les classes - ne sont pas obligatoires mais qu'elles ont le don - de simplifier l'écriture des programmes. - Le lanage :epkg:`Python` propose une des syntaxes - les plus explicites par rapport à d'autres langages - car il n'y a pas de paramètres cachés. - Le programme suivant calcule la somme et le produit - de deux entiers stockés dans un dictionnaire. - - .. runpython:: - :showcode: - - def deux_entiers_somme(de): - return de['i1'] + de['i2'] - - def deux_entiers_multiplication(de): - return de['i1'] * de['i2'] - - de = {'i1': 3, 'i2': 2} - s = deux_entiers_somme(de) - m = deux_entiers_multiplication(de) - print(s, m) - - Les deux fonctions ne sont applicables qu'à deux entiers. - Il paraît normal de les préfixer avec *deux_entiers* - pour signifier à celui qui les utiliser que ça ne sert - à rien de les utiliser pour autre chose. - Les classes permettent de regrouper formellement - ces deux fonctions. - - .. runpython:: - :showcode: - - class DeuxEntiers: - - def somme(de): - return de['i1'] + de['i2'] - - def multiplication(de): - return de['i1'] * de['i2'] - - de = {'i1': 3, 'i2': 2} - s = DeuxEntiers.somme(de) # _ --> . - m = DeuxEntiers.multiplication(de) # _ --> . - print(s, m) - - On a juste remplacé le signe ``_`` par ``.`` qui signifie - que la fonction cherchée est dans la classe qui précède ``.``. - Comme les deux entiers en questions sont toujours liés - aux fonctions qui les manipulent, il paraît normal de les - inclure dans la classe. - - .. runpython:: - :showcode: - - class DeuxEntiers: - - def __init__(self, de): # on accroche les données à la classe - self.de = de - - def somme(self): - return self.de['i1'] + self.de['i2'] - - def multiplication(self): - return self.de['i1'] * self.de['i2'] - - de = DeuxEntiers({'i1': 3, 'i2': 2}) - s = DeuxEntiers.somme(de) - m = DeuxEntiers.multiplication(de) - print(s, m) - - .. index:: méthode - - Comme le concept a beaucoup plu aux informaticiens, - ils ont cherché à simplifier l'appel aux fonctions qu'ils - ont appelé des *méthodes* : - - .. runpython:: - :showcode: - - class DeuxEntiers: - - def __init__(self, de): - self.de = de - - def somme(self): - return self.de['i1'] + self.de['i2'] - - def multiplication(self): - return self.de['i1'] * self.de['i2'] - - de = DeuxEntiers({'i1': 3, 'i2': 2}) - s = de.somme() # disparition de DeuxEntiers - m = de.multiplication() # disparition de DeuxEntiers - print(s, m) - - .. index:: attribut - - Ensuite, ils se sont penchés sur la simplification de la représentation - des deux entiers ``{'i1': 3, 'i2': 2}``. Et s'ils étaient considérés comme - des variables de la classe qui ont été renommés en *attributs*. - - .. runpython:: - :showcode: - - class DeuxEntiers: - - def __init__(self, i1, i2): - self.i1 = i1 # plus de dictionnaire - self.i2 = i2 - - def somme(self): - return self.i1 + self.i2 # plus de dictionnaire - - def multiplication(self): - return self.i1 * self.i2 # plus de dictionnaire - - de = DeuxEntiers(3, 2) # plus de dictionnaire - s = de.somme() - m = de.multiplication() - print(s, m) - - Les classes permettent de regrouper formellement - les fonctions qui ne s'appliquent toujours aux mêmes - données. Plus encore, ce nouveau concept a permis d'en - introduire un autre, l':ref:`par_classe_heritage`, qui - permet de réutiliser certaines fonctions, d'en remplacer - d'autres et d'en ajouter pour une autre situation. - - .. runpython:: - :showcode: - - class DeuxEntiers: - - def __init__(self, i1, i2): - self.i1 = i1 - self.i2 = i2 - - def somme(self): - return self.i1 + self.i2 - - def multiplication(self): - return self.i1 * self.i2 - - class DeuxEntiersModifies(DeuxEntiers): # héritage - - def multiplication(self): - return abs(self.i1 * self.i2) # modifié - - def division(self): - return abs(self.i1 / self.i2) # ajouté - - de = DeuxEntiersModifies(-3, 2) - s = de.somme() - m = de.multiplication() - d = de.division() - print(s, m, d) - - Cela peut paraît anodin mais la grande majorité des - programmeurs utilisent majoritairement les classes - une fois qu'ils les ont découvertes car elles - permettent d'organiser le code informatique - en bloc logique. diff --git a/_doc/sphinxdoc/source/blog/2018/2018-04-05_debug.rst b/_doc/sphinxdoc/source/blog/2018/2018-04-05_debug.rst deleted file mode 100644 index b8cf8dd7..00000000 --- a/_doc/sphinxdoc/source/blog/2018/2018-04-05_debug.rst +++ /dev/null @@ -1,34 +0,0 @@ - -.. blogpost:: - :title: Debugger Python - :keywords: python, classes - :date: 2018-04-05 - :categories: debug - - L'exécution pas à pas d'un programme - :epkg:`Python` permet souvent de trouver - facilement l'erreur caché dans un programme. - Cette astuce est néanmoins compliquée à mettre - en oeuvre dans deux cas. Le premier lorsque l'erreur - se produit dans un module implémentée en :epkg:`C++`. - C'est assez rare pour les modules standard comme - :epkg:`pandas` ou :epkg:`numpy` mais néanmoins possible. - Il n'y a pas d'options pratique depuis :epkg:`Python` - si ce n'est Visual Studio : - `Débogage conjoint de Python et de C++ - `_. - Le second cas difficile avec un débugger survient - lorsque l'erreur se produit dans un programme après plusieurs - minutes d'exécution ou à la dernière itération d'une boucle - à un million de tours. Dans ces cas-là, le seul recours - est souvent d'utiliser la fonction ``print`` à des endroits - bien choisis. Parfois, on souhaite détecter que le même nombre - d'objets à été créés puis détruits, parfois, on souhaite - tomber sur la donnée qui fait exploser la mémoire. - Le module `pympler `_ - propose quelques outils pour ces deux méthodes de diagnostic. - Quoiqu'il en soit, après une telle aventure, vous serez - probablement incité à écrire des petites fonctions facilement - testables séparéments plutôt que de grandes fonctions - terriblement compliquées à tester. diff --git a/_doc/sphinxdoc/source/blog/2018/2018-10-24_memory.rst b/_doc/sphinxdoc/source/blog/2018/2018-10-24_memory.rst deleted file mode 100644 index 92d5e9f6..00000000 --- a/_doc/sphinxdoc/source/blog/2018/2018-10-24_memory.rst +++ /dev/null @@ -1,20 +0,0 @@ - -.. blogpost:: - :title: Gestion de la mémoire en Python - :keywords: python, mémoire - :date: 2018-10-24 - :categories: mémoire - - La compréhension d'un langage compilé et bas niveau tel que le - :epkg:`C` aide énormément à comprendre pour :epkg:`Python` - est parfois très lent ou pourquoi il est en théorie un langage - multithreadé qui ne l'est pas en apparence. La vidéo suivante - explique d'autres petits recoins cachés du langage. - - .. youtube:: https://youtu.be/F6u5rhUQ6dU - - La suivante explique les désagréments que l'on rencontre souvent - quand un projet grossit inexorablement sans qu'on revisite - quelques vieux codes écrits par des auteurs parfois disparus. - - .. youtube:: https://youtu.be/JKYktDRoRxw diff --git a/_doc/sphinxdoc/source/blog/2020/2020-10-25_numpyinf.rst b/_doc/sphinxdoc/source/blog/2020/2020-10-25_numpyinf.rst deleted file mode 100644 index f76e3ff9..00000000 --- a/_doc/sphinxdoc/source/blog/2020/2020-10-25_numpyinf.rst +++ /dev/null @@ -1,43 +0,0 @@ - -.. blogpost:: - :title: Infinite dans une conversion de float64 en float32 - :keywords: python, mémoire - :date: 2020-10-25 - :categories: numpy - - C'est le genre de petits détails numériques qui font - qu'un calcul échoue sans qu'on se doute le plus souvent - qu'une erreur s'est glissée quelque part. - Le type `float32` est très utilisé dans le cas des réseaux - de neurones profonds car le calcul peut alors être fait - sur CPU et GPU. Dans le cas du machine learning classique, - avec :epkg:`scikit-learn`, c'est le type `float64` est qui - le plus souvent utilisé. Dès lors, il arrrive qu'on doivent - convertir des réels d'un type à l'autre. - - De `float32` à `float64`, tout se passe bien puisque le second - type est plus précis que le premier, il est codé sur plus d'octets. - Le nombre converti est identique à l'original dans ce cas. - Dans l'autre sens, on pourrait s'attendre à une légère perte - de précision, une sorte d'arrondi, sauf que dans un cas, - la différence est notable. - - .. runpython:: - :showcode: - - import numpy - x = numpy.float64(1e300) - print(x) - print(numpy.float32(x)) - - La valeur `1e300` ne peut être représentée avec un type - `float32 `_ - mais elle existe avec un type `float64`. Quand on - la convertit, :epkg:`numpy` la remplace par une constante - `numpy.inf `_ ce qui peut avoir un impact - assez grand selon les calculs qui suivent. - On pourrait que ce cas n'arrive pas souvent sauf quand on - utilise la fonction exponentielle. Et c'est très fréquent en - deep learning. diff --git a/_doc/sphinxdoc/source/conf.py b/_doc/sphinxdoc/source/conf.py deleted file mode 100644 index 3f31429d..00000000 --- a/_doc/sphinxdoc/source/conf.py +++ /dev/null @@ -1,115 +0,0 @@ -# -*- coding: utf-8 -*- -import sys -import os -import pydata_sphinx_theme -from pyquickhelper.helpgen.default_conf import set_sphinx_variables - -sys.path.insert(0, os.path.abspath(os.path.join(os.path.split(__file__)[0]))) -local_template = os.path.join(os.path.abspath( - os.path.dirname(__file__)), "phdoc_templates") - -set_sphinx_variables(__file__, "teachpyx", "Xavier Dupré", 2023, - "pydata_sphinx_theme", ['_static'], - locals(), extlinks=dict(issue=( - 'https://github.com/sdpython/teachpyx/issues/%s', - 'issue %s')), - title="Programmation avec le langage Python", book=True, nblayout='table') - -blog_root = "http://www.xavierdupre.fr/app/teachpyx/helpsphinx/" -extensions.append("sphinxcontrib.blockdiag") -# blockdiag_fontpath = '/usr/share/fonts/truetype/ipafont/ipagp.ttf' - -html_css_files = ['my-styles.css'] - -html_logo = "_static/project_ico_small.png" - -language = "fr" - -preamble = ''' -\\usepackage{etex} -\\usepackage{fixltx2e} % LaTeX patches, \\textsubscript -\\usepackage{cmap} % fix search and cut-and-paste in Acrobat -\\usepackage[raccourcis]{fast-diagram} -\\usepackage{titlesec} -\\usepackage{amsmath} -\\usepackage{amssymb} -\\usepackage{amsfonts} -\\usepackage{graphics} -\\usepackage{epic} -\\usepackage{eepic} -%\\usepackage{pict2e} -%%% Redefined titleformat -\\setlength{\\parindent}{0cm} -\\setlength{\\parskip}{1ex plus 0.5ex minus 0.2ex} -\\newcommand{\\hsp}{\\hspace{20pt}} -\\newcommand{\\acc}[1]{\\left\\{#1\\right\\}} -\\newcommand{\\cro}[1]{\\left[#1\\right]} -\\newcommand{\\pa}[1]{\\left(#1\\right)} -\\newcommand{\\R}{\\mathbb{R}} -\\newcommand{\\HRule}{\\rule{\\linewidth}{0.5mm}} -%\\titleformat{\\chapter}[hang]{\\Huge\\bfseries\\sffamily}{\\thechapter\\hsp}{0pt}{\\Huge\\bfseries\\sffamily} -''' - -custom_preamble = """\n -\\usepackage[all]{xy} -\\newcommand{\\vecteur}[2]{\\pa{#1,\\dots,#2}} -\\newcommand{\\N}[0]{\\mathbb{N}} -\\newcommand{\\indicatrice}[1]{\\mathbf{1\\!\\!1}_{\\acc{#1}}} -\\newcommand{\\infegal}[0]{\\leqslant} -\\newcommand{\\supegal}[0]{\\geqslant} -\\newcommand{\\ensemble}[2]{\\acc{#1,\\dots,#2}} -\\newcommand{\\fleche}[1]{\\overrightarrow{ #1 }} -\\newcommand{\\intervalle}[2]{\\left\\{#1,\\cdots,#2\\right\\}} -\\newcommand{\\loinormale}[2]{{\\cal N}\\pa{#1,#2}} -\\newcommand{\\independant}[0]{\\;\\makebox[3ex]{\\makebox[0ex]{\\rule[-0.2ex]{3ex}{.1ex}}\\!\\!\\!\\!\\makebox[.5ex][l]{\\rule[-.2ex]{.1ex}{2ex}}\\makebox[.5ex][l]{\\rule[-.2ex]{.1ex}{2ex}}} \\,\\,} -\\newcommand{\\esp}{\\mathbb{E}} -\\newcommand{\\var}{\\mathbb{V}} -\\newcommand{\\pr}[1]{\\mathbb{P}\\pa{#1}} -\\newcommand{\\loi}[0]{{\\cal L}} -\\newcommand{\\vecteurno}[2]{#1,\\dots,#2} -\\newcommand{\\norm}[1]{\\left\\Vert#1\\right\\Vert} -\\newcommand{\\norme}[1]{\\left\\Vert#1\\right\\Vert} -\\newcommand{\\dans}[0]{\\rightarrow} -\\newcommand{\\partialfrac}[2]{\\frac{\\partial #1}{\\partial #2}} -\\newcommand{\\partialdfrac}[2]{\\dfrac{\\partial #1}{\\partial #2}} -\\newcommand{\\loimultinomiale}[1]{{\\cal M}\\pa{#1}} -\\newcommand{\\trace}[1]{tr\\pa{#1}} -\\newcommand{\\sac}[0]{|} -\\newcommand{\\abs}[1]{\\left|#1\\right|} -""" -# \\usepackage{eepic} - -imgmath_latex_preamble = preamble + custom_preamble -latex_elements['preamble'] = preamble + custom_preamble -mathdef_link_only = True - -epkg_dictionary.update({ - 'algorithme': 'https://fr.wikipedia.org/wiki/Algorithme', - 'algorithmes numériques': - 'http://www.xavierdupre.fr/app/ensae_teaching_cs/helpsphinx3/' - 'specials/algorithm_culture.html#catalogue-d-algorithmes', - 'algorithmes de tri': 'https://fr.wikipedia.org/wiki/Algorithme_de_tri', - 'Anaconda': 'https://www.anaconda.com/', - 'Awesome Python': 'https://github.com/vinta/awesome-python', - 'C': 'https://fr.wikipedia.org/wiki/C_(langage)', - 'C++': 'https://fr.wikipedia.org/wiki/C%2B%2B', - 'cython': 'http://cython.org/', - 'format': 'https://docs.python.org/3/library/stdtypes.html#str.format', - 'joblib': 'https://pythonhosted.org/joblib/', - 'jupyter': 'https://jupyter.org/', - 'JSON': 'https://fr.wikipedia.org/wiki/JavaScript_Object_Notation', - 'Miniconda': 'https://docs.conda.io/en/latest/miniconda.html', - 'nan': 'https://docs.scipy.org/doc/numpy/reference/generated/numpy.isnan.html', - 'NaN': 'https://docs.scipy.org/doc/numpy/reference/generated/numpy.isnan.html', - 'OpenMP': 'https://fr.wikipedia.org/wiki/OpenMP', - 'programmation fonctionnelle': 'https://fr.wikipedia.org/wiki/Programmation_fonctionnelle', - 'programmation impérative': 'https://fr.wikipedia.org/wiki/Programmation_imp%C3%A9rative', - 'protobuf': 'https://developers.google.com/protocol-buffers/', - 'pyformat': 'https://pyformat.info/', - 'pypi': 'https://pypi.org/', - 'Python': 'https://www.python.org/', - 'shebang': 'https://fr.wikipedia.org/wiki/Shebang', - 'ujson': 'https://github.com/esnme/ultrajson', - 'ultrajson': 'https://github.com/esnme/ultrajson', - 'Visual Studio Code': 'https://code.visualstudio.com/', -}) diff --git a/_doc/sphinxdoc/source/doctestunit.rst b/_doc/sphinxdoc/source/doctestunit.rst deleted file mode 100644 index 4bbcef46..00000000 --- a/_doc/sphinxdoc/source/doctestunit.rst +++ /dev/null @@ -1,12 +0,0 @@ -.. _l-doctestunit: - -================================ -Documentation, unit tests, setup -================================ - -See `Unit tests with pyquickhelper `_. - -Extensions to install -===================== - -* `pyquickhelper `_ diff --git a/_doc/sphinxdoc/source/end_index2.rst b/_doc/sphinxdoc/source/end_index2.rst deleted file mode 100644 index 3ffbac49..00000000 --- a/_doc/sphinxdoc/source/end_index2.rst +++ /dev/null @@ -1,11 +0,0 @@ - -===== -Index -===== - -.. toctree:: - - filechanges - all_report - end_index_glossaire - blog/blogindex diff --git a/_doc/sphinxdoc/source/end_index_glossaire.rst b/_doc/sphinxdoc/source/end_index_glossaire.rst deleted file mode 100644 index 0340fe97..00000000 --- a/_doc/sphinxdoc/source/end_index_glossaire.rst +++ /dev/null @@ -1,19 +0,0 @@ - -====== -README -====== - -.. only:: html - - .. toctree:: - - glossary - README - license - -.. only:: not html - - .. toctree:: - - glossary - license diff --git a/_doc/sphinxdoc/source/i_examples.rst b/_doc/sphinxdoc/source/i_examples.rst deleted file mode 100644 index 125eed7b..00000000 --- a/_doc/sphinxdoc/source/i_examples.rst +++ /dev/null @@ -1,28 +0,0 @@ - -======== -Exemples -======== - -Exemples, FAQ (Frequently Asked Questions), notebooks -et autres petits bouts de codes qu'on espère pouvoir copier -coller sans les comprendre. Parfois c'est vrai. - -.. only:: html - - .. toctree:: - :maxdepth: 1 - - i_ex - i_faq - gyexamples/index - all_notebooks - -.. only:: latex - - .. toctree:: - :maxdepth: 2 - - i_ex - i_faq - gyexamples/index - all_notebooks diff --git a/_doc/sphinxdoc/source/i_index.rst b/_doc/sphinxdoc/source/i_index.rst deleted file mode 100644 index cbcc080b..00000000 --- a/_doc/sphinxdoc/source/i_index.rst +++ /dev/null @@ -1,21 +0,0 @@ - -===== -Index -===== - -.. only:: html - - .. toctree:: - :maxdepth: 1 - - defthe_index - end_index2 - blog/blogindex - -.. only:: latex - - .. toctree:: - :maxdepth: 2 - - end_index_glossaire - blog/blogindex diff --git a/_doc/sphinxdoc/source/issues_todoextlist.rst b/_doc/sphinxdoc/source/issues_todoextlist.rst deleted file mode 100644 index 74a66423..00000000 --- a/_doc/sphinxdoc/source/issues_todoextlist.rst +++ /dev/null @@ -1,21 +0,0 @@ - -.. _l-issues-todolist: - -Bugs et améliorations -===================== - -.. index:: issues, todo - -.. contents:: - -Bugs -++++ - -.. todoextlist:: - :tag: bug - -Amélioration -++++++++++++ - -.. todoextlist:: - :tag: plus diff --git a/_doc/sphinxdoc/source/phdoc_templates/layout.html b/_doc/sphinxdoc/source/phdoc_templates/layout.html deleted file mode 100644 index 08baa3ec..00000000 --- a/_doc/sphinxdoc/source/phdoc_templates/layout.html +++ /dev/null @@ -1,5 +0,0 @@ -{# Import the theme's layout. #} -{% extends "!layout.html" %} - -{# Custom CSS overrides #} -{% set bootswatch_css_custom = ['_static/my-styles.css'] %} \ No newline at end of file diff --git a/_doc/sphinxdoc/source/phdoc_templates/my-styles.css b/_doc/sphinxdoc/source/phdoc_templates/my-styles.css deleted file mode 100644 index a51da6d8..00000000 --- a/_doc/sphinxdoc/source/phdoc_templates/my-styles.css +++ /dev/null @@ -1,30 +0,0 @@ -.admonition-mathdef { - color: #424242; - background-color: #F9F9F9; - font-size: 14px; -} -.admonition-todoext { - color: #424242; - background-color: #F9F9B9; - font-size: 14px; -} -.admonition-faqref { - color: #424242; - background-color: #F9F9B9; - font-size: 14px; -} -.admonition-exref { - color: #424242; - background-color: #F9F9B9; - font-size: 14px; -} -.admonition-nbref { - color: #424242; - background-color: #F9F9B9; - font-size: 14px; -} -.admonition-blocref { - color: #424242; - background-color: #F9F9B9; - font-size: 14px; -} diff --git a/_doc/sphinxdoc/source/phdoc_templates/page.html b/_doc/sphinxdoc/source/phdoc_templates/page.html deleted file mode 100644 index 1be6020a..00000000 --- a/_doc/sphinxdoc/source/phdoc_templates/page.html +++ /dev/null @@ -1,4 +0,0 @@ -{% extends "layout.html" %} -{% block body %} -{{ body }} -{% endblock body %} From 17a3f63d1a2003eddab0348d745f3e5ea2f68275 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Sun, 30 Jul 2023 19:55:06 +0200 Subject: [PATCH 04/26] refactoring --- .github/workflows/black-ruff.yml | 16 + .github/workflows/check-urls.yml | 47 + .github/workflows/codeql.yml | 61 + .github/workflows/documentation.yml | 88 + .github/workflows/rstcheck.yml | 27 + .github/workflows/wheels-any.yml | 29 + _doc/conf.py | 7 +- .../examples/plot_float_and_double_rouding.py | 279 +++ _doc/examples/plot_gil_example.py | 83 + _doc/examples/plot_hypercube.py | 382 +++ ...da_function.py => plot_lambda_function.py} | 2 +- _doc/examples/plot_numpy_tricks.py | 48 + _doc/examples/plot_pandas_groupby.py | 50 + _doc/examples/plot_partie_dame.py | 263 ++ _doc/examples/plot_serialisation_examples.py | 518 ++++ _doc/examples/plot_serialisation_protobuf.py | 261 ++ _doc/examples/plot_tarabiscote.py | 453 ++++ _doc/notebooks/README.txt | 2 - _doc/notebooks/numpy/README.txt | 2 - _doc/notebooks/numpy/numpy_tricks.ipynb | 303 --- _doc/notebooks/pandas/README.txt | 2 - _doc/notebooks/pandas/pandas_groupby.ipynb | 413 ---- _doc/notebooks/python/README.txt | 3 - .../python/float_and_double_rouding.ipynb | 1230 ---------- _doc/notebooks/python/gil_example.ipynb | 320 --- _doc/notebooks/python/hypercube.ipynb | 820 ------- _doc/notebooks/python/notebook_template.ipynb | 201 -- _doc/notebooks/python/partie_dame.ipynb | 537 ---- .../python/serialisation_examples.ipynb | 1280 ---------- .../python/serialisation_protobuf.ipynb | 870 ------- _doc/notebooks/python/tarabiscote.ipynb | 838 ------- _todo/chap6_module.tex | 911 ------- _todo/chapn_tools.tex | 2174 ----------------- _todo/conseil_ecrire_programme.tex | 88 - _todo/exemple.tex | 32 - _todo/image/after.bmp | Bin 19398 -> 0 bytes _todo/image/after.png | Bin 4313 -> 0 bytes _todo/image/apachein.PNG | Bin 20685 -> 0 bytes _todo/image/apant0.png | Bin 19294 -> 0 bytes _todo/image/apant1.png | Bin 34969 -> 0 bytes _todo/image/apant2.png | Bin 41428 -> 0 bytes _todo/image/apant3.png | Bin 40770 -> 0 bytes _todo/image/apant4.PNG | Bin 84112 -> 0 bytes _todo/image/apant5.PNG | Bin 87697 -> 0 bytes _todo/image/arbo.bmp | Bin 95194 -> 0 bytes _todo/image/arbo.png | Bin 7862 -> 0 bytes _todo/image/bbette.bmp | Bin 174894 -> 0 bytes _todo/image/bbette.png | Bin 24745 -> 0 bytes _todo/image/bbette2.png | Bin 1785 -> 0 bytes _todo/image/bind.bmp | Bin 22170 -> 0 bytes _todo/image/bind.png | Bin 4601 -> 0 bytes _todo/image/boost.png | Bin 12851 -> 0 bytes _todo/image/boostp.png | Bin 13094 -> 0 bytes _todo/image/bouton.bmp | Bin 5046 -> 0 bytes _todo/image/bouton.png | Bin 340 -> 0 bytes _todo/image/bouton2.bmp | Bin 5046 -> 0 bytes _todo/image/bouton2.png | Bin 367 -> 0 bytes _todo/image/bouton3.bmp | Bin 4694 -> 0 bytes _todo/image/bouton3.png | Bin 331 -> 0 bytes _todo/image/can.bmp | Bin 122022 -> 0 bytes _todo/image/can.png | Bin 1307 -> 0 bytes _todo/image/check.bmp | Bin 4694 -> 0 bytes _todo/image/check.png | Bin 331 -> 0 bytes _todo/image/check2.bmp | Bin 5382 -> 0 bytes _todo/image/check2.png | Bin 394 -> 0 bytes _todo/image/cmds.PNG | Bin 25823 -> 0 bytes _todo/image/cmds26.png | Bin 25679 -> 0 bytes _todo/image/combo1.png | Bin 6869 -> 0 bytes _todo/image/combo2.png | Bin 7276 -> 0 bytes _todo/image/comm1.bmp | Bin 23718 -> 0 bytes _todo/image/comm1.png | Bin 4419 -> 0 bytes _todo/image/comm2.bmp | Bin 22094 -> 0 bytes _todo/image/comm2.png | Bin 4509 -> 0 bytes _todo/image/config.bmp | Bin 332742 -> 0 bytes _todo/image/config.png | Bin 11163 -> 0 bytes _todo/image/entree.png | Bin 5993 -> 0 bytes _todo/image/essai.bmp | Bin 707058 -> 0 bytes _todo/image/essai.png | Bin 18796 -> 0 bytes _todo/image/fenpers.png | Bin 11028 -> 0 bytes _todo/image/focus.png | Bin 290 -> 0 bytes _todo/image/frame.bmp | Bin 36990 -> 0 bytes _todo/image/frame.png | Bin 738 -> 0 bytes _todo/image/graphviz.png | Bin 138751 -> 0 bytes _todo/image/grid1.bmp | Bin 29194 -> 0 bytes _todo/image/grid1.png | Bin 568 -> 0 bytes _todo/image/hhw.PNG | Bin 21844 -> 0 bytes _todo/image/inte.bmp | Bin 343050 -> 0 bytes _todo/image/inte.png | Bin 26445 -> 0 bytes _todo/image/label.png | Bin 491 -> 0 bytes _todo/image/label2.png | Bin 478 -> 0 bytes _todo/image/ligne.png | Bin 106313 -> 0 bytes _todo/image/ligne26.png | Bin 21105 -> 0 bytes _todo/image/list1.bmp | Bin 33102 -> 0 bytes _todo/image/list1.png | Bin 615 -> 0 bytes _todo/image/list2.bmp | Bin 32694 -> 0 bytes _todo/image/list2.png | Bin 617 -> 0 bytes _todo/image/listboxs.png | Bin 8867 -> 0 bytes _todo/image/mainloop.PNG | Bin 15753 -> 0 bytes _todo/image/menu.bmp | Bin 221894 -> 0 bytes _todo/image/menu.png | Bin 7260 -> 0 bytes _todo/image/menui.ppt | Bin 164864 -> 0 bytes _todo/image/menut.png | Bin 6735 -> 0 bytes _todo/image/mysql1.PNG | Bin 34494 -> 0 bytes _todo/image/mysql2.PNG | Bin 31978 -> 0 bytes _todo/image/mysql3.PNG | Bin 31291 -> 0 bytes _todo/image/mysql4.PNG | Bin 27473 -> 0 bytes _todo/image/mysql5.PNG | Bin 28131 -> 0 bytes _todo/image/mysql6.PNG | Bin 28002 -> 0 bytes _todo/image/mysql7.PNG | Bin 25127 -> 0 bytes _todo/image/mysql8.PNG | Bin 22172 -> 0 bytes _todo/image/mysqlodbc.PNG | Bin 32006 -> 0 bytes _todo/image/mysqlodbc2.PNG | Bin 29397 -> 0 bytes _todo/image/odbc.PNG | Bin 15257 -> 0 bytes _todo/image/pack1.bmp | Bin 21270 -> 0 bytes _todo/image/pack1.png | Bin 562 -> 0 bytes _todo/image/pack2.bmp | Bin 27526 -> 0 bytes _todo/image/pack2.png | Bin 588 -> 0 bytes _todo/image/pass.bmp | Bin 91190 -> 0 bytes _todo/image/pass.png | Bin 7772 -> 0 bytes _todo/image/pcmd.png | Bin 242277 -> 0 bytes _todo/image/pcmd2.png | Bin 114431 -> 0 bytes _todo/image/pcmd26.png | Bin 46189 -> 0 bytes _todo/image/popt.png | Bin 196521 -> 0 bytes _todo/image/profile.bmp | Bin 231662 -> 0 bytes _todo/image/profile.png | Bin 6344 -> 0 bytes _todo/image/pydoc_image.png | Bin 18886 -> 0 bytes _todo/image/pydoch.PNG | Bin 38890 -> 0 bytes _todo/image/pyform1.PNG | Bin 1706 -> 0 bytes _todo/image/pyscripter.PNG | Bin 403334 -> 0 bytes _todo/image/radio.bmp | Bin 4758 -> 0 bytes _todo/image/radio.png | Bin 426 -> 0 bytes _todo/image/radio2.bmp | Bin 21762 -> 0 bytes _todo/image/radio2.png | Bin 868 -> 0 bytes _todo/image/rawinput.png | Bin 15680 -> 0 bytes _todo/image/reper.png | Bin 172450 -> 0 bytes _todo/image/reper26.png | Bin 7331 -> 0 bytes _todo/image/runs.bmp | Bin 1115974 -> 0 bytes _todo/image/runs.png | Bin 23170 -> 0 bytes _todo/image/saisie1.png | Bin 370 -> 0 bytes _todo/image/saisie2.png | Bin 354 -> 0 bytes _todo/image/scite1.png | Bin 44343 -> 0 bytes _todo/image/scite2.png | Bin 200854 -> 0 bytes _todo/image/scite226.png | Bin 40393 -> 0 bytes _todo/image/seqev.png | Bin 9980 -> 0 bytes _todo/image/sql1.PNG | Bin 14920 -> 0 bytes _todo/image/svn1.png | Bin 5410 -> 0 bytes _todo/image/svn10a.PNG | Bin 21690 -> 0 bytes _todo/image/svn10b.PNG | Bin 21762 -> 0 bytes _todo/image/svn11a.PNG | Bin 13828 -> 0 bytes _todo/image/svn11b.PNG | Bin 44594 -> 0 bytes _todo/image/svn12_.PNG | Bin 6715 -> 0 bytes _todo/image/svn2ex.PNG | Bin 15445 -> 0 bytes _todo/image/svn3r.PNG | Bin 7121 -> 0 bytes _todo/image/svn4f.PNG | Bin 18993 -> 0 bytes _todo/image/svn5f.PNG | Bin 11393 -> 0 bytes _todo/image/svn61.PNG | Bin 4154 -> 0 bytes _todo/image/svn72.PNG | Bin 12539 -> 0 bytes _todo/image/svn8n.PNG | Bin 22421 -> 0 bytes _todo/image/svn8nn.PNG | Bin 3701 -> 0 bytes _todo/image/svn9a.PNG | Bin 1340 -> 0 bytes _todo/image/svn9b.PNG | Bin 1327 -> 0 bytes _todo/image/text1.bmp | Bin 31338 -> 0 bytes _todo/image/text1.png | Bin 704 -> 0 bytes _todo/image/threadim1.png | Bin 6891 -> 0 bytes _todo/image/threadim2.png | Bin 7554 -> 0 bytes _todo/image/tixfile.png | Bin 22037 -> 0 bytes _todo/image/view.bmp | Bin 337014 -> 0 bytes _todo/image/view.png | Bin 7642 -> 0 bytes _todo/image/wiki1.PNG | Bin 38056 -> 0 bytes _todo/image/wiki2.PNG | Bin 15286 -> 0 bytes _todo/image/wiki3.PNG | Bin 19440 -> 0 bytes _todo/image/wiki4.PNG | Bin 16146 -> 0 bytes _todo/image/wiki5.PNG | Bin 14930 -> 0 bytes _todo/image/wiki6.PNG | Bin 15589 -> 0 bytes _todo/image/window1.bmp | Bin 299574 -> 0 bytes _todo/image/window1.png | Bin 9247 -> 0 bytes _todo/license.tex | 215 -- _todo/programme/PythonSample.py | 4 - _todo/programme/__init__.py | 8 - _todo/programme/after.py | 18 - _todo/programme/alltest.py | 46 - _todo/programme/arbo.png | Bin 32279 -> 0 bytes _todo/programme/bette_davis.GIF | Bin 16628 -> 0 bytes _todo/programme/binary_file.py | 24 - _todo/programme/binary_file2.py | 32 - _todo/programme/chal_mono.gif | Bin 1522 -> 0 bytes _todo/programme/classe_exemple.py | 68 - _todo/programme/classique.py | 35 - _todo/programme/classique_seq.py | 48 - _todo/programme/combobox.py | 19 - _todo/programme/command.py | 13 - _todo/programme/conversion.py | 51 - _todo/programme/cube_class.py | 22 - _todo/programme/cube_class2.py | 19 - _todo/programme/dicho.py | 12 - _todo/programme/essai.txt | 57 - _todo/programme/exemple.py | 13 - _todo/programme/exemple2.py | 6 - _todo/programme/exemple3.py | 5 - _todo/programme/exemple4.py | 6 - _todo/programme/exemple_bind.py | 20 - _todo/programme/exemple_bind_my.py | 14 - _todo/programme/exemple_import.py | 20 - _todo/programme/exemple_menu.py | 40 - _todo/programme/exemple_pydoc.py | 32 - _todo/programme/extrpdf.py | 26 - _todo/programme/fileex.py | 10 - _todo/programme/filelist.py | 42 - _todo/programme/filelist2.py | 17 - _todo/programme/filelist3.py | 24 - _todo/programme/filemp3.py | 68 - _todo/programme/filesel.py | 11 - _todo/programme/fonction.py | 71 - _todo/programme/genchm.py | 117 - _todo/programme/genhelp.py | 65 - _todo/programme/graphplot.py | 86 - _todo/programme/hal_python.iss | 100 - _todo/programme/hal_python_update.iss | 86 - _todo/programme/htmlnavi.py | 16 - _todo/programme/import_c_module.py | 155 -- _todo/programme/integrale.py | 14 - _todo/programme/interface_exemple.py | 49 - _todo/programme/listebar.py | 18 - _todo/programme/listst.py | 26 - _todo/programme/mail.py | 39 - _todo/programme/matrice.py | 58 - _todo/programme/mesmodules/__init__.py | 2 - _todo/programme/mesmodules/extension.py | 1 - _todo/programme/mesmodules/part1/__init__.py | 0 .../programme/mesmodules/part1/niveaudeux.py | 1 - _todo/programme/mesmodules/part2/__init__.py | 0 .../mesmodules/part2/niveaudeuxbis.py | 1 - _todo/programme/modinit.py | 6 - _todo/programme/module_exemple.py | 13 - _todo/programme/new_delete.py | 21 - _todo/programme/odbc_1.py | 14 - _todo/programme/odbc_2.py | 9 - _todo/programme/odbc_3.py | 8 - _todo/programme/pi.py | 14 - _todo/programme/rawinput.py | 16 - _todo/programme/sample_isinstance.py | 21 - _todo/programme/sample_module.cpp | 55 - _todo/programme/selection_file.py | 174 -- _todo/programme/selection_file_print.py | 131 - _todo/programme/selection_file_tix.py | 14 - _todo/programme/setup.py | 52 - _todo/programme/sql_1.py | 14 - _todo/programme/sql_2.py | 9 - _todo/programme/sql_3.py | 63 - _todo/programme/synchro.py | 16 - _todo/programme/test_pickle.py | 24 - _todo/programme/test_pickle2.py | 35 - _todo/programme/testdoc1.py | 19 - _todo/programme/testdoc2.py | 25 - _todo/programme/testunit1.py | 9 - _todo/programme/testunit2.py | 34 - _todo/programme/thread1.py | 24 - _todo/programme/thread2.py | 23 - _todo/programme/thread_attente.py | 36 - _todo/programme/thread_attente2.py | 24 - _todo/programme/thread_interface.py | 67 - _todo/programme/thread_partage.py | 47 - _todo/programme/threadqueue.py | 91 - _todo/programme/toplevel_ex.py | 23 - _todo/programme/tri_position.py | 4 - _todo/programme/unuunicode.py | 7 - _todo/programme/unuunicode2.py | 8 - _todo/programme/zip_sample.py | 4 - _todo/python_cours_biblio.tex | 90 - _todo/python_cours_titre.tex | 12 - _todo/resume_utile.tex | 1492 ----------- .../test_run_notebooks_numpy.py | 37 - .../test_run_notebooks_pandas.py | 37 - .../test_run_notebooks_python.py | 37 - .../test_run_notebooks_python_protobuf.py | 38 - _unittests/ut_examples/test_classique.py | 11 +- .../ut_examples/test_classique_permutation.py | 8 +- .../test_construction_classique.py | 22 +- _unittests/ut_examples/test_numpysex.py | 1 - _unittests/ut_faq/test_faq_exception.py | 1 - _unittests/ut_faq/test_faq_missing.py | 26 +- _unittests/ut_faq/test_faq_numpy.py | 1 - _unittests/ut_faq/test_faq_python.py | 4 +- .../test_documentation_examples.py | 81 + _unittests/ut_xrun_doc/test_profiling.py | 195 ++ teachpyx/examples/classiques.py | 41 +- teachpyx/examples/construction_classique.py | 164 +- teachpyx/examples/numpysex.py | 49 +- teachpyx/ext_test_case.py | 326 +++ teachpyx/faq/__init__.py | 7 +- teachpyx/faq/faq_exception.py | 4 +- teachpyx/faq/faq_python.py | 257 +- 292 files changed, 3586 insertions(+), 15099 deletions(-) create mode 100644 .github/workflows/black-ruff.yml create mode 100644 .github/workflows/check-urls.yml create mode 100644 .github/workflows/codeql.yml create mode 100644 .github/workflows/documentation.yml create mode 100644 .github/workflows/rstcheck.yml create mode 100644 .github/workflows/wheels-any.yml create mode 100644 _doc/examples/plot_float_and_double_rouding.py create mode 100644 _doc/examples/plot_gil_example.py create mode 100644 _doc/examples/plot_hypercube.py rename _doc/examples/{lambda_function.py => plot_lambda_function.py} (98%) create mode 100644 _doc/examples/plot_numpy_tricks.py create mode 100644 _doc/examples/plot_pandas_groupby.py create mode 100644 _doc/examples/plot_partie_dame.py create mode 100644 _doc/examples/plot_serialisation_examples.py create mode 100644 _doc/examples/plot_serialisation_protobuf.py create mode 100644 _doc/examples/plot_tarabiscote.py delete mode 100644 _doc/notebooks/README.txt delete mode 100644 _doc/notebooks/numpy/README.txt delete mode 100644 _doc/notebooks/numpy/numpy_tricks.ipynb delete mode 100644 _doc/notebooks/pandas/README.txt delete mode 100644 _doc/notebooks/pandas/pandas_groupby.ipynb delete mode 100644 _doc/notebooks/python/README.txt delete mode 100644 _doc/notebooks/python/float_and_double_rouding.ipynb delete mode 100644 _doc/notebooks/python/gil_example.ipynb delete mode 100644 _doc/notebooks/python/hypercube.ipynb delete mode 100644 _doc/notebooks/python/notebook_template.ipynb delete mode 100644 _doc/notebooks/python/partie_dame.ipynb delete mode 100644 _doc/notebooks/python/serialisation_examples.ipynb delete mode 100644 _doc/notebooks/python/serialisation_protobuf.ipynb delete mode 100644 _doc/notebooks/python/tarabiscote.ipynb delete mode 100644 _todo/chap6_module.tex delete mode 100644 _todo/chapn_tools.tex delete mode 100644 _todo/conseil_ecrire_programme.tex delete mode 100644 _todo/exemple.tex delete mode 100644 _todo/image/after.bmp delete mode 100644 _todo/image/after.png delete mode 100644 _todo/image/apachein.PNG delete mode 100644 _todo/image/apant0.png delete mode 100644 _todo/image/apant1.png delete mode 100644 _todo/image/apant2.png delete mode 100644 _todo/image/apant3.png delete mode 100644 _todo/image/apant4.PNG delete mode 100644 _todo/image/apant5.PNG delete mode 100644 _todo/image/arbo.bmp delete mode 100644 _todo/image/arbo.png delete mode 100644 _todo/image/bbette.bmp delete mode 100644 _todo/image/bbette.png delete mode 100644 _todo/image/bbette2.png delete mode 100644 _todo/image/bind.bmp delete mode 100644 _todo/image/bind.png delete mode 100644 _todo/image/boost.png delete mode 100644 _todo/image/boostp.png delete mode 100644 _todo/image/bouton.bmp delete mode 100644 _todo/image/bouton.png delete mode 100644 _todo/image/bouton2.bmp delete mode 100644 _todo/image/bouton2.png delete mode 100644 _todo/image/bouton3.bmp delete mode 100644 _todo/image/bouton3.png delete mode 100644 _todo/image/can.bmp delete mode 100644 _todo/image/can.png delete mode 100644 _todo/image/check.bmp delete mode 100644 _todo/image/check.png delete mode 100644 _todo/image/check2.bmp delete mode 100644 _todo/image/check2.png delete mode 100644 _todo/image/cmds.PNG delete mode 100644 _todo/image/cmds26.png delete mode 100644 _todo/image/combo1.png delete mode 100644 _todo/image/combo2.png delete mode 100644 _todo/image/comm1.bmp delete mode 100644 _todo/image/comm1.png delete mode 100644 _todo/image/comm2.bmp delete mode 100644 _todo/image/comm2.png delete mode 100644 _todo/image/config.bmp delete mode 100644 _todo/image/config.png delete mode 100644 _todo/image/entree.png delete mode 100644 _todo/image/essai.bmp delete mode 100644 _todo/image/essai.png delete mode 100644 _todo/image/fenpers.png delete mode 100644 _todo/image/focus.png delete mode 100644 _todo/image/frame.bmp delete mode 100644 _todo/image/frame.png delete mode 100644 _todo/image/graphviz.png delete mode 100644 _todo/image/grid1.bmp delete mode 100644 _todo/image/grid1.png delete mode 100644 _todo/image/hhw.PNG delete mode 100644 _todo/image/inte.bmp delete mode 100644 _todo/image/inte.png delete mode 100644 _todo/image/label.png delete mode 100644 _todo/image/label2.png delete mode 100644 _todo/image/ligne.png delete mode 100644 _todo/image/ligne26.png delete mode 100644 _todo/image/list1.bmp delete mode 100644 _todo/image/list1.png delete mode 100644 _todo/image/list2.bmp delete mode 100644 _todo/image/list2.png delete mode 100644 _todo/image/listboxs.png delete mode 100644 _todo/image/mainloop.PNG delete mode 100644 _todo/image/menu.bmp delete mode 100644 _todo/image/menu.png delete mode 100644 _todo/image/menui.ppt delete mode 100644 _todo/image/menut.png delete mode 100644 _todo/image/mysql1.PNG delete mode 100644 _todo/image/mysql2.PNG delete mode 100644 _todo/image/mysql3.PNG delete mode 100644 _todo/image/mysql4.PNG delete mode 100644 _todo/image/mysql5.PNG delete mode 100644 _todo/image/mysql6.PNG delete mode 100644 _todo/image/mysql7.PNG delete mode 100644 _todo/image/mysql8.PNG delete mode 100644 _todo/image/mysqlodbc.PNG delete mode 100644 _todo/image/mysqlodbc2.PNG delete mode 100644 _todo/image/odbc.PNG delete mode 100644 _todo/image/pack1.bmp delete mode 100644 _todo/image/pack1.png delete mode 100644 _todo/image/pack2.bmp delete mode 100644 _todo/image/pack2.png delete mode 100644 _todo/image/pass.bmp delete mode 100644 _todo/image/pass.png delete mode 100644 _todo/image/pcmd.png delete mode 100644 _todo/image/pcmd2.png delete mode 100644 _todo/image/pcmd26.png delete mode 100644 _todo/image/popt.png delete mode 100644 _todo/image/profile.bmp delete mode 100644 _todo/image/profile.png delete mode 100644 _todo/image/pydoc_image.png delete mode 100644 _todo/image/pydoch.PNG delete mode 100644 _todo/image/pyform1.PNG delete mode 100644 _todo/image/pyscripter.PNG delete mode 100644 _todo/image/radio.bmp delete mode 100644 _todo/image/radio.png delete mode 100644 _todo/image/radio2.bmp delete mode 100644 _todo/image/radio2.png delete mode 100644 _todo/image/rawinput.png delete mode 100644 _todo/image/reper.png delete mode 100644 _todo/image/reper26.png delete mode 100644 _todo/image/runs.bmp delete mode 100644 _todo/image/runs.png delete mode 100644 _todo/image/saisie1.png delete mode 100644 _todo/image/saisie2.png delete mode 100644 _todo/image/scite1.png delete mode 100644 _todo/image/scite2.png delete mode 100644 _todo/image/scite226.png delete mode 100644 _todo/image/seqev.png delete mode 100644 _todo/image/sql1.PNG delete mode 100644 _todo/image/svn1.png delete mode 100644 _todo/image/svn10a.PNG delete mode 100644 _todo/image/svn10b.PNG delete mode 100644 _todo/image/svn11a.PNG delete mode 100644 _todo/image/svn11b.PNG delete mode 100644 _todo/image/svn12_.PNG delete mode 100644 _todo/image/svn2ex.PNG delete mode 100644 _todo/image/svn3r.PNG delete mode 100644 _todo/image/svn4f.PNG delete mode 100644 _todo/image/svn5f.PNG delete mode 100644 _todo/image/svn61.PNG delete mode 100644 _todo/image/svn72.PNG delete mode 100644 _todo/image/svn8n.PNG delete mode 100644 _todo/image/svn8nn.PNG delete mode 100644 _todo/image/svn9a.PNG delete mode 100644 _todo/image/svn9b.PNG delete mode 100644 _todo/image/text1.bmp delete mode 100644 _todo/image/text1.png delete mode 100644 _todo/image/threadim1.png delete mode 100644 _todo/image/threadim2.png delete mode 100644 _todo/image/tixfile.png delete mode 100644 _todo/image/view.bmp delete mode 100644 _todo/image/view.png delete mode 100644 _todo/image/wiki1.PNG delete mode 100644 _todo/image/wiki2.PNG delete mode 100644 _todo/image/wiki3.PNG delete mode 100644 _todo/image/wiki4.PNG delete mode 100644 _todo/image/wiki5.PNG delete mode 100644 _todo/image/wiki6.PNG delete mode 100644 _todo/image/window1.bmp delete mode 100644 _todo/image/window1.png delete mode 100644 _todo/license.tex delete mode 100644 _todo/programme/PythonSample.py delete mode 100644 _todo/programme/__init__.py delete mode 100644 _todo/programme/after.py delete mode 100644 _todo/programme/alltest.py delete mode 100644 _todo/programme/arbo.png delete mode 100644 _todo/programme/bette_davis.GIF delete mode 100644 _todo/programme/binary_file.py delete mode 100644 _todo/programme/binary_file2.py delete mode 100644 _todo/programme/chal_mono.gif delete mode 100644 _todo/programme/classe_exemple.py delete mode 100644 _todo/programme/classique.py delete mode 100644 _todo/programme/classique_seq.py delete mode 100644 _todo/programme/combobox.py delete mode 100644 _todo/programme/command.py delete mode 100644 _todo/programme/conversion.py delete mode 100644 _todo/programme/cube_class.py delete mode 100644 _todo/programme/cube_class2.py delete mode 100644 _todo/programme/dicho.py delete mode 100644 _todo/programme/essai.txt delete mode 100644 _todo/programme/exemple.py delete mode 100644 _todo/programme/exemple2.py delete mode 100644 _todo/programme/exemple3.py delete mode 100644 _todo/programme/exemple4.py delete mode 100644 _todo/programme/exemple_bind.py delete mode 100644 _todo/programme/exemple_bind_my.py delete mode 100644 _todo/programme/exemple_import.py delete mode 100644 _todo/programme/exemple_menu.py delete mode 100644 _todo/programme/exemple_pydoc.py delete mode 100644 _todo/programme/extrpdf.py delete mode 100644 _todo/programme/fileex.py delete mode 100644 _todo/programme/filelist.py delete mode 100644 _todo/programme/filelist2.py delete mode 100644 _todo/programme/filelist3.py delete mode 100644 _todo/programme/filemp3.py delete mode 100644 _todo/programme/filesel.py delete mode 100644 _todo/programme/fonction.py delete mode 100644 _todo/programme/genchm.py delete mode 100644 _todo/programme/genhelp.py delete mode 100644 _todo/programme/graphplot.py delete mode 100644 _todo/programme/hal_python.iss delete mode 100644 _todo/programme/hal_python_update.iss delete mode 100644 _todo/programme/htmlnavi.py delete mode 100644 _todo/programme/import_c_module.py delete mode 100644 _todo/programme/integrale.py delete mode 100644 _todo/programme/interface_exemple.py delete mode 100644 _todo/programme/listebar.py delete mode 100644 _todo/programme/listst.py delete mode 100644 _todo/programme/mail.py delete mode 100644 _todo/programme/matrice.py delete mode 100644 _todo/programme/mesmodules/__init__.py delete mode 100644 _todo/programme/mesmodules/extension.py delete mode 100644 _todo/programme/mesmodules/part1/__init__.py delete mode 100644 _todo/programme/mesmodules/part1/niveaudeux.py delete mode 100644 _todo/programme/mesmodules/part2/__init__.py delete mode 100644 _todo/programme/mesmodules/part2/niveaudeuxbis.py delete mode 100644 _todo/programme/modinit.py delete mode 100644 _todo/programme/module_exemple.py delete mode 100644 _todo/programme/new_delete.py delete mode 100644 _todo/programme/odbc_1.py delete mode 100644 _todo/programme/odbc_2.py delete mode 100644 _todo/programme/odbc_3.py delete mode 100644 _todo/programme/pi.py delete mode 100644 _todo/programme/rawinput.py delete mode 100644 _todo/programme/sample_isinstance.py delete mode 100644 _todo/programme/sample_module.cpp delete mode 100644 _todo/programme/selection_file.py delete mode 100644 _todo/programme/selection_file_print.py delete mode 100644 _todo/programme/selection_file_tix.py delete mode 100644 _todo/programme/setup.py delete mode 100644 _todo/programme/sql_1.py delete mode 100644 _todo/programme/sql_2.py delete mode 100644 _todo/programme/sql_3.py delete mode 100644 _todo/programme/synchro.py delete mode 100644 _todo/programme/test_pickle.py delete mode 100644 _todo/programme/test_pickle2.py delete mode 100644 _todo/programme/testdoc1.py delete mode 100644 _todo/programme/testdoc2.py delete mode 100644 _todo/programme/testunit1.py delete mode 100644 _todo/programme/testunit2.py delete mode 100644 _todo/programme/thread1.py delete mode 100644 _todo/programme/thread2.py delete mode 100644 _todo/programme/thread_attente.py delete mode 100644 _todo/programme/thread_attente2.py delete mode 100644 _todo/programme/thread_interface.py delete mode 100644 _todo/programme/thread_partage.py delete mode 100644 _todo/programme/threadqueue.py delete mode 100644 _todo/programme/toplevel_ex.py delete mode 100644 _todo/programme/tri_position.py delete mode 100644 _todo/programme/unuunicode.py delete mode 100644 _todo/programme/unuunicode2.py delete mode 100644 _todo/programme/zip_sample.py delete mode 100644 _todo/python_cours_biblio.tex delete mode 100644 _todo/python_cours_titre.tex delete mode 100644 _todo/resume_utile.tex delete mode 100644 _unittests/ut_documentation/test_run_notebooks_numpy.py delete mode 100644 _unittests/ut_documentation/test_run_notebooks_pandas.py delete mode 100644 _unittests/ut_documentation/test_run_notebooks_python.py delete mode 100644 _unittests/ut_documentation/test_run_notebooks_python_protobuf.py create mode 100644 _unittests/ut_xrun_doc/test_documentation_examples.py create mode 100644 _unittests/ut_xrun_doc/test_profiling.py create mode 100644 teachpyx/ext_test_case.py diff --git a/.github/workflows/black-ruff.yml b/.github/workflows/black-ruff.yml new file mode 100644 index 00000000..9a047430 --- /dev/null +++ b/.github/workflows/black-ruff.yml @@ -0,0 +1,16 @@ +name: Black + Ruff Format Checker +on: [push, pull_request] +jobs: + black-format-check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: psf/black@stable + with: + options: "--diff --check" + src: "." + ruff-format-check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: chartboost/ruff-action@v1 diff --git a/.github/workflows/check-urls.yml b/.github/workflows/check-urls.yml new file mode 100644 index 00000000..f856f316 --- /dev/null +++ b/.github/workflows/check-urls.yml @@ -0,0 +1,47 @@ +name: Check URLs + +on: + pull_request: + branches: [main] + schedule: + # ┌───────────── minute (0 - 59) + # │ ┌───────────── hour (0 - 23) + # │ │ ┌───────────── day of the month (1 - 31) + # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC) + # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT) + # │ │ │ │ │ + # │ │ │ │ │ + # │ │ │ │ │ + # * * * * * + - cron: '30 1 * * 0' + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + + - name: urls-checker-code + uses: urlstechie/urlchecker-action@master + with: + subfolder: teachpyx + file_types: .md,.py,.rst,.ipynb + print_all: false + timeout: 5 + retry_count# : 3 + # exclude_urls: https://dumps.wikimedia.org/other/pageviews/%Y/%Y-%m/pageviews-%Y%m%d-%H0000.gz,https://dumps.wikimedia.org/frwiki/latest/latest-all-titles-in-ns0.gz + exclude_patterns: https://dumps.wikimedia.org/ + # force_pass : true + + - name: urls-checker-docs + uses: urlstechie/urlchecker-action@master + with: + subfolder: _doc + file_types: .md,.py,.rst,.ipynb + print_all: false + timeout: 5 + retry_count# : 3 + exclude_urls: https://hal.archives-ouvertes.fr/hal-00990252/document,https://github.com/onnx/models/raw/main/vision/classification/mobilenet/model/mobilenetv2-12.onnx,https://arxiv.org/ftp/arxiv/papers/1510/1510.04863.pdf,https://hal.science/hal-01125940 + exclude_patterns: https://www.data.gouv.fr/fr/datasets/r/e3d83ab3-dc52-4c99-abaf-8a38050cc68c,https://github.com/onnx/models/raw/main/vision/classification/mobilenet/model/mobilenetv2-12.onnx + # force_pass : true diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml new file mode 100644 index 00000000..bea1259d --- /dev/null +++ b/.github/workflows/codeql.yml @@ -0,0 +1,61 @@ +name: "Code Scanning - Action" + +on: + push: + branches: [main] + pull_request: + branches: [main] + schedule: + # ┌───────────── minute (0 - 59) + # │ ┌───────────── hour (0 - 23) + # │ │ ┌───────────── day of the month (1 - 31) + # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC) + # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT) + # │ │ │ │ │ + # │ │ │ │ │ + # │ │ │ │ │ + # * * * * * + - cron: '30 1 * * 0' + +jobs: + CodeQL-Build: + # CodeQL runs on ubuntu-latest, windows-latest, and macos-latest + runs-on: ubuntu-latest + + permissions: + # required for all workflows + security-events: write + + # only required for workflows in private repositories + actions: read + contents: read + + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v2 + # Override language selection by uncommenting this and choosing your languages + # with: + # languages: go, javascript, csharp, python, cpp, java, ruby + + # Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java). + # If this step fails, then you should remove it and run the build manually (see below). + - name: Autobuild + uses: github/codeql-action/autobuild@v2 + + # ℹ️ Command-line programs to run using the OS shell. + # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun + + # ✏️ If the Autobuild fails above, remove it and uncomment the following + # three lines and modify them (or add more) to build your code if your + # project uses a compiled language + + #- run: | + # make bootstrap + # make release + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v2 diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml new file mode 100644 index 00000000..c70ed3d8 --- /dev/null +++ b/.github/workflows/documentation.yml @@ -0,0 +1,88 @@ +name: Documentation and Code Coverage + +on: + push: + pull_request: + types: + - closed + branches: + - main + +jobs: + run: + name: Build documentation on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest] + + steps: + - uses: actions/checkout@v3 + + - uses: actions/setup-python@v4 + with: + python-version: '3.11' + + - uses: tlylt/install-graphviz@v1 + + - name: Install pandoc + run: sudo apt-get install -y pandoc + + - name: Install requirements + run: python -m pip install -r requirements.txt + + - name: Install requirements dev + run: python -m pip install -r requirements-dev.txt + + - name: Cache pip + uses: actions/cache@v2 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-pip-${{ hashFiles('requirements-dev.txt') }} + restore-keys: | + ${{ runner.os }}-pip- + ${{ runner.os }}- + + - name: Generate coverage report + run: | + pip install pytest + pip install pytest-cov + export PYTHONPATH=. + pytest --cov=./teachpyx/ --cov-report=xml --durations=10 --ignore-glob=**LONG*.py --ignore-glob=**notebook*.py + export PYTHONPATH= + + - name: Upload coverage reports to Codecov + uses: codecov/codecov-action@v3 + env: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} + + - name: Install + run: python setup.py install + + - name: Copy license + run: cp LICENSE* ./_doc + - name: Copy changelogs + run: cp CHANGELOGS* ./_doc + + - name: Documentation + run: python -m sphinx ./_doc ./dist/html -n -w doc.txt + + - name: Summary + run: cat doc.txt + + - name: Check for errors and warnings + run: | + if [[ $(grep ERROR doc.txt) ]]; then + echo "Documentation produces errors." + grep ERROR doc.txt + exit 1 + fi + if [[ $(grep WARNING doc.txt) ]]; then + echo "Documentation produces warnings." + grep WARNING doc.txt + exit 1 + fi + + - uses: actions/upload-artifact@v3 + with: + path: ./dist/html/** diff --git a/.github/workflows/rstcheck.yml b/.github/workflows/rstcheck.yml new file mode 100644 index 00000000..9642e5dd --- /dev/null +++ b/.github/workflows/rstcheck.yml @@ -0,0 +1,27 @@ +name: RST Check + +on: [push, pull_request] + +jobs: + build_wheels: + name: rstcheck ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest] + + steps: + - uses: actions/checkout@v3 + + - uses: actions/setup-python@v4 + with: + python-version: '3.11' + + - name: Install requirements + run: python -m pip install -r requirements.txt + + - name: Install rstcheck + run: python -m pip install sphinx tomli rstcheck[toml,sphinx] + + - name: rstcheck + run: rstcheck -r _doc teachpyx diff --git a/.github/workflows/wheels-any.yml b/.github/workflows/wheels-any.yml new file mode 100644 index 00000000..67fa88c0 --- /dev/null +++ b/.github/workflows/wheels-any.yml @@ -0,0 +1,29 @@ +name: Build Any Wheel + +on: + push: + branches: + - main + - 'releases/**' + +jobs: + build_wheels: + name: Build wheels on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest] + + steps: + - uses: actions/checkout@v3 + + - uses: actions/setup-python@v4 + with: + python-version: '3.11' + + - name: build wheel + run: python -m pip wheel . + + - uses: actions/upload-artifact@v3 + with: + path: ./teachpyx*.whl diff --git a/_doc/conf.py b/_doc/conf.py index 2e33cae5..f34de341 100644 --- a/_doc/conf.py +++ b/_doc/conf.py @@ -1,10 +1,11 @@ # -*- coding: utf-8 -*- -import sys import os -from sphinx_runpython.github_link import make_linkcode_resolve +import sys + from sphinx_runpython.conf_helper import has_dvipng, has_dvisvgm -from teachpyx import __version__ +from sphinx_runpython.github_link import make_linkcode_resolve +from teachpyx import __version__ extensions = [ "nbsphinx", diff --git a/_doc/examples/plot_float_and_double_rouding.py b/_doc/examples/plot_float_and_double_rouding.py new file mode 100644 index 00000000..8d35541f --- /dev/null +++ b/_doc/examples/plot_float_and_double_rouding.py @@ -0,0 +1,279 @@ +# coding: utf-8 +""" +================ +Float Conversion +================ + +I came up with the following question +:math:`(float64)x < (float64)y \Longrightarrow (float32) x < (float32)y`? +What is the probability this holds? + +Probability (float64)x == (float32)x +==================================== + +Let's evaluate how many time we draw a random double +number equal to its float conversion. +""" + +import random +import numpy +import pandas +import matplotlib.pyplot as plt + + +rnd = numpy.random.random(100000000) +rnd.shape, rnd.dtype + +###################################### +# + +rnd32 = rnd.astype(numpy.float32).astype(numpy.float64) +equal = (rnd == rnd32).sum() +equal + + +###################################### +# It is very low. Let's check the reverse is true. + + +rnd32b = rnd32.astype(numpy.float64).astype(numpy.float32) +equal = (rnd32b == rnd32).sum() +equal + + +###################################### +# Let's study the distribution of the difference. + + +delta = rnd - rnd32 +numpy.min(delta), numpy.max(delta) + + +###################################### +# + +numpy.min(rnd), numpy.max(rnd) + + +###################################### +# + + +plt.hist(delta, bins=1000) + + +###################################### +# We finally check that double operations between float numpers remain floats. + + +for i in range(0, 100000): + i, j = random.randint(0, len(rnd32) - 1), random.randint(0, len(rnd32) - 1) + d32 = numpy.float64(rnd32[i] * rnd32[j]) + d64 = numpy.float64(rnd32[i]) * numpy.float64(rnd32[j]) + if d32 != d64: + raise Exception( + "Issue with somme={0} = {1} + {2}".format( + rnd32[i] + rnd32[j], rnd32[i], rnd32[j] + ) + ) + + +###################################### +# Interval length distribution +# ============================ +# +# Let's imagine now we want to define an intervalle in which a +# double is converted to the same float. Let's find out about it length. + + +def find_interval(x): + dx = numpy.abs(x - numpy.float32(x)) # usually not zero + dx /= 100 + f = numpy.float32(x) + x1 = x + while numpy.float32(x1) == f: + x1 -= dx + x2 = x + while numpy.float32(x2) == f: + x2 += dx + return x1 + dx, x2 - dx + + +length = numpy.zeros((2000,)) +for i in range(length.shape[0]): + x = rnd[i] + x1, x2 = find_interval(x) + length[i] = x2 - x1 + +min(length), max(length) + + +###################################### + +plt.hist(length, bins=50) + + +###################################### +# So we can approximate this interval by something like this: + + +ql = numpy.sort(length)[int(length.shape[0] * 0.8)] +ql + + +###################################### +# An answer to the initial question +# ================================= +# +# Let's estimate +# :math:`\mathbb{P}\left(x_{64} < y_{64} \Longrightarrow x_{32} +# < y_{32} \; | \; |x-y| \leqslant d\right)` ? + + +def inf_strict(x, y): + f1 = x < y + f2 = numpy.float32(x) < numpy.float32(y) + return f1, f2 + + +def count_events(fct): + rows = [] + for di in range(1, 1001): + d = di * ql / 100 + total = 0 + ok = 0 + rnd = numpy.random.random((2000 * 3,)) + for i in range(0, rnd.shape[0], 3): + s = -1 if rnd[i + 2] < 0.5 else 1 + x, y = rnd[i], rnd[i] + rnd[i + 1] * d * s + f1, f2 = fct(x, y) + if f1: + total += 1 + if f2: + ok += 1 + if (di + 10) % 100 == 0: + print(di, d, ":", ok, total) + rows.append(dict(d=d, ratio=ok * 1.0 / total, total=total)) + + return pandas.DataFrame(rows) + + +df = count_events(inf_strict) +df.head() + + +###################################### + +df.plot(x="d", y="ratio") + + +###################################### + +df.plot(x="d", y="ratio", logx=True) + + +###################################### +# An answer to a similar question: what about not strict comparison? +# ================================================================== +# +# Let's estimate +# :math:`\mathbb{P}\left(x_{64} \leqslant y_{64} \Longrightarrow x_{32} +# \leqslant y_{32} \; | \; |x-y| \leqslant d\right)` ? + + +def inf_equal(x, y): + f1 = x <= y + f2 = numpy.float32(x) <= numpy.float32(y) + return f1, f2 + + +df2 = count_events(inf_equal) +df2.head() + + +###################################### +# + +ax = df.plot(x="d", y="ratio", logx=True, label="<") +df2.plot(x="d", y="ratio", logx=True, label="<=", ax=ax) + + +###################################### +# + + +def sup_strict(x, y): + f1 = x > y + f2 = numpy.float32(x) > numpy.float32(y) + return f1, f2 + + +df3 = count_events(sup_strict) +df3.head() + + +###################################### +# + +ax = df.plot(x="d", y="ratio", logx=True, label="<") +df2.plot(x="d", y="ratio", logx=True, label="<=", ax=ax) +df3.plot(x="d", y="ratio", logx=True, label=">", ax=ax) + + +###################################### +# + + +def sup_equal(x, y): + f1 = x >= y + f2 = numpy.float32(x) >= numpy.float32(y) + return f1, f2 + + +df4 = count_events(sup_equal) +df4.head() + + +###################################### +# + +ax = df.plot(x="d", y="ratio", logx=True, label="<") +df2.plot(x="d", y="ratio", logx=True, label="<=", ax=ax) +df3.plot(x="d", y="ratio", logx=True, label=">", ax=ax) +df4.plot(x="d", y="ratio", logx=True, label=">=", ax=ax) + + +###################################### +# + + +def inf_strict_neg(x, y): + f1 = (-x) >= (-y) + f2 = (-numpy.float32(x)) >= (-numpy.float32(y)) + return f1, f2 + + +dfn = count_events(inf_strict_neg) +dfn.head() + + +###################################### +# + +ax = df.plot(x="d", y="ratio", logx=True, label="<") +dfn.plot(x="d", y="ratio", logx=True, label="-1 x >=", ax=ax) + + +###################################### +# Conclusion +# ========== +# +# The result is expected. As soon as two float are rounded to the same value, +# the strict inequality no longer holds. However, if you need to write a +# code which has to handle double and float (in a template for example), +# you should use not strict inequalities. It is easier to compare the results +# but you should read some article like `Is < faster than <=? +# `_. +# According to +# `Processing costs of non-strict versus strict comparison +# `_, ``<`` is 5-10% faster than ``<=``. diff --git a/_doc/examples/plot_gil_example.py b/_doc/examples/plot_gil_example.py new file mode 100644 index 00000000..7b22b49e --- /dev/null +++ b/_doc/examples/plot_gil_example.py @@ -0,0 +1,83 @@ +# coding: utf-8 +""" +====== +Le GIL +====== + +Le GIL ou `Global Interpreter Lock `_ +est un verrou unique auquel l'interpréteur Python fait appel constamment +pour protéger tous les objets qu'il manipule contre des accès concurrentiels. + +Deux listes en parallel +======================= + +On mesure le temps nécessaire pour créer deux liste et comparer ce +temps avec celui que cela prendrait en parallèle. +""" +import timeit +import time +from concurrent.futures import ThreadPoolExecutor + + +def create_list(n): + res = [] + for i in range(n): + res.append(i) + return res + + +timeit.timeit("create_list(100000)") + +###################################### +# En parallèle avec le module `concurrent.futures +# `_ +# et deux appels à la même fonction. + + +def run2(nb): + with ThreadPoolExecutor(max_workers=2) as executor: + for res in executor.map(create_list, [nb, nb + 1]): + pass + + +timeit.timeit("run2(100000)") + + +###################################### +# C'est plus long que si les calculs étaient lancés les uns après les autres. +# Ce temps est perdu à synchroniser les deux threads bien que les +# deux boucles n'aient rien à échanger. Chaque thread passe son +# temps à attendre que l'autre ait terminé de mettre à jour sa +# liste et le *GIL* impose que ces mises à jour aient lieu une après l'autre. +# +# Un autre scénario +# ================= +# +# Au lieu de mettre à jour une liste, on va lancer un thread +# qui ne fait rien qu'attendre. Donc le *GIL* n'est pas impliqué. + + +def attendre(t=0.009): + time.sleep(t) + return None + + +timeit.timeit("attendre()") + + +###################################### +# + + +def run3(t): + with ThreadPoolExecutor(max_workers=2) as executor: + for res in executor.map(attendre, [t, t + 0.001]): + pass + + +timeit.timeit("run3(0.009)") + + +###################################### +# Les deux attentes se font en parallèle car le temps moyen est +# significativement inférieur à la somme des deux attentes. diff --git a/_doc/examples/plot_hypercube.py b/_doc/examples/plot_hypercube.py new file mode 100644 index 00000000..73762548 --- /dev/null +++ b/_doc/examples/plot_hypercube.py @@ -0,0 +1,382 @@ +# coding: utf-8 +""" +============================= +Hypercube et autres exercices +============================= + +Exercices autour de tableaux en plusieurs dimensions et autres exercices. + +Q1 - triple récursivité +======================= + +Réécrire la fonction ``u`` de façon à ce qu'elle ne soit plus récurrente. +""" + + +def u(n): + if n <= 2: + return 1 + else: + return u(n - 1) + u(n - 2) + u(n - 3) + + +u(5) + +###################################### +# Le problème de cette écriture est que la fonction est triplement +# récursive et que son coût est aussi grand que la fonction elle-même. Vérifions. + + +compteur = [] + + +def u_st(n): + global compteur + compteur.append(n) + if n <= 2: + return 1 + else: + return u_st(n - 1) + u_st(n - 2) + u_st(n - 3) + + +u_st(5), compteur + + +###################################### +# La seconde liste retourne tous les *n* pour lesquels la fonction +# ``u_st`` a été appelée. + + +def u_non_recursif(n): + if n <= 2: + return 1 + u0 = 1 + u1 = 1 + u2 = 1 + i = 3 + while i <= n: + u = u0 + u1 + u2 + u0 = u1 + u1 = u2 + u2 = u + i += 1 + return u + + +u_non_recursif(5) + + +###################################### +# Q2 - comparaison de listes +# ========================== +# +# On considère deux listes d'entiers. La première est inférieure à la seconde +# si l'une des deux conditions suivantes est vérifiée : +# +# * les *n* premiers nombres sont égaux mais la première liste ne contient que +# *n* éléments tandis que la seconde est plus longue, +# * les *n* premiers nombres sont égaux mais que le :math:`n+1^{\text{ème}}` de la +# première liste est inférieur au :math:`n+1^{\text{ème}}` de la seconde liste +# +# Par conséquent, si *l* est la longueur de la liste la plus courte, +# comparer ces deux listes d'entiers revient à parcourir tous les indices +# depuis 0 jusqu'à *l* exclu et à s'arrêter sur la première différence qui +# détermine le résultat. S'il n'y pas de différence, alors la liste la +# plus courte est la première. Il faut écrire une fonction +# ``compare_liste(p,q)`` qui implémente cet algorithme. + + +def compare_liste(p, q): + i = 0 + while i < len(p) and i < len(q): + if p[i] < q[i]: + return -1 # on peut décider + elif p[i] > q[i]: + return 1 # on peut décider + i += 1 # on ne peut pas décider + # fin de la boucle, il faut décider à partir des longueurs des listes + if len(p) < len(q): + return -1 + elif len(p) > len(q): + return 1 + else: + return 0 + + +compare_liste([0, 1], [0, 1, 2]) + + +###################################### +# + +compare_liste([0, 1, 3], [0, 1, 2]) + + +###################################### +# + +compare_liste([0, 1, 2], [0, 1, 2]) + + +###################################### +# + +compare_liste([0, 1, 2, 4], [0, 1, 2]) + + +###################################### +# Q3 - précision des calculs +# ========================== +# +# On cherche à calculer la somme des termes d'une suite géométriques +# de raison :math:`\frac{1}{2}`. On définit :math:`r=\frac{1}{2}`, on cherche donc +# à calculer :math:`\sum_{i=0}^{\infty} r^i` qui une somme convergente mais infinie. +# Le programme suivant permet d'en calculer une valeur approchée. +# Il retourne, outre le résultat, le nombre d'itérations +# qui ont permis d'estimer le résultat. + + +def suite_geometrique_1(r): + x = 1.0 + y = 0.0 + n = 0 + while x > 0: + y += x + x *= r + n += 1 + return y, n + + +print(suite_geometrique_1(0.5)) + + +###################################### +# Un informaticien plus expérimenté a écrit le programme suivant qui +# retourne le même résultat mais avec un nombre d'itérations beaucoup plus petit. + + +def suite_geometrique_2(r): + x = 1.0 + y = 0.0 + n = 0 + yold = y + 1 + while abs(yold - y) > 0: + yold = y + y += x + x *= r + n += 1 + return y, n + + +print(suite_geometrique_2(0.5)) + + +###################################### +# Expliquez pourquoi le second programme est plus rapide tout en +# retournant le même résultat. Repère numérique : :math:`2^{-55} \sim 2,8.10^{-17}`. +# +# Tout d'abord le second programme est plus rapide car il effectue moins +# d'itérations, 55 au lieu de 1075. Maintenant, il s'agit de savoir pourquoi +# le second programme retourne le même résultat que le premier mais plus +# rapidement. L'ordinateur ne peut pas calculer numériquement une somme infinie, +# il s'agit toujours d'une valeur approchée. L'approximation dépend de la +# précision des calculs, environ 14 chiffres pour *python*. Dans le premier programme, +# on s'arrête lorsque :math:`r^n` devient nul, autrement dit, on +# s'arrête lorsque *x* est si petit que *python* ne peut plus le +# représenter autrement que par 0, +# c'est-à-dire qu'il n'est pas possible de représenter un nombre dans l'intervalle +# :math:`[0,2^{-1055}]`. +# +# Toutefois, il n'est pas indispensable d'aller aussi loin car +# l'ordinateur n'est de toute façon pas capable d'ajouter un nombre +# aussi petit à un nombre plus grand que 1. Par exemple, +# :math:`1 + 10^{17} = 1,000\, 000\, 000\, 000\, 000\, 01`. +# Comme la précision des calculs n'est que de 15 chiffres, +# pour *python*, :math:`1 + 10^{17} = 1`. +# Le second programme s'inspire de cette remarque : le calcul s'arrête +# lorsque le résultat de la somme n'évolue plus car il additionne des +# nombres trop petits à un nombre trop grand. L'idée est donc de comparer +# la somme d'une itération à l'autre et de s'arrêter lorsqu'elle n'évolue plus. +# +# Ce raisonnement n'est pas toujours applicable. Il est valide dans ce cas +# car la série :math:`s_n = \sum_{i=0}^{n} r^i` est croissante et positive. +# Il est valide pour une série convergente de la forme :math:`s_n = \sum_{i=0}^{n} u_i` +# et une suite $u_n$ de module décroissant. +# +# Q4 - hypercube +# ============== +# +# Un chercheur cherche à vérifier qu'une suite de 0 et de 1 est aléatoire. +# Pour cela, il souhaite compter le nombre de séquences de *n* nombres successifs. +# Par exemple, pour la suite 01100111 et :math:`n=3`, les triplets sont +# 011, 110, 100, 001, 011, 111. Le triplet 011 apparaît deux fois, +# les autres une fois. Si la suite est aléatoire, les occurrences de chaque +# triplet sont en nombres équivalents. + + +def hyper_cube_liste(n, m=None): + if m is None: + m = [0, 0] + if n > 1: + m[0] = [0, 0] + m[1] = [0, 0] + m[0] = hyper_cube_liste(n - 1, m[0]) + m[1] = hyper_cube_liste(n - 1, m[1]) + return m + + +hyper_cube_liste(3) + + +###################################### +# La seconde à base de dictionnaire (plus facile à manipuler) : + + +def hyper_cube_dico(n): + r = {} + ind = [0 for i in range(0, n)] + while ind[0] <= 1: + cle = tuple(ind) # conversion d'une liste en tuple + r[cle] = 0 + ind[-1] += 1 + k = len(ind) - 1 + while ind[k] == 2 and k > 0: + ind[k] = 0 + ind[k - 1] += 1 + k -= 1 + return r + + +hyper_cube_dico(3) + + +###################################### +# Le chercheur a commencé à écrire son programme : + + +def occurrence(li, n): + # d = ....... # choix d'un hyper_cube (n) + # ..... + # return d + pass + + +suite = [0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1] +h = occurrence(suite, 3) +h + + +###################################### +# Sur quelle structure se porte votre choix (a priori celle avec dictionnaire), +# compléter la fonction ``occurrence``. + + +def occurrence(tu, n): + d = hyper_cube_dico(n) + for i in range(0, len(tu) - n): + cle = tu[i : i + n] + d[cle] += 1 + return d + + +occurrence((1, 0, 1, 1, 0, 1, 0), 3) + + +###################################### +# Il est même possible de se passer de la fonction ``hyper_cube_dico`` : + + +def occurrence2(tu, n): + d = {} + for i in range(0, len(tu) - n): + cle = tu[i : i + n] + if cle not in d: + d[cle] = 0 + d[cle] += 1 + return d + + +occurrence2((1, 0, 1, 1, 0, 1, 0), 3) + + +###################################### +# La seule différence apparaît lorsqu'un n-uplet n'apparaît pas dans +# la liste. Avec la fonction ``hyper_cube_dico``, ce n-uplet recevra la +# fréquence 0, sans cette fonction, ce n-uplet ne sera pas présent +# dans le dictionnaire ``d``. Le même programme avec la structure matricielle +# est plus une curiosité qu'un cas utile. + + +def occurrence3(li, n): + d = hyper_cube_liste(n) + for i in range(0, len(li) - n): + cle = li[i : i + n] + t = d # + for k in range(0, n - 1): # point clé de la fonction : + t = t[cle[k]] # accès à un élément + t[cle[n - 1]] += 1 + return d + + +occurrence3((1, 0, 1, 1, 0, 1, 0), 3) + + +###################################### +# Une autre écriture... + + +def hyper_cube_liste2(n, m=[0, 0], m2=[0, 0]): + if n > 1: + m[0] = list(m2) + m[1] = list(m2) + m[0] = hyper_cube_liste2(n - 1, m[0]) + m[1] = hyper_cube_liste2(n - 1, m[1]) + return m + + +def occurrence4(li, n): + d = hyper_cube_liste2(n) # * remarque voir plus bas + for i in range(0, len(li) - n): + cle = li[i : i + n] + t = d # + for k in range(0, n - 1): # point clé de la fonction : + t = t[cle[k]] # accès à un élément + t[cle[n - 1]] += 1 + return d + + +occurrence4((1, 0, 1, 1, 0, 1, 0), 3) + + +###################################### +# Et si on remplace ``list(m2)`` par ``m2``. + + +def hyper_cube_liste3(n, m=[0, 0], m2=[0, 0]): + if n > 1: + m[0] = m2 + m[1] = m2 + m[0] = hyper_cube_liste3(n - 1, m[0]) + m[1] = hyper_cube_liste3(n - 1, m[1]) + return m + + +def occurrence5(li, n): + d = hyper_cube_liste3(n) # * remarque voir plus bas + for i in range(0, len(li) - n): + cle = li[i : i + n] + t = d # + for k in range(0, n - 1): # point clé de la fonction : + t = t[cle[k]] # accès à un élément + t[cle[n - 1]] += 1 + return d + + +try: + occurrence5((1, 0, 1, 1, 0, 1, 0), 3) +except Exception as e: + print(e) + + +###################################### +# Intéressant... diff --git a/_doc/examples/lambda_function.py b/_doc/examples/plot_lambda_function.py similarity index 98% rename from _doc/examples/lambda_function.py rename to _doc/examples/plot_lambda_function.py index 74114529..5f53deb8 100644 --- a/_doc/examples/lambda_function.py +++ b/_doc/examples/plot_lambda_function.py @@ -1,4 +1,4 @@ -# -*- coding: utf-8 -*- +# coding: utf-8 """ Astuces avec les lambda functions ================================= diff --git a/_doc/examples/plot_numpy_tricks.py b/_doc/examples/plot_numpy_tricks.py new file mode 100644 index 00000000..4354b261 --- /dev/null +++ b/_doc/examples/plot_numpy_tricks.py @@ -0,0 +1,48 @@ +# coding: utf-8 +""" +================================== +Points d'implémentation avec numpy +================================== + +Quelques écritures efficaces et non efficaces avec :epkg:`numpy`. + +accéder à un élément en particulier +=================================== +""" +import timeit + +import numpy + +mat = numpy.zeros((5, 5)) +for i in range(mat.shape[0]): + for j in range(mat.shape[1]): + mat[i, j] = i * 10 + j +mat + + +######################################## +# + + +mat[2, 3], mat[2][3] + + +######################################## +# + +timeit.timeit("mat[2, 3]") + + +######################################## +# + +timeit.timeit("mat[2][3]") + + +######################################## +# Les deux écritures ont l'air identique puisqu'elle retourne le même résultat. +# Néanmoins, ``mat[2][3]`` crée un tableau temporaire puis extrait un élément. +# Les éléments ne sont pas recopiés mais un objet intermédiaire est créé. + + +mat[2] diff --git a/_doc/examples/plot_pandas_groupby.py b/_doc/examples/plot_pandas_groupby.py new file mode 100644 index 00000000..9e6174ad --- /dev/null +++ b/_doc/examples/plot_pandas_groupby.py @@ -0,0 +1,50 @@ +# coding: utf-8 +""" +================= +Pandas et groupby +================= + +Petit tour de passe passe autour d'un :meth:`pandas.DataFrame.groupby` +et des valeurs manquantes qui ne sont plus prises en compte +depuis les dernières versions. + +groupby et valeur manquantes +============================ +""" + + +import pandas +from pandas_streaming.df import pandas_groupby_nan + + +data = [{"a": 1, "b": 2}, {"a": 10, "b": 20}, {"b": 3}, {"b": 4}] +df = pandas.DataFrame(data) +df + + +######################################## +# + +df.groupby("a").sum() + + +######################################## +# Les valeurs manquantes ont disparu et c'est le comportement attendu +# d'après `groupby and missing values +# `_. +# Il est possible de ocrriger le tir avec la fonction implémenté dans ce module. + + +pandas_groupby_nan(df, "a").sum() + + +######################################## +# L'astuce consiste à remplacer les valeurs manquantes par +# d'autres non utilisées dans le dataframe, +# à grouper, puis à leur redonner leur valeurs initiales. +# Le code de la fonction n'est pas très propre car il modifie des +# variables que l'utilisateur n'est pas censé modifier. +# Il est possible que la fonction "casse" pour des versions ultérieures. +# Le `code `_ +# utilise quelques variables non documentation du module :epkg:`pandas`. diff --git a/_doc/examples/plot_partie_dame.py b/_doc/examples/plot_partie_dame.py new file mode 100644 index 00000000..bec48d78 --- /dev/null +++ b/_doc/examples/plot_partie_dame.py @@ -0,0 +1,263 @@ +# coding: utf-8 +""" +================ +Parties de dames +================ + +Exercice de programmation sur les tableaux. + +Q1 +== + +Une partie de dames met en jeu quarante pions, vingt noirs, vingt blancs, +chacun sur des cases différentes. L'objectif est de savoir si un pion est +en mesure d'en prendre un autre. On ne traitera pas le cas des dames. +Chaque pion est défini par : + +* deux coordonnées entières, chacune comprise entre 1 et 10 +* une couleur, noir ou blanc + +On propose deux représentations de l'ensemble de pions : + +* Un tableau de 40 pions indicés de 0 à 39 inclus, chaque pion étant défini par : + * deux coordonnées comprises entre 1 et 10, ou (0,0) + si le pion n'est plus sur le damier + * un entier qui vaut 1 pour blanc, 2 pour noir +* Un tableau d'entiers à deux dimensions, chaque case contient : + * soit 0 s'il n'y a pas de pion + * soit 1 si la case contient un pion blanc + * soit 2 si la case contient un pion noir + +Y a-t-il d'autres représentations de ces informations ? Si on considère +que l'efficacité d'une méthode est reliée à sa vitesse - autrement dit aux +coûts des algorithmes qu'elles utilisent -, parmi ces deux représentations, +quelle est celle qui semble la plus efficace pour savoir si un pion donné +du damier est en mesure d'en prendre un autre ? + +**réponse** + +La seconde représentation sous forme de tableau à deux dimensions est +plus pratique pour effectuer les tests de voisinages. Chaque case a +quatre voisines aux quatre coins, il est ensuite facile de déterminer +si ces quatre voisines sont libres ou si elles contiennent un pion. +On sait rapidement le contenu d'une case. + +Avec la première représentation - le tableau des pions - pour savoir +s'il existe un pion dans une case voisine, il faut passer en revue +tous les pions pour savoir si l'un d'eux occupe ou non cette case. +Avec la seconde représentation - le tableau à deux dimensions - +on accède directement à cette information sans avoir à la rechercher. +On évite une boucle sur les pions avec la seconde représentation. + +Q2 +== + +Comment représenter un tableau d'entiers à deux dimensions en +langage python à l'aide des types standards qu'il propose, +à savoir t-uple, liste ou dictionnaire ? + +**réponse** + +Pour représenter le tableau en deux dimensions, il existe trois solutions : + +* Une liste de listes, chaque ligne est représentée par une liste. + Toutes ces listes sont elles-mêmes assemblées dans une liste globale. +* Une seule liste, il suffit de numéroter les cases du damier de 0 à 99, + en utilisant comme indice pour la case :math:`(i,j)` : :math:`k = 10*i+j`. + Réciproquement, la case d'indice $k$ aura pour coordonnées + :math:`(k / 10, \, k \% 10)`. +* Un dictionnaire dont la clé est un couple d'entiers. + +Q3 +== + +On cherche à écrire l'algorithme qui permet de savoir si un pion donné +est un mesure de prendre un pion. Quels sont les paramètres +d'entrées et les résultats de cet algorithme ? + +**réponse** + +On désire savoir si le pion de la case :math:`(i,j)` +peut en prendre un autre. On suppose que le tableau à deux dimensions +est une liste de dix listes appelée ``damier``. ``damier[i][j]`` +est donc la couleur du pion de la case :math:`(i,j)`, +à savoir 0 si la case est vide, 1 si le pion est blanc, 2 si le pion est noir. +Pour ces deux derniers cas, la couleur des pions de l'adversaire sera donc +``3 - damier[i][j]``. Les entrées de la fonctions sont donc les indices +``i``, ``j`` et le damier ``damier``. La sortie est une variable booléenne qui +indique la possibilité ou non de prendre. On ne souhaite pas déplacer les pions. + +Q4 +== + +Il ne reste plus qu'à écrire cet algorithme. +""" + + +def pion_prendre(i, j, damier): + c = damier[i][j] + if c == 0: + return False # case vide, impossible de prendre + c = 3 - c # couleur de l'adversaire + + if damier[i - 1][j - 1] == c: # s'il y a un pion adverse en haut à gauche + if damier[i - 2][j - 2] == 0: # si la case d'après en diagonale est vide + return True # on peut prendre + + # on répète ce test pour les trois autres cases + if damier[i - 1][j + 1] == c and damier[i - 2][j + 2] == 0: + return True + if damier[i + 1][j - 1] == c and damier[i + 2][j - 2] == 0: + return True + if damier[i + 1][j + 1] == c and damier[i + 2][j + 2] == 0: + return True + + # si tous les tests ont échoué, on ne peut pas prendre + return False + + +damier = [ + [0, 0, 1, 0, 0], + [0, 1, 0, 1, 0], + [0, 0, 2, 0, 2], + [0, 0, 0, 2, 0], + [0, 0, 0, 0, 0], +] + +pion_prendre(2, 2, damier) + + +######################################## +# Voici une fonction équivalente lorsque le damier est un dictionnaire +# dont la clé est un couple d'entiers. + + +def pion_prendre_dict(i, j, damier): + c = damier[(i, j)] # ou encore damier [i,j] + if c == 0: + return False # case vide, impossible de prendre + c = 3 - c # couleur de l'adversaire + + # test pour une prise du pion dans les quatre cases voisines + if damier[i - 1, j - 1] == c and damier[i - 2, j - 2] == 0: + return True + if damier[i - 1, j + 1] == c and damier[i - 2, j + 2] == 0: + return True + if damier[i + 1, j - 1] == c and damier[i + 2, j - 2] == 0: + return True + if damier[i + 1, j + 1] == c and damier[i + 2, j + 2] == 0: + return True + + # si tous les tests ont échoué, on ne peut pas prendre + return False + + +damier_dict = {(i, j): damier[i][j] for i in range(4) for j in range(4)} + +print(damier_dict) + +pion_prendre_dict(2, 2, damier_dict) + + +######################################### +# + +try: + pion_prendre_dict(1, 3, damier_dict) +except Exception as e: + print(e) + + +############################################## +# Cela ne marche pas très bien, cela laisse supposer que la fonction +# précédente n'est pas très fonctionnelle non plus. Il manque le fait de +# vérifier que les coordonnées testées restent dans l'échiquier. +# La même fonction lorsque le damier est représenté par une seule liste. + + +def pion_prendre_list(i, j, damier): + n = int(len(damier) ** 0.5) # on suppose que le damier est carré + c = damier[n * i + j] + if c == 0: + return False # case vide, impossible de prendre + c = 3 - c # couleur de l'adversaire + + # test pour une prise du pion dans les quatre cases voisines + if damier[n * (i - 1) + j - 1] == c and damier[n * (i - 2) + j - 2] == 0: + return True + if damier[n * (i - 1) + j + 1] == c and damier[n * (i - 2) + j + 2] == 0: + return True + if damier[n * (i + 1) + j - 1] == c and damier[n * (i + 2) + j - 2] == 0: + return True + if damier[n * (i + 1) + j + 1] == c and damier[n * (i + 2) + j + 2] == 0: + return True + + return False + + +damier_list = [] +for row in damier: + damier_list.extend(row) + +print(damier_list) + +pion_prendre_list(2, 2, damier_list) + +########################################### +# Pour ces trois cas, aucun effet de bord n'a été envisagé. +# Si la case est trop près d'un des bords, un des indices +# :math:`i,\;j,\;i-1,\;j-1,\;i+1,\;j+1,\;i-2,\;j-2,\;i+2,\;j+2` +# désignera une case hors du damier. Le code de la fonction +# ``pion_prendre`` devra donc vérifier que chaque case dont elle +# vérifie le contenu appartient au damier. + + +def pion_prendre_bord(i, j, damier): + c = damier[i][j] + if c == 0: + return False # case vide, impossible de prendre + c = 3 - c # couleur de l'adversaire + + # on répète ce test pour les trois autres cases + if i >= 2 and j >= 2 and damier[i - 1][j - 1] == c and damier[i - 2][j - 2] == 0: + return True + if ( + i >= 2 + and j < len(damier) - 2 + and damier[i - 1][j + 1] == c + and damier[i - 2][j + 2] == 0 + ): + return True + + if ( + i < len(damier) - 2 + and j >= 2 + and damier[i + 1][j - 1] == c + and damier[i + 2][j - 2] == 0 + ): + return True + + if ( + i < len(damier) - 2 + and j < len(damier) - 2 + and damier[i + 1][j + 1] == c + and damier[i + 2][j + 2] == 0 + ): + return True + + return False + + +pion_prendre_bord(2, 2, damier) + + +######################################### +# + +pion_prendre_bord(1, 3, damier) + + +######################################### +# La fonction ``pion_prendre(1, 3, damier)`` fonctionne parce que le +# langage python accepte indices négatifs : ``damier[-1][-1]`` +# mais le résultat n'est pas nécessairement celui souhaité. diff --git a/_doc/examples/plot_serialisation_examples.py b/_doc/examples/plot_serialisation_examples.py new file mode 100644 index 00000000..9d7d14b1 --- /dev/null +++ b/_doc/examples/plot_serialisation_examples.py @@ -0,0 +1,518 @@ +# coding: utf-8 +""" +============= +Sérialisation +============= + +Le notebook explore différentes façons de sérialiser des données et leurs limites. + +JSON +==== + +Le format :epkg:`JSON` est le format le plus utilisé sur internet +notemmant via les :epkg:`API REST`. + +Ecriture +++++++++ +""" +from io import StringIO, BytesIO +import timeit +import json +import numpy +import ujson +import cloudpickle +import pickle + + +data = { + "records": [ + { + "nom": "Xavier", + "prénom": "Xavier", + "langages": [{"nom": "C++", "age": 40}, {"nom": "Python", "age": 20}], + } + ] +} + + +######################################### +# + +buffer = StringIO() +res = json.dump(data, buffer) # 1 +seq = buffer.getvalue() +seq + + +######################################### +# Lecture +# +++++++ + + +buffer = StringIO(seq) +read = json.load(buffer) +read + + +######################################### +# Limite +# ++++++ +# +# Les matrices :epkg:`numpy` ne sont pas sérialisables facilement. + + +data = {"mat": numpy.array([0, 1])} + +buffer = StringIO() +try: + json.dump(data, buffer) +except Exception as e: + print(e) + + +######################################### +# Les classes ne sont pas sérialisables non plus facilement. + + +class A: + def __init__(self, att): + self.att = att + + +data = A("e") +buffer = StringIO() +try: + json.dump(data, buffer) +except Exception as e: + print(e) + + +######################################### +# Pour ce faire, il faut indiquer au module :mod:`json` +# comment convertir la classe en un ensemble de listes et dictionnaires et +# la classe :class:`json.JSONEncoder`. + + +class MyEncoder(json.JSONEncoder): + def default(self, o): + return {"classname": o.__class__.__name__, "data": o.__dict__} + + +data = A("e") +buffer = StringIO() +res = json.dump(data, buffer, cls=MyEncoder) +res = buffer.getvalue() +res + +######################################### +# Et la relecture avec la classe :class:`json.JSONDecoder`. + + +class MyDecoder(json.JSONDecoder): + def decode(self, o): + dec = json.JSONDecoder.decode(self, o) + if isinstance(dec, dict) and dec.get("classname") == "A": + return A(dec["data"]["att"]) + else: + return dec + + +buffer = StringIO(res) +obj = json.load(buffer, cls=MyDecoder) +obj + + +######################################### +# Sérialisation rapide +# ++++++++++++++++++++ +# +# Le module :mod:`json` est la librairie standard de Python mais comme +# la sérialisation au format *JSON* est un besoin très fréquent, +# il existe des alternative plus rapide comme :epkg:`ujson`. + + +data = { + "records": [ + { + "nom": "Xavier", + "prénom": "Xavier", + "langages": [{"nom": "C++", "age": 40}, {"nom": "Python", "age": 20}], + } + ] +} + + +######################################### +# + + +timeit.timeit("json.dump(data, StringIO())") + + +######################################### +# + + +timeit.timeit("ujson.udump(data, StringIO())") + + +######################################### +# Ces deux lignes mesures l'écriture au format JSON +# mais il faut aussi mesurer la lecture. + + +buffer = StringIO() +ujson.dump(data, buffer) +res = buffer.getvalue() +timeit.timeit("load(StringIO(res))") + + +######################################### +# + +timeit.timeit("ujson.load(StringIO(res))") + + +######################################### +# On enlève le temps passé dans la creation du buffer. + + +timeit.timeit("StringIO(res)") + + +######################################### +# Pickle +# ====== +# +# Le module :mod:`pickle` effectue la même chose mais au format binaire. +# Celui-ci est propre à *Python* et ne peut être lu d'autres langages, +# voire parfois par d'autres versions de *Python*. +# +# Ecriture +# ++++++++ + + +data = { + "records": [ + { + "nom": "Xavier", + "prénom": "Xavier", + "langages": [{"nom": "C++", "age": 40}, {"nom": "Python", "age": 20}], + } + ] +} + + +######################################### +# + + +buffer = BytesIO() +res = pickle.dump(data, buffer) +seq = buffer.getvalue() +seq + + +######################################### +# Lecture +# +++++++ + + +buffer = BytesIO(seq) +read = pickle.load(buffer) +read + + +######################################### +# Les classes +# +++++++++++ +# +# A l'inverse du format *JSON*, les classes sont sérialisables avec +# :mod:`pickle` parce que le langage utilise un format très proche +# de ce qu'il a en mémoire. Il n'a pas besoin de conversion supplémentaire. + + +data = A("r") +buffer = BytesIO() +res = pickle.dump(data, buffer) +seq = buffer.getvalue() +seq + + +######################################### +# + +buffer = BytesIO(seq) +read = pickle.load(buffer) +read + + +######################################### +# Réduire la taille +# +++++++++++++++++ +# +# Certaines informations sont duppliquées et il est préférable de ne pas +# les sérialiser deux fois surtout si elles sont voluminueuses. + + +class B: + def __init__(self, att): + self.att1 = att + self.att2 = att + + +######################################### +# + +data = B("r") +buffer = BytesIO() +res = pickle.dump(data, buffer) +seq = buffer.getvalue() +seq + + +######################################### +# Evitons maintenant de stocker deux fois le même attribut. + + +class B: + def __init__(self, att): + self.att1 = att + self.att2 = att + + def __getstate__(self): + return dict(att=self.att1) + + +data = B("r") +buffer = BytesIO() +res = pickle.dump(data, buffer) +seq = buffer.getvalue() +seq + + +######################################### +# C'est plus court mais il faut inclure maintenant la relecture. + + +class B: + def __init__(self, att): + self.att1 = att + self.att2 = att + + def __getstate__(self): + return dict(att=self.att1) + + def __setstate__(self, state): + setattr(self, "att1", state["att"]) + setattr(self, "att2", state["att"]) + + +buffer = BytesIO(seq) +read = pickle.load(buffer) +read + + +######################################### +# + +read.att1, read.att2 + + +######################################### +# + +data = B("r") +timeit.timeit("pickle.dump(data, BytesIO())") + + +######################################### +# + +timeit.timeit("pickle.load(BytesIO(seq))") + + +######################################### +# La sérialisation binaire est habituellement plus rapide dans les langages +# bas niveau comme C++. La même comparaison pour un langage haut niveau +# tel que Python n'est pas toujours prévisible. +# Il est possible d'accélérer un peu les choses. + + +timeit.timeit("pickle.dump(data, BytesIO(), protocol=pickle.HIGHEST_PROTOCOL)") + + +######################################### +# Cas des fonctions +# ================= +# +# La sérialisation s'applique à des données et non à du code mais le +# fait de sérialiser des fonctions est tout de même tentant. +# La sérialisation binaire fonctionne même avec les fonctions. +# +# Binaire +# +++++++ + + +def myfunc(x): + return x + 1 + + +data = {"x": 5, "f": myfunc} + + +buffer = BytesIO() +res = pickle.dump(data, buffer) +buffer.getvalue() + + +######################################### +# + + +res = pickle.load(BytesIO(buffer.getvalue())) +res + + +######################################### +# + +res["f"](res["x"]) + + +######################################### +# La sérialisation ne conserve pas le code de la fonction, juste son nom. +# Cela veut dire que si elle n'est pas disponible lorsqu'elle est appelée, +# il sera impossible de s'en servir. + + +del myfunc + + +try: + pickle.load(BytesIO(buffer.getvalue())) +except Exception as e: + print(e) + + +######################################### +# Il est possible de contourner l'obstacle en utilisant le module +# :epkg:`cloudpicke` qui stocke le code de la fonction. + + +def myfunc(x): + return x + 1 + + +data = {"x": 5, "f": myfunc} + + +buffer = BytesIO() +res = cloudpickle.dump(data, buffer) +buffer.getvalue() + + +######################################### +# + +del myfunc + + +res = cloudpickle.load(BytesIO(buffer.getvalue())) +res + + +######################################### +# + +res["f"](res["x"]) + + +######################################### +# JSON +# ++++ +# +# La sérialisation au format JSON ne fonctionne pas avec le module standard. + + +buffer = StringIO() +try: + json.dump(data, buffer) # 2 +except Exception as e: + print(e) + + +######################################### +# La sérialisation avec :epkg:`ujson` ne fonctionne pas non plus +# même si elle ne produit pas toujours d'erreur. + + +buffer = StringIO() +try: + res = json.dump(data, buffer) # 3 +except TypeError as e: + print(e) +buffer.getvalue() + + +######################################### +# Cas des itérateurs +# ================== +# +# Les itérateurs fonctionnent avec la sérialisation binaire mais ceci +# implique de stocker l'ensemble que l'itérateur parcourt. + + +ens = [1, 2] + +data = {"x": 5, "it": iter(ens)} + + +buffer = BytesIO() +res = pickle.dump(data, buffer) # 4 +buffer.getvalue() + + +######################################### +# + +del ens + +res = pickle.load(BytesIO(buffer.getvalue())) +res + + +######################################### +# + +list(res["it"]) + + +######################################### +# + +list(res["it"]) + + +######################################### +# Cas des générateurs +# =================== +# +# Ils ne peuvent être sérialisés car le langage n'a pas accès à l'ensemble +# des éléments que le générateur parcourt. Il n'y a aucun moyen de +# sérialiser un générateur mais on peut sérialiser la fonction qui crée le générateur. + + +def ensgen(): + yield 1 + yield 2 + + +data = {"x": 5, "it": ensgen()} + + +buffer = BytesIO() +try: + pickle.dump(data, buffer) +except Exception as e: + print(e) diff --git a/_doc/examples/plot_serialisation_protobuf.py b/_doc/examples/plot_serialisation_protobuf.py new file mode 100644 index 00000000..e9a359bb --- /dev/null +++ b/_doc/examples/plot_serialisation_protobuf.py @@ -0,0 +1,261 @@ +# coding: utf-8 +""" +=========================== +Sérialisation avec protobuf +=========================== + +:epkg:`protobuf` optimise la sérialisation de deux façons. +Elle accélère l'écriture et la lecture des données et permet aussi +un accès rapide à une information précise dans désérialiser +les autres. Elle réalise cela en imposant un schéma strict de données. + +Schéma +====== + +On récupère l'exemple du `tutorial +`_. +""" +import os +import timeit +import struct +from io import BytesIO +from sphinx_runpython.runpython.loghelper import run_cmd +import google.protobuf as gp +from google.protobuf.json_format import MessageToJson, Parse as ParseJson + +schema = """ +syntax = "proto2"; + +package tutorial; + +message Person { + required string name = 1; + required int32 id = 2; + optional string email = 3; + + enum PhoneType { + MOBILE = 0; + HOME = 1; + WORK = 2; + } + + message PhoneNumber { + required string number = 1; + optional PhoneType type = 2 [default = HOME]; + } + + repeated PhoneNumber phones = 4; +} + +message AddressBook { + repeated Person people = 1; +} +""" + +###################################### +# Compilation +# =========== +# +# Il faut d'abord récupérer le compilateur. Cela peut se faire depuis +# le site de :epkg:`protobuf` ou sur Linux (Ubuntu/Debian) +# ``apt-get install protobuf-compiler`` pour obtenir le programme ``protoc``. + + +version = gp.__version__ +version + + +######################################### +# + + +with open("schema.proto", "w") as f: + f.write(schema) + + +# Et on peut compiler. + +# In[8]: + + +cmd = "protoc --python_out=. schema.proto" +out, err = run_cmd(cmd=cmd, wait=True) +print(out) +print(err) + + +######################################## +# Un fichier a été généré. + + +[_ for _ in os.listdir(".") if ".py" in _] + + +######################################## + + +with open("schema_pb2.py", "r") as f: + content = f.read() +print(content[:1000]) + + +######################################## +# Import du module créé +# ===================== +# +# Pour utliser *protobuf*, il faut importer le module créé. + + +import schema_pb2 # noqa: E402 + +######################################## +# On créé un enregistrement. + + +person = schema_pb2.Person() +person.id = 1234 +person.name = "John Doe" +person.email = "jdoe@example.com" +phone = person.phones.add() +phone.number = "555-4321" +phone.type = schema_pb2.Person.HOME + + +######################################## +# + +person + + +######################################## +# Sérialisation en chaîne de caractères +# ===================================== + + +res = person.SerializeToString() +type(res), res + + +######################################## +# + +timeit.timeit("person.SerializeToString()") + + +######################################## +# + +pers = schema_pb2.Person.FromString(res) +pers + + +######################################## +# + +pers = schema_pb2.Person() +pers.ParseFromString(res) +pers + + +######################################## +# + +timeit.timeit("schema_pb2.Person.FromString(res)") + + +######################################## +# + +timeit.timeit("pers.ParseFromString(res)") + + +######################################## +# Plusieurs chaînes de caractères +# =============================== + + +db = [] + +person = schema_pb2.Person() +person.id = 1234 +person.name = "John Doe" +person.email = "jdoe@example.com" +phone = person.phones.add() +phone.number = "555-4321" +phone.type = schema_pb2.Person.HOME +db.append(person) + +person = schema_pb2.Person() +person.id = 5678 +person.name = "Johnette Doette" +person.email = "jtdoet@example2.com" +phone = person.phones.add() +phone.number = "777-1234" +phone.type = schema_pb2.Person.MOBILE +db.append(person) + + +######################################## +# + + +buffer = BytesIO() +for p in db: + size = p.ByteSize() + buffer.write(struct.pack("i", size)) + buffer.write(p.SerializeToString()) +res = buffer.getvalue() +res + + +######################################## +# + + +db2 = [] +buffer = BytesIO(res) +n = 0 +while True: + bsize = buffer.read(4) + if len(bsize) == 0: + # C'est fini. + break + size = struct.unpack("i", bsize)[0] + data = buffer.read(size) + p = schema_pb2.Person.FromString(data) + db2.append(p) + + +######################################## +# + +db2[0], db2[1] + + +######################################## +# Sérialisation JSON +# ================== + + +print(MessageToJson(pers)) + + +######################################## +# + +timeit.timeit("MessageToJson(pers)") + + +######################################## +# + + +js = MessageToJson(pers) +res = ParseJson(js, message=schema_pb2.Person()) +res + + +######################################## +# + +timeit.timeit("ParseJson(js, message=schema_pb2.Person())") diff --git a/_doc/examples/plot_tarabiscote.py b/_doc/examples/plot_tarabiscote.py new file mode 100644 index 00000000..5f231c59 --- /dev/null +++ b/_doc/examples/plot_tarabiscote.py @@ -0,0 +1,453 @@ +# coding: utf-8 +""" +==================================== +Exercices expliqués de programmation +==================================== + +Quelques exercices autour de la copie de liste, du temps de calcul, de l'héritage. + +Copie de listes +=============== + +La fonction ``somme`` est censée faire la concaténation de toutes les +listes contenues dans ``ens``. Le résultat retourné est effectivement +celui désiré mais la fonction modifie également la liste ``ens``, pourquoi ? +""" +import math +import copy +import numpy + + +def somme(tab): + li = tab[0] + for i in range(1, len(tab)): + li += tab[i] + return li + + +ens = [[0, 1], [2, 3]] +print(somme(ens)) +print(ens) + + +######################################## +# Le problème vient du fait qu'une affectation en *python* +# (seconde ligne de la fonction ``somme`` ne fait pas une copie +# mais crée un second identificateur pour désigner la même chose. +# Ici, ``l`` et ``tab[0]`` désignent la même liste, modifier l'une +# modifie l'autre. Ceci explique le résultat. Pour corriger, +# il fallait faire une copie explicite de ``tab[0]`` : + + +def somme(tab): + li = copy.copy(tab[0]) ###### ligne modifiée + for i in range(1, len(tab)): + li += tab[i] + return li + + +ens = [[0, 1], [2, 3]] +print(somme(ens)) +print(ens) + + +######################################## +# Il était possible, dans ce cas, de se passer de copie en écrivant : + + +def somme(tab): + li = [] ###### ligne modifiée + for i in range(0, len(tab)): ###### ligne modifiée + li += tab[i] + return li + + +ens = [[0, 1], [2, 3]] +print(somme(ens)) +print(ens) + + +######################################## +# Erreur de logique +# ================= +# +# Le programme suivant fonctionne mais le résultat n'est pas celui escompté. + + +li = ["un", "deux", "trois", "quatre", "cinq"] + +for i in range(0, len(li)): + mi = i + for j in range(i, len(li)): + if li[mi] < li[j]: + mi = j + e = li[i] + li[mi] = li[i] + li[i] = e + +li + + +######################################## +# Ce programme est censé effectuer un tri par ordre alphabétique +# **décroissant**. Le problème intervient lors de la permutation de +# l'élément ``l[i]`` avec l'élément ``l[mi]``. Il faut donc écrire : + + +li = ["un", "deux", "trois", "quatre", "cinq"] +for i in range(0, len(li)): + mi = i + for j in range(i, len(li)): + if li[mi] < li[j]: + mi = j + e = li[mi] ######## ligne modifiée + li[mi] = li[i] + li[i] = e + +li + + +######################################## +# Coût d'un algorithme +# ==================== +# +# Le coût d'un algorithme ou d'un programme est le nombre d'opérations +# (additions, multiplications, tests, ...) qu'il effectue. Il s'exprime +# comme un multiple d'une fonction de la dimension des données que +# le programme manipule. Par exemple : :math:`O(n)`, +# :math:`O(n^2)`, :math:`O(n\ln n)`, ... + + +def moyenne(tab): + s = 0.0 + for x in tab: + s += x + return s / len(tab) + + +def variance(tab): + s = 0.0 + for x in tab: + t = x - moyenne(tab) + s += t * t + return s / len(tab) + + +li = [0, 1, 2, 2, 3, 1, 3, 0] +print(moyenne(li)) +print(variance(li)) + + +######################################## +# Tout d'abord, le coût d'un algorithme est très souvent exprimé comme un +# multiple de la dimension des données qu'il traite. Ici, la dimension +# est la taille du tableau ``tab``. Par exemple, si on note ``n = len(tab)``, +# alors le coût de la fonction ``moyenne`` s'écrit :math:`O(n)` car cette +# fonction fait la somme des *n* éléments du tableau. +# +# La fonction ``variance`` contient quant à elle un petit piège. Si elle +# contient elle aussi une boucle, chacun des $n$ passages dans cette boucle +# fait appel à la fonction ``moyenne``. Le coût de la fonction ``variance`` est donc +# :math:`O(n^2)`. +# +# Il est possible d'accélérer le programme car la fonction ``moyenne`` +# retourne le même résultat à chaque passage dans la boucle. +# Il suffit de mémoriser son résultat dans une variable avant d'entrer +# dans la boucle comme suit : + + +def variance(tab): + s = 0.0 + m = moyenne(tab) + for x in tab: + t = x - m + s += t * t + return s / len(tab) + + +variance(li) + + +######################################## +# Le coût de la fonction ``variance`` est alors :math:`O(n)`. +# +# Le coût d'un algorithme peut être évalué de manière plus précise et +# nécessiter un résultat comme $n^2 + 3n + 2$ mais cette exigence est +# rarement utile pour des langages comme *python*. L'expression +# ``for x in tab:`` cache nécessairement un test qu'il faudrait prendre en +# compte si plus de précision était exigée. Il faudrait également se +# tourner vers un autre langage de programmation, plus précis dans sa syntaxe. +# Par exemple, lorsqu'on conçoit un programme avec le langage C ou C++, +# à partir du même code informatique, on peut construire deux programmes +# exécutables. Le premier (ou version *debug*), lent, sert à la mise au point : +# il inclut des tests supplémentaires permettant de vérifier à chaque étape +# qu'il n'y a pas eu d'erreur (une division par zéro par exemple). +# Lorsqu'on est sûr que le programme marche, on construit la seconde version +# (ou *release*), plus rapide, dont ont été ôtés tous ces tests de +# conception devenus inutiles. +# +# *python* aboutit à un programme lent qui inclut une quantité de tests +# invisibles pour celui qui programme mais qui détecte les erreurs plus vite +# et favorise une conception rapide. Il n'est pas adapté au traitement +# d'information en grand nombre et fait une multitude d'opérations cachées. +# +# Héritage double +# =============== +# +# On a besoin dans un programme de créer une classe ``carre`` et une classe +# ``rectangle``. Mais on ne sait pas quelle classe doit hériter de l'autre. +# Dans le premier programme, ``rectangle`` hérite de ``carre``. + + +class carre: + def __init__(self, a): + self.a = a + + def surface(self): + return self.a**2 + + +class rectangle(carre): + def __init__(self, a, b): + carre.__init__(self, a) + self.b = b + + def surface(self): + return self.a * self.b + + +rectangle(3, 4).surface() + + +######################################## +# Dans le second programme, c'est la classe ``carre`` +# qui hérite de la classe ``rectangle``. + + +class rectangle: + def __init__(self, a, b): + self.a = a + self.b = b + + def surface(self): + return self.a * self.b + + +class carre(rectangle): + def __init__(self, a): + rectangle.__init__(self, a, a) + + def surface(self): + return self.a**2 + + +carre(3).surface() + + +######################################## +# * Dans le second programme, est-il nécessaire de redéfinir +# la méthode ``surface`` dans la classe ``carre`` ? +# * Quel est le sens d'héritage qui vous paraît le plus censé, +# ``class rectangle(carre)`` ou ``class carre(rectangle)`` ? +# * On désire ajouter la classe ``losange``. Est-il plus simple que +# ``rectangle`` hérite de la classe ``carre`` ou l'inverse pour introduire +# la classe ``losange`` ? Quel ou quels attributs supplémentaires +# faut-il introduire dans la classe ``losange`` ? + +# Le principe de l'héritage est qu'une classe ``carre`` héritant de la classe +# ``rectangle`` hérite de ses attributs et méthodes. L'aire d'un carré est +# égale à celle d'un rectangle dont les côtés sont égaux, par conséquent, +# la méthode ``surface`` de la classe retourne la même valeur que celle de +# la classe ``rectangle``. Il n'est donc pas nécessaire de la redéfinir. +# +# * D'après la réponse de la première question, il paraît plus logique de +# considérer que ``carre`` hérite de ``rectangle``. +# * Un losange est défini par un côté et un angle ou un côté et la longueur +# d'une de ses diagonales, soit dans les deux cas, deux paramètres. +# Dans la première question, il paraissait plus logique que la classe +# la plus spécifique hérite de la classe la plus générale afin de bénéficier +# de ses méthodes. Pour introduire le losange, il paraît plus logique de +# partir du plus spécifique pour aller au plus général afin que chaque +# classe ne contienne que les informations qui lui sont nécessaires. + + +class carre: + def __init__(self, a): + self.a = a + + def surface(self): + return self.a**2 + + +class rectangle(carre): + def __init__(self, a, b): + carre.__init__(self, a) + self.b = b + + def surface(self): + return self.a * self.b + + +class losange(carre): + def __init__(self, a, theta): + carre.__init__(self, a) + self.theta = theta + + def surface(self): + return self.a * math.cos(self.theta) * self.a * math.sin(self.theta) * 2 + + +losange(3, 1).surface() + + +######################################## +# Le sens de l'héritage dépend de vos besoins. Si l'héritage porte principalement +# sur les méthodes, il est préférable de partir du plus général pour aller +# au plus spécifique. La première classe sert d'interface pour toutes ses filles. +# Si l'héritage porte principalement sur les attributs, il est préférable de +# partir du plus spécifique au plus général. Dans le cas général, il n'y a pas +# d'héritage plus sensé qu'un autre mais pour un problème donné, +# il y a souvent un héritage plus sensé qu'un autre. +# +# Précision des calculs +# ===================== +# +# Voici un aperçu de la précision des calculs pour le calcul :math:`1 - 10^{-n}`. +# L'exercice a pour but de montrer que l'ordinateur ne fait que des calculs approchés +# et que la précision du résultat dépend de la méthode numérique employée. + + +x = 1.0 +for i in range(0, 19): + x = x / 10 + print(i, "\t", 1.0 - x, "\t", x, "\t", x ** (0.5)) + + +######################################## +# Le programme montre que l'ordinateur affiche ``1`` +# lorsqu'il calcule :math:`1-10^{-17}`. +# Cela signifie que la précision des calculs en *python* +# est au mieux de :math:`10^{-16}`. +# C'est encore moins bon dans le cas de *float* ou +# réel simple précision codé sur +# 4 octets au lieu de 8 pour les *double*. + + +x = numpy.float32(1.0) +for i in range(0, 19): + x = x / numpy.float32(10) + print(i, "\t", 1.0 - x, "\t", x, "\t", x ** (0.5)) + + +######################################## +# On écrit une classe ``matrice_carree_2`` +# qui représente une matrice carrée de dimension 2. + + +class matrice_carree_2: + def __init__(self, a, b, c, d): + self.a, self.b, self.c, self.d = a, b, c, d + + def determinant(self): + return self.a * self.d - self.b * self.c + + +m1 = matrice_carree_2(1.0, 1e-6, 1e-6, 1.0) +m2 = matrice_carree_2(1.0, 1e-9, 1e-9, 1.0) +print(m1.determinant()) +print(m2.determinant()) + + +######################################## +# La seconde valeur est donc fausse. On considère maintenant la matrice +# :math:`M = \left(\begin{array}{cc} 1 & 10^{-9} \\ 10^{-9} & 1 \end{array} \right)`. +# +# On pose :math:`D = \det(M) = 1 - 10^{-18}` et :math:`T = tr(M) = 2`. :math:`\Delta` +# est le déterminant de *M* et *T* sa trace. On sait que les valeurs propres de +# *M* notées :math:`\lambda_1`, :math:`\lambda_2` vérifient : +# +# .. math:: +# +# \begin{array}{lll} +# D &=& \lambda_1 \lambda_2 \\ +# T &=& \lambda_1 + \lambda_2 +# \end{array} +# +# On vérifie que :math:`(x - \lambda_1)(x - \lambda_2) = x^2 - x +# (\lambda_1 + \lambda_2) + \lambda_1 \lambda_2`. +# Les valeurs propres de $M$ sont donc solutions de l'équation : +# :math:`x^2 - T x + D = 0`. +# +# Le discriminant de ce polynôme est :math:`\Delta = T^2 - 4 D`. +# On peut donc exprimer les valeurs propres de la matrice *M* par : +# +# .. math:: +# +# \begin{array}{lll} +# \lambda_1 &=& \frac{T - \sqrt{\Delta}}{2} \\ +# \lambda_2 &=& \frac{T + \sqrt{\Delta}}{2} +# \end{array} +# +# On ajoute donc la méthode suivante à la classe ``matrice_carree_2`` : + + +class matrice_carree_2: + def __init__(self, a, b, c, d): + self.a, self.b, self.c, self.d = a, b, c, d + + def determinant(self): + return self.a * self.d - self.b * self.c + + def valeurs_propres(self): + det = self.determinant() + trace = self.a + self.d + delta = trace**2 - 4 * det + l1 = 0.5 * (trace - (delta ** (0.5))) + l2 = 0.5 * (trace + (delta ** (0.5))) + return l1, l2 + + +m1 = matrice_carree_2(1.0, 1e-6, 1e-6, 1.0) +m2 = matrice_carree_2(1.0, 1e-9, 1e-9, 1.0) +print(m1.valeurs_propres()) +print(m2.valeurs_propres()) + + +######################################## +# D'après l'énoncé, les valeurs propres de la matrice :math:`M_2` sont les +# sommes de celles de la matrice *I* et de la matrice :math:`M'_2`. +# Par conséquent, ce second calcul mène au résultat suivant : +# +# :: +# +# l1 = 1-1e-9 = 0.99999999900000002828 +# l2 = 1+ 1e-9 = 1.000000001 +# +# La précision des calculs prend sont importance ici. On décompose la matrice +# :math:`M = \left(\begin{array}{cc} 1 & 0 \\ 0 & 1 \end{array}\right) + +# \left(\begin{array}{cc} 0 & 10^{-9} \\ 10^{-9} & 0 \end{array}\right) = I + M'`. +# +# On peut démontrer que si $\lambda$ est une valeur propre de :math:`M'`, +# alors :math:`1 + \lambda` est une valeur propre de *M*. +# Que donne le calcul des valeurs propres de $M'$ si on utilise la méthode +# ``valeurs_propres`` pour ces deux matrices ? +# +# On considère maintenant la matrice +# :math:`M'' = \left(\begin{array}{cc} 1 & 10^{-9} \\ -10^{-9} & 1 \end{array}\right)`. +# En décomposant la matrice :math:`M''` de la même manière qu'à la question 4, +# quelles sont les valeurs propres retournées par le programme pour la matrice +# :math:`M''` ? Quelles sont ses vraies valeurs propres ? +# +# La matrice :math:`M''` n'est en fait pas diagonalisable, c'est-à-dire que +# :math:`\tr(M'')^2 - 4 * \det{M''} = 4 - 4 (1 + 10^{-18}) < 0`. +# Or le calcul proposé par la question 3 aboutit au même résultat faux que pour +# la matrice :math:`M_2`, les deux valeurs propres trouvées seront égales à 1. +# Si on applique la décomposition proposée : +# :math:`M'' = I + \left(\begin{array}{cc}0&-10^{-9}\\ +# 10^{-9}&0\end{array}\right) = I + N''`. +# Le programme calcule sans erreur le discriminant négatif de la matrice :math:`N''` +# qui n'est pas diagonalisable. Il est donc impossible d'obtenir des valeurs +# propres réelles pour la matrice :math:`M''` avec cette seconde méthode. +# Cette question montre qu'une erreur d'approximation peut rendre une +# matrice diagonalisable alors qu'elle ne l'est pas. Il faut bien choisir +# cette précision en fonction de la destination des calculs. diff --git a/_doc/notebooks/README.txt b/_doc/notebooks/README.txt deleted file mode 100644 index 877bc788..00000000 --- a/_doc/notebooks/README.txt +++ /dev/null @@ -1,2 +0,0 @@ -Galleries -========= diff --git a/_doc/notebooks/numpy/README.txt b/_doc/notebooks/numpy/README.txt deleted file mode 100644 index 3e49bfc9..00000000 --- a/_doc/notebooks/numpy/README.txt +++ /dev/null @@ -1,2 +0,0 @@ -Ballades autour de numpy ------------------------- diff --git a/_doc/notebooks/numpy/numpy_tricks.ipynb b/_doc/notebooks/numpy/numpy_tricks.ipynb deleted file mode 100644 index 4897abdd..00000000 --- a/_doc/notebooks/numpy/numpy_tricks.ipynb +++ /dev/null @@ -1,303 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Points d'impl\u00e9mentation avec numpy\n", - "\n", - "Quelques \u00e9critures efficaces et non efficaces avec [numpy](http://www.numpy.org/)." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
run previous cell, wait for 2 seconds
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from jyquickhelper import add_notebook_menu\n", - "add_notebook_menu()" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "## acc\u00e9der \u00e0 un \u00e9l\u00e9ment en particulier" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "array([[ 0., 1., 2., 3., 4.],\n", - " [10., 11., 12., 13., 14.],\n", - " [20., 21., 22., 23., 24.],\n", - " [30., 31., 32., 33., 34.],\n", - " [40., 41., 42., 43., 44.]])" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "import numpy\n", - "mat = numpy.zeros((5, 5))\n", - "for i in range(mat.shape[0]):\n", - " for j in range(mat.shape[1]):\n", - " mat[i, j] = i * 10 + j\n", - "mat" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(23.0, 23.0)" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "mat[2, 3], mat[2][3]" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "116 ns \u00b1 4.49 ns per loop (mean \u00b1 std. dev. of 7 runs, 10000000 loops each)\n" - ] - } - ], - "source": [ - "%timeit mat[2, 3]" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "319 ns \u00b1 57 ns per loop (mean \u00b1 std. dev. of 7 runs, 1000000 loops each)\n" - ] - } - ], - "source": [ - "%timeit mat[2][3]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Les deux \u00e9critures ont l'air identique puisqu'elle retourne le m\u00eame r\u00e9sultat. N\u00e9anmoins, ``mat[2][3]`` cr\u00e9e un tableau temporaire puis extrait un \u00e9l\u00e9ment. Les \u00e9l\u00e9ments ne sont pas recopi\u00e9s mais un objet interm\u00e9diaire est cr\u00e9\u00e9." - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "array([20., 21., 22., 23., 24.])" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "mat[2]" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.5" - } - }, - "nbformat": 4, - "nbformat_minor": 1 -} \ No newline at end of file diff --git a/_doc/notebooks/pandas/README.txt b/_doc/notebooks/pandas/README.txt deleted file mode 100644 index f3c8958a..00000000 --- a/_doc/notebooks/pandas/README.txt +++ /dev/null @@ -1,2 +0,0 @@ -Ballades autour de Pandas -------------------------- diff --git a/_doc/notebooks/pandas/pandas_groupby.ipynb b/_doc/notebooks/pandas/pandas_groupby.ipynb deleted file mode 100644 index 52817114..00000000 --- a/_doc/notebooks/pandas/pandas_groupby.ipynb +++ /dev/null @@ -1,413 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Pandas et groupby\n", - "\n", - "Petit tour de passe passe autour d'un [groupby](https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.groupby.html) et des valeurs manquantes qui ne sont plus prises en compte depuis les derni\u00e8res versions." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
run previous cell, wait for 2 seconds
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from jyquickhelper import add_notebook_menu\n", - "add_notebook_menu()" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "## groupby et valeur manquantes" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
ab
01.02
110.020
2NaN3
3NaN4
\n", - "
" - ], - "text/plain": [ - " a b\n", - "0 1.0 2\n", - "1 10.0 20\n", - "2 NaN 3\n", - "3 NaN 4" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "import pandas\n", - "data = [{\"a\":1, \"b\":2}, {\"a\":10, \"b\":20}, {\"b\":3}, {\"b\":4}]\n", - "df = pandas.DataFrame(data)\n", - "df" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
b
a
1.02
10.020
\n", - "
" - ], - "text/plain": [ - " b\n", - "a \n", - "1.0 2\n", - "10.0 20" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "df.groupby(\"a\").sum()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Les valeurs manquantes ont disparu et c'est le comportement attendu d'apr\u00e8s [groupby and missing values](http://pandas-docs.github.io/pandas-docs-travis/groupby.html#na-and-nat-group-handling). Il est possible de ocrriger le tir avec la fonction impl\u00e9ment\u00e9 dans ce module." - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
ab
01.02
110.020
2NaN7
\n", - "
" - ], - "text/plain": [ - " a b\n", - "0 1.0 2\n", - "1 10.0 20\n", - "2 NaN 7" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from pandas_streaming.df import pandas_groupby_nan\n", - "pandas_groupby_nan(df, \"a\").sum()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "L'astuce consiste \u00e0 remplacer les valeurs manquantes par d'autres non utilis\u00e9es dans le dataframe, \u00e0 grouper, puis \u00e0 leur redonner leur valeurs initiales. Le code de la fonction n'est pas tr\u00e8s propre car il modifie des variables que l'utilisateur n'est pas cens\u00e9 modifier. Il est possible que la fonction \"casse\" pour des versions ult\u00e9rieures. Le [code](https://github.com/sdpython/pandas_streaming/blob/master/src/pandas_streaming/df/dataframe_helpers.py#L301) utilise quelques variables non documentation du module [pandas](https://pandas.pydata.org/)." - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.5" - } - }, - "nbformat": 4, - "nbformat_minor": 1 -} \ No newline at end of file diff --git a/_doc/notebooks/python/README.txt b/_doc/notebooks/python/README.txt deleted file mode 100644 index 1170c633..00000000 --- a/_doc/notebooks/python/README.txt +++ /dev/null @@ -1,3 +0,0 @@ -Ballades autour de Python -------------------------- - diff --git a/_doc/notebooks/python/float_and_double_rouding.ipynb b/_doc/notebooks/python/float_and_double_rouding.ipynb deleted file mode 100644 index 38a6c808..00000000 --- a/_doc/notebooks/python/float_and_double_rouding.ipynb +++ /dev/null @@ -1,1230 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Float conversion\n", - "\n", - "I came up with the following question $(float64)x < (float64)y \\Longrightarrow (float32) x < (float32)y$? What is the probability this holds?" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
run previous cell, wait for 2 seconds
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from jyquickhelper import add_notebook_menu\n", - "add_notebook_menu()" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "%matplotlib inline" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Probability (float64)x == (float32)x\n", - "\n", - "Let's evaluate how many time we draw a random double number equal to its float conversion." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "((100000000,), dtype('float64'))" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "import numpy\n", - "rnd = numpy.random.random(100000000)\n", - "rnd.shape, rnd.dtype" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "2" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rnd32 = rnd.astype(numpy.float32).astype(numpy.float64)\n", - "equal = (rnd == rnd32).sum()\n", - "equal" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "It is very low. Let's check the reverse is true." - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "100000000" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rnd32b = rnd32.astype(numpy.float64).astype(numpy.float32)\n", - "equal = (rnd32b == rnd32).sum()\n", - "equal" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's study the distribution of the difference." - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(-2.9802321610539195e-08, 2.9802320611338473e-08)" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "delta = rnd - rnd32\n", - "numpy.min(delta), numpy.max(delta)" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(5.400330183036317e-10, 0.9999999976946683)" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "numpy.min(rnd), numpy.max(rnd)" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "import matplotlib.pyplot as plt\n", - "plt.hist(delta, bins=1000);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We finally check that double operations between float numpers remain floats." - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [], - "source": [ - "import random\n", - "for i in range(0,100000):\n", - " i,j = random.randint(0, len(rnd32)-1), random.randint(0, len(rnd32)-1)\n", - " d32 = numpy.float64(rnd32[i] * rnd32[j])\n", - " d64 = numpy.float64(rnd32[i]) * numpy.float64(rnd32[j])\n", - " if d32 != d64:\n", - " raise Exception(\"Issue with somme={0} = {1} + {2}\".format(rnd32[i] + rnd32[j], rnd32[i], rnd32[j]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Interval length distribution\n", - "\n", - "Let's imagine now we want to define an intervalle in which a double is converted to the same float. Let's find out about it length." - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(7.245554200022153e-12, 5.9604641222676946e-08)" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def find_interval(x):\n", - " dx = numpy.abs(x - numpy.float32(x)) # usually not zero\n", - " dx /= 100\n", - " f = numpy.float32(x)\n", - " x1 = x\n", - " while numpy.float32(x1) == f:\n", - " x1 -= dx\n", - " x2 = x\n", - " while numpy.float32(x2) == f:\n", - " x2 += dx\n", - " return x1 + dx, x2 - dx\n", - "\n", - "length = numpy.zeros((2000,))\n", - "for i in range(length.shape[0]):\n", - " x = rnd[i]\n", - " x1, x2 = find_interval(x)\n", - " length[i] = x2-x1 \n", - "\n", - "min(length), max(length)" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.hist(length, bins=50);" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "So we can approximate this interval by something like this:" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "5.953141313241872e-08" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ql = numpy.sort(length)[int(length.shape[0] * 0.8)]\n", - "ql" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## An answer to the initial question\n", - "\n", - "Let's estimate $\\mathbb{P}\\left(x_{64} < y_{64} \\Longrightarrow x_{32} < y_{32} \\; | \\; |x-y| \\leqslant d\\right)$ ?" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": { - "scrolled": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "90 5.357827181917685e-08 : 638 991\n", - "190 1.1310968495159557e-07 : 812 1018\n", - "290 1.726410980840143e-07 : 889 1011\n", - "390 2.32172511216433e-07 : 918 986\n", - "490 2.9170392434885173e-07 : 901 981\n", - "590 3.5123533748127045e-07 : 936 986\n", - "690 4.1076675061368917e-07 : 964 1004\n", - "790 4.702981637461079e-07 : 982 1021\n", - "890 5.298295768785266e-07 : 964 998\n", - "990 5.893609900109453e-07 : 946 975\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
dratiototal
05.953141e-100.019447977
11.190628e-090.041879979
21.785942e-090.065590991
32.381257e-090.0630001000
42.976571e-090.072217997
\n", - "
" - ], - "text/plain": [ - " d ratio total\n", - "0 5.953141e-10 0.019447 977\n", - "1 1.190628e-09 0.041879 979\n", - "2 1.785942e-09 0.065590 991\n", - "3 2.381257e-09 0.063000 1000\n", - "4 2.976571e-09 0.072217 997" - ] - }, - "execution_count": 14, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "import pandas\n", - "\n", - "def inf_strict(x, y):\n", - " f1 = x < y\n", - " f2 = numpy.float32(x) < numpy.float32(y)\n", - " return f1, f2\n", - "\n", - "def count_events(fct):\n", - " rows = []\n", - " for di in range(1, 1001):\n", - " d = di * ql / 100\n", - " total = 0\n", - " ok = 0\n", - " rnd = numpy.random.random((2000*3,))\n", - " for i in range(0, rnd.shape[0], 3):\n", - " s = -1 if rnd[i+2] < 0.5 else 1\n", - " x, y = rnd[i], rnd[i] + rnd[i+1]*d*s\n", - " f1, f2 = fct(x, y)\n", - " if f1: \n", - " total += 1\n", - " if f2:\n", - " ok += 1\n", - " if (di+10) % 100 == 0:\n", - " print(di, d, \":\", ok, total)\n", - " rows.append(dict(d=d, ratio=ok*1./total, total=total))\n", - "\n", - " return pandas.DataFrame(rows)\n", - "\n", - "df = count_events(inf_strict)\n", - "df.head()" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 15, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "df.plot(x=\"d\", y=\"ratio\")" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 16, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "df.plot(x=\"d\", y=\"ratio\", logx=True)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## An answer to a similar question: what about not strict comparison?\n", - "\n", - "Let's estimate $\\mathbb{P}\\left(x_{64} \\leqslant y_{64} \\Longrightarrow x_{32} \\leqslant y_{32} \\; | \\; |x-y| \\leqslant d\\right)$ ?" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "90 5.357827181917685e-08 : 966 966\n", - "190 1.1310968495159557e-07 : 1015 1015\n", - "290 1.726410980840143e-07 : 1004 1004\n", - "390 2.32172511216433e-07 : 991 991\n", - "490 2.9170392434885173e-07 : 1015 1015\n", - "590 3.5123533748127045e-07 : 975 975\n", - "690 4.1076675061368917e-07 : 969 969\n", - "790 4.702981637461079e-07 : 962 962\n", - "890 5.298295768785266e-07 : 1032 1032\n", - "990 5.893609900109453e-07 : 1000 1000\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
dratiototal
05.953141e-101.0996
11.190628e-091.0969
21.785942e-091.01004
32.381257e-091.0979
42.976571e-091.01041
\n", - "
" - ], - "text/plain": [ - " d ratio total\n", - "0 5.953141e-10 1.0 996\n", - "1 1.190628e-09 1.0 969\n", - "2 1.785942e-09 1.0 1004\n", - "3 2.381257e-09 1.0 979\n", - "4 2.976571e-09 1.0 1041" - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def inf_equal(x, y):\n", - " f1 = x <= y\n", - " f2 = numpy.float32(x) <= numpy.float32(y)\n", - " return f1, f2\n", - "\n", - "df2 = count_events(inf_equal)\n", - "df2.head()" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 18, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ax = df.plot(x=\"d\", y=\"ratio\", logx=True, label=\"<\")\n", - "df2.plot(x=\"d\", y=\"ratio\", logx=True, label=\"<=\", ax=ax)" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "90 5.357827181917685e-08 : 652 1008\n", - "190 1.1310968495159557e-07 : 799 964\n", - "290 1.726410980840143e-07 : 871 994\n", - "390 2.32172511216433e-07 : 881 969\n", - "490 2.9170392434885173e-07 : 961 1014\n", - "590 3.5123533748127045e-07 : 906 958\n", - "690 4.1076675061368917e-07 : 930 973\n", - "790 4.702981637461079e-07 : 1004 1036\n", - "890 5.298295768785266e-07 : 962 1012\n", - "990 5.893609900109453e-07 : 972 1016\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
dratiototal
05.953141e-100.024291988
11.190628e-090.044838959
21.785942e-090.0577691004
32.381257e-090.0870001000
42.976571e-090.0917691057
\n", - "
" - ], - "text/plain": [ - " d ratio total\n", - "0 5.953141e-10 0.024291 988\n", - "1 1.190628e-09 0.044838 959\n", - "2 1.785942e-09 0.057769 1004\n", - "3 2.381257e-09 0.087000 1000\n", - "4 2.976571e-09 0.091769 1057" - ] - }, - "execution_count": 19, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def sup_strict(x, y):\n", - " f1 = x > y\n", - " f2 = numpy.float32(x) > numpy.float32(y)\n", - " return f1, f2\n", - "\n", - "df3 = count_events(sup_strict)\n", - "df3.head()" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 20, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ax = df.plot(x=\"d\", y=\"ratio\", logx=True, label=\"<\")\n", - "df2.plot(x=\"d\", y=\"ratio\", logx=True, label=\"<=\", ax=ax)\n", - "df3.plot(x=\"d\", y=\"ratio\", logx=True, label=\">\", ax=ax)" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "90 5.357827181917685e-08 : 964 964\n", - "190 1.1310968495159557e-07 : 1010 1010\n", - "290 1.726410980840143e-07 : 1009 1009\n", - "390 2.32172511216433e-07 : 990 990\n", - "490 2.9170392434885173e-07 : 967 967\n", - "590 3.5123533748127045e-07 : 1019 1019\n", - "690 4.1076675061368917e-07 : 1013 1013\n", - "790 4.702981637461079e-07 : 1020 1020\n", - "890 5.298295768785266e-07 : 996 996\n", - "990 5.893609900109453e-07 : 964 964\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
dratiototal
05.953141e-101.01031
11.190628e-091.01013
21.785942e-091.0975
32.381257e-091.0998
42.976571e-091.01022
\n", - "
" - ], - "text/plain": [ - " d ratio total\n", - "0 5.953141e-10 1.0 1031\n", - "1 1.190628e-09 1.0 1013\n", - "2 1.785942e-09 1.0 975\n", - "3 2.381257e-09 1.0 998\n", - "4 2.976571e-09 1.0 1022" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def sup_equal(x, y):\n", - " f1 = x >= y\n", - " f2 = numpy.float32(x) >= numpy.float32(y)\n", - " return f1, f2\n", - "\n", - "df4 = count_events(sup_equal)\n", - "df4.head()" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 22, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ax = df.plot(x=\"d\", y=\"ratio\", logx=True, label=\"<\")\n", - "df2.plot(x=\"d\", y=\"ratio\", logx=True, label=\"<=\", ax=ax)\n", - "df3.plot(x=\"d\", y=\"ratio\", logx=True, label=\">\", ax=ax)\n", - "df4.plot(x=\"d\", y=\"ratio\", logx=True, label=\">=\", ax=ax)" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "90 5.357827181917685e-08 : 999 999\n", - "190 1.1310968495159557e-07 : 1019 1019\n", - "290 1.726410980840143e-07 : 1013 1013\n", - "390 2.32172511216433e-07 : 994 994\n", - "490 2.9170392434885173e-07 : 1012 1012\n", - "590 3.5123533748127045e-07 : 984 984\n", - "690 4.1076675061368917e-07 : 1024 1024\n", - "790 4.702981637461079e-07 : 982 982\n", - "890 5.298295768785266e-07 : 966 966\n", - "990 5.893609900109453e-07 : 1001 1001\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
dratiototal
05.953141e-101.0976
11.190628e-091.0983
21.785942e-091.01024
32.381257e-091.0966
42.976571e-091.01016
\n", - "
" - ], - "text/plain": [ - " d ratio total\n", - "0 5.953141e-10 1.0 976\n", - "1 1.190628e-09 1.0 983\n", - "2 1.785942e-09 1.0 1024\n", - "3 2.381257e-09 1.0 966\n", - "4 2.976571e-09 1.0 1016" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def inf_strict_neg(x, y):\n", - " f1 = (-x) >= (-y)\n", - " f2 = (-numpy.float32(x)) >= (-numpy.float32(y))\n", - " return f1, f2\n", - "\n", - "dfn = count_events(inf_strict_neg)\n", - "dfn.head()" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 24, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ax = df.plot(x=\"d\", y=\"ratio\", logx=True, label=\"<\")\n", - "dfn.plot(x=\"d\", y=\"ratio\", logx=True, label=\"-1 x >=\", ax=ax)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Conclusion\n", - "\n", - "The result is expected. As soon as two float are rounded to the same value, the strict inequality no longer holds. However, if you need to write a code which has to handle double and float (in a template for example), you should use not strict inequalities. It is easier to compare the results but you should read some article like [Is < faster than <=?](https://stackoverflow.com/questions/12135518/is-faster-than). According to [Processing costs of non-strict\n", - "versus strict comparison](http://www.crcummins.com/CRCProcessing.pdf), ``<`` is 5-10% faster than ``<=``." - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/_doc/notebooks/python/gil_example.ipynb b/_doc/notebooks/python/gil_example.ipynb deleted file mode 100644 index 9a42fb80..00000000 --- a/_doc/notebooks/python/gil_example.ipynb +++ /dev/null @@ -1,320 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Le GIL\n", - "\n", - "Le GIL ou [Global Interpreter Lock](https://en.wikipedia.org/wiki/Global_interpreter_lock) est un verrou unique auquel l'interpr\u00e9teur Python fait appel constamment pour prot\u00e9ger tous les objets qu'il manipule contre des acc\u00e8s concurrentiels." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
run previous cell, wait for 2 seconds
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from jyquickhelper import add_notebook_menu\n", - "add_notebook_menu()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Deux listes en parall\u00e8lle\n", - "\n", - "On mesure le temps n\u00e9cessaire pour cr\u00e9er deux liste et comparer ce temps avec celui que cela prendrait en parall\u00e8le." - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "10.4 ms \u00b1 1.87 ms per loop (mean \u00b1 std. dev. of 7 runs, 100 loops each)\n" - ] - } - ], - "source": [ - "def create_list(n):\n", - " res = []\n", - " for i in range(n):\n", - " res.append(i)\n", - " return res\n", - "\n", - "%timeit create_list(100000)" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "En parall\u00e8le avec le module [concurrent.futures](https://docs.python.org/3/library/concurrent.futures.html) et deux appels \u00e0 la m\u00eame fonction." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "54.7 ms \u00b1 4.94 ms per loop (mean \u00b1 std. dev. of 7 runs, 10 loops each)\n" - ] - } - ], - "source": [ - "from concurrent.futures import ThreadPoolExecutor\n", - "\n", - "def run2(nb):\n", - " with ThreadPoolExecutor(max_workers=2) as executor:\n", - " for res in executor.map(create_list, [nb, nb+1]):\n", - " pass\n", - " \n", - "%timeit run2(100000)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "C'est plus long que si les calculs \u00e9taient lanc\u00e9s les uns apr\u00e8s les autres. Ce temps est perdu \u00e0 synchroniser les deux threads bien que les deux boucles n'aient rien \u00e0 \u00e9changer. Chaque thread passe son temps \u00e0 attendre que l'autre ait termin\u00e9 de mettre \u00e0 jour sa liste et le *GIL* impose que ces mises \u00e0 jour aient lieu une apr\u00e8s l'autre." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Un autre sc\u00e9nario\n", - "\n", - "Au lieu de mettre \u00e0 jour une liste, on va lancer un thread qui ne fait rien qu'attendre. Donc le *GIL* n'est pas impliqu\u00e9." - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "9.36 ms \u00b1 28.3 \u00b5s per loop (mean \u00b1 std. dev. of 7 runs, 100 loops each)\n" - ] - } - ], - "source": [ - "import time\n", - "\n", - "def attendre(t=0.009):\n", - " time.sleep(t)\n", - " return None\n", - "\n", - "%timeit attendre()" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "12.6 ms \u00b1 43.5 \u00b5s per loop (mean \u00b1 std. dev. of 7 runs, 100 loops each)\n" - ] - } - ], - "source": [ - "def run2(t):\n", - " with ThreadPoolExecutor(max_workers=2) as executor:\n", - " for res in executor.map(attendre, [t, t+0.001]):\n", - " pass\n", - " \n", - "%timeit run2(0.009)" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "Les deux attentes se font en parall\u00e8le car le temps moyen est significativement inf\u00e9rieur \u00e0 la somme des deux attentes." - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.1" - } - }, - "nbformat": 4, - "nbformat_minor": 1 -} \ No newline at end of file diff --git a/_doc/notebooks/python/hypercube.ipynb b/_doc/notebooks/python/hypercube.ipynb deleted file mode 100644 index 3548ca7c..00000000 --- a/_doc/notebooks/python/hypercube.ipynb +++ /dev/null @@ -1,820 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Hypercube et autres exercices\n", - "\n", - "Exercices autour de tableaux en plusieurs dimensions et autres exercices." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
run previous cell, wait for 2 seconds
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from jyquickhelper import add_notebook_menu\n", - "add_notebook_menu()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Q1 - triple r\u00e9cursivit\u00e9\n", - "\n", - "R\u00e9\u00e9crire la fonction ``u`` de fa\u00e7on \u00e0 ce qu'elle ne soit plus r\u00e9currente." - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "9" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def u(n):\n", - " if n <= 2:\n", - " return 1\n", - " else: \n", - " return u(n-1) + u(n-2) + u(n-3)\n", - "\n", - "u(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Le probl\u00e8me de cette \u00e9criture est que la fonction est triplement r\u00e9cursive et que son co\u00fbt est aussi grand que la fonction elle-m\u00eame. V\u00e9rifions." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(9, [5, 4, 3, 2, 1, 0, 2, 1, 3, 2, 1, 0, 2])" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "compteur = []\n", - "\n", - "def u_st(n):\n", - " global compteur\n", - " compteur.append(n)\n", - " if n <= 2:\n", - " return 1\n", - " else: \n", - " return u_st(n-1) + u_st(n-2) + u_st(n-3)\n", - "\n", - "u_st(5), compteur" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La seconde liste retourne tous les *n* pour lesquels la fonction ``u_st`` a \u00e9t\u00e9 appel\u00e9e." - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "9" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def u_non_recursif(n):\n", - " if n <= 2:\n", - " return 1\n", - " u0 = 1\n", - " u1 = 1\n", - " u2 = 1\n", - " i = 3\n", - " while i <= n:\n", - " u = u0 + u1 + u2\n", - " u0 = u1\n", - " u1 = u2\n", - " u2 = u\n", - " i += 1\n", - " return u\n", - "\n", - "u_non_recursif(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Q2 - comparaison de listes\n", - "\n", - "On consid\u00e8re deux listes d'entiers. La premi\u00e8re est inf\u00e9rieure \u00e0 la seconde si l'une des deux conditions suivantes est v\u00e9rifi\u00e9e :\n", - "\n", - "* les $n$ premiers nombres sont \u00e9gaux mais la premi\u00e8re liste ne contient que $n$ \u00e9l\u00e9ments tandis que la seconde est plus longue, \n", - "* les $n$ premiers nombres sont \u00e9gaux mais que le $n+1^{\\text{\u00e8me}}$ de la premi\u00e8re liste est inf\u00e9rieur au $n+1^{\\text{\u00e8me}}$ de la seconde liste\n", - "\n", - "Par cons\u00e9quent, si $l$ est la longueur de la liste la plus courte, comparer ces deux listes d'entiers revient \u00e0 parcourir tous les indices depuis 0 jusqu'\u00e0 $l$ exclu et \u00e0 s'arr\u00eater sur la premi\u00e8re diff\u00e9rence qui d\u00e9termine le r\u00e9sultat. S'il n'y pas de diff\u00e9rence, alors la liste la plus courte est la premi\u00e8re. Il faut \u00e9crire une fonction ``compare_liste(p,q)`` qui impl\u00e9mente cet algorithme." - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "-1" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def compare_liste(p, q):\n", - " i = 0\n", - " while i < len(p) and i < len(q):\n", - " if p [i] < q [i]: \n", - " return -1 # on peut d\u00e9cider\n", - " elif p [i] > q [i]: \n", - " return 1 # on peut d\u00e9cider\n", - " i += 1 # on ne peut pas d\u00e9cider\n", - " # fin de la boucle, il faut d\u00e9cider \u00e0 partir des longueurs des listes\n", - " if len (p) < len (q): \n", - " return -1\n", - " elif len (p) > len (q): \n", - " return 1\n", - " else : \n", - " return 0\n", - " \n", - "compare_liste([0, 1], [0, 1, 2])" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "1" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "compare_liste([0, 1, 3], [0, 1, 2])" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "0" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "compare_liste([0, 1, 2], [0, 1, 2])" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "1" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "compare_liste([0, 1, 2, 4], [0, 1, 2])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Q3 - pr\u00e9cision des calculs\n", - "\n", - "On cherche \u00e0 calculer la somme des termes d'une suite g\u00e9om\u00e9triques de raison~$\\frac{1}{2}$. On d\u00e9finit $r=\\frac{1}{2}$, on cherche donc \u00e0 calculer $\\sum_{i=0}^{\\infty} r^i$ qui une somme convergente mais infinie. Le programme suivant permet d'en calculer une valeur approch\u00e9e. Il retourne, outre le r\u00e9sultat, le nombre d'it\u00e9rations qui ont permis d'estimer le r\u00e9sultat." - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(2.0, 1075)\n" - ] - } - ], - "source": [ - "def suite_geometrique_1(r):\n", - " x = 1.0\n", - " y = 0.0\n", - " n = 0\n", - " while x > 0:\n", - " y += x\n", - " x *= r\n", - " n += 1\n", - " return y, n\n", - " \n", - "print(suite_geometrique_1(0.5))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Un informaticien plus exp\u00e9riment\u00e9 a \u00e9crit le programme suivant qui retourne le m\u00eame r\u00e9sultat mais avec un nombre d'it\u00e9rations beaucoup plus petit." - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(2.0, 55)\n" - ] - } - ], - "source": [ - "def suite_geometrique_2(r):\n", - " x = 1.0\n", - " y = 0.0\n", - " n = 0\n", - " yold = y + 1\n", - " while abs (yold - y) > 0:\n", - " yold = y\n", - " y += x\n", - " x *= r\n", - " n += 1\n", - " return y,n\n", - " \n", - "print(suite_geometrique_2(0.5))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Expliquez pourquoi le second programme est plus rapide tout en retournant le m\u00eame r\u00e9sultat. Rep\u00e8re num\u00e9rique : $2^{-55} \\sim 2,8.10^{-17}$." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Tout d'abord le second programme est plus rapide car il effectue moins d'it\u00e9rations, 55 au lieu de 1075. Maintenant, il s'agit de savoir pourquoi le second programme retourne le m\u00eame r\u00e9sultat que le premier mais plus rapidement. L'ordinateur ne peut pas calculer num\u00e9riquement une somme infinie, il s'agit toujours d'une valeur approch\u00e9e. L'approximation d\u00e9pend de la pr\u00e9cision des calculs, environ 14 chiffres pour *python*. Dans le premier programme, on s'arr\u00eate lorsque $r^n$ devient nul, autrement dit, on s'arr\u00eate lorsque $x$ est si petit que *python* ne peut plus le repr\u00e9senter autrement que par~0, c'est-\u00e0-dire qu'il n'est pas possible de repr\u00e9senter un nombre dans l'intervalle $[0,2^{-1055}]$.\n", - "\n", - "Toutefois, il n'est pas indispensable d'aller aussi loin car l'ordinateur n'est de toute fa\u00e7on pas capable d'ajouter un nombre aussi petit \u00e0 un nombre plus grand que~1. Par exemple, $1 + 10^{17} = 1,000\\, 000\\, 000\\, 000\\, 000\\, 01$. Comme la pr\u00e9cision des calculs n'est que de 15 chiffres, pour *python*, $1 + 10^{17} = 1$. Le second programme s'inspire de cette remarque : le calcul s'arr\u00eate lorsque le r\u00e9sultat de la somme n'\u00e9volue plus car il additionne des nombres trop petits \u00e0 un nombre trop grand. L'id\u00e9e est donc de comparer la somme d'une it\u00e9ration \u00e0 l'autre et de s'arr\u00eater lorsqu'elle n'\u00e9volue plus.\n", - "\n", - "Ce raisonnement n'est pas toujours applicable. Il est valide dans ce cas car la s\u00e9rie $s_n = \\sum_{i=0}^{n} r^i$ est croissante et positive. Il est valide pour une s\u00e9rie convergente de la forme $s_n = \\sum_{i=0}^{n} u_i$ et une suite $u_n$ de module d\u00e9croissant.\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Q4 - hypercube\n", - "\n", - "Un chercheur cherche \u00e0 v\u00e9rifier qu'une suite de~0 et de~1 est al\u00e9atoire. Pour cela, il souhaite compter le nombre de s\u00e9quences de $n$ nombres successifs. Par exemple, pour la suite 01100111 et $n=3$, les triplets sont 011, 110, 100, 001, 011, 111. Le triplet 011 appara\u00eet deux fois, les autres une fois. Si la suite est al\u00e9atoire, les occurrences de chaque triplet sont en nombres \u00e9quivalents. " - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[[[0, 0], [0, 0]], [[0, 0], [0, 0]]]" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def hyper_cube_liste(n, m=None):\n", - " if m is None:\n", - " m = [0, 0]\n", - " if n > 1 :\n", - " m[0] = [0,0]\n", - " m[1] = [0,0]\n", - " m[0] = hyper_cube_liste (n-1, m[0])\n", - " m[1] = hyper_cube_liste (n-1, m[1])\n", - " return m\n", - "\n", - "hyper_cube_liste(3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La seconde \u00e0 base de dictionnaire (plus facile \u00e0 manipuler) :" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{(0, 0, 0): 0,\n", - " (0, 0, 1): 0,\n", - " (0, 1, 0): 0,\n", - " (0, 1, 1): 0,\n", - " (1, 0, 0): 0,\n", - " (1, 0, 1): 0,\n", - " (1, 1, 0): 0,\n", - " (1, 1, 1): 0}" - ] - }, - "execution_count": 13, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def hyper_cube_dico (n) :\n", - " r = { }\n", - " ind = [ 0 for i in range (0,n) ]\n", - " while ind [0] <= 1 :\n", - " cle = tuple(ind) # conversion d'une liste en tuple\n", - " r[cle] = 0\n", - " ind[-1] += 1\n", - " k = len(ind)-1\n", - " while ind[k] == 2 and k > 0:\n", - " ind[k] = 0\n", - " ind[k-1] += 1\n", - " k -= 1\n", - " return r\n", - "\n", - "hyper_cube_dico(3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Le chercheur a commenc\u00e9 \u00e0 \u00e9crire son programme :" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [], - "source": [ - "def occurrence(l,n) :\n", - " # d = ....... # choix d'un hyper_cube (n)\n", - " # .....\n", - " # return d\n", - " pass\n", - "\n", - "suite = [ 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1 ]\n", - "h = occurrence(suite, 3)\n", - "h" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Sur quelle structure se porte votre choix (a priori celle avec dictionnaire), compl\u00e9ter la fonction ``occurrence``. " - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{(0, 0, 0): 0,\n", - " (0, 0, 1): 0,\n", - " (0, 1, 0): 0,\n", - " (0, 1, 1): 1,\n", - " (1, 0, 0): 0,\n", - " (1, 0, 1): 2,\n", - " (1, 1, 0): 1,\n", - " (1, 1, 1): 0}" - ] - }, - "execution_count": 15, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def occurrence(tu, n):\n", - " d = hyper_cube_dico(n)\n", - " for i in range (0, len(tu)-n) :\n", - " cle = tu[i:i+n]\n", - " d[cle] += 1\n", - " return d\n", - "\n", - "occurrence((1, 0, 1, 1, 0, 1, 0), 3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Il est m\u00eame possible de se passer de la fonction ``hyper_cube_dico`` :" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{(1, 0, 1): 2, (0, 1, 1): 1, (1, 1, 0): 1}" - ] - }, - "execution_count": 16, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def occurrence2(tu, n):\n", - " d = { }\n", - " for i in range (0, len(tu)-n) :\n", - " cle = tu[i:i+n]\n", - " if cle not in d: \n", - " d[cle] = 0\n", - " d [cle] += 1\n", - " return d\n", - "\n", - "occurrence2((1, 0, 1, 1, 0, 1, 0), 3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La seule diff\u00e9rence appara\u00eet lorsqu'un n-uplet n'appara\u00eet pas dans la liste. Avec la fonction ``hyper_cube_dico``, ce n-uplet recevra la fr\u00e9quence 0, sans cette fonction, ce n-uplet ne sera pas pr\u00e9sent dans le dictionnaire ``d``. Le m\u00eame programme avec la structure matricielle est plus une curiosit\u00e9 qu'un cas utile. " - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[[[0, 0], [0, 1]], [[0, 2], [1, 0]]]" - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def occurrence3(li, n):\n", - " d = hyper_cube_liste(n)\n", - " for i in range (0, len(li)-n) :\n", - " cle = li[i:i+n]\n", - " t = d # \n", - " for k in range (0,n-1) : # point cl\u00e9 de la fonction : \n", - " t = t[cle[k]] # acc\u00e8s \u00e0 un \u00e9l\u00e9ment\n", - " t [cle [ n-1] ] += 1\n", - " return d\n", - "\n", - "occurrence3((1, 0, 1, 1, 0, 1, 0), 3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Une autre \u00e9criture..." - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[[[0, 0], [0, 1]], [[0, 2], [1, 0]]]" - ] - }, - "execution_count": 18, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def hyper_cube_liste2(n, m=[0, 0], m2=[0, 0]):\n", - " if n > 1 :\n", - " m[0] = list(m2)\n", - " m[1] = list(m2)\n", - " m[0] = hyper_cube_liste2(n-1, m[0])\n", - " m[1] = hyper_cube_liste2(n-1, m[1])\n", - " return m\n", - "\n", - "def occurrence4(li, n):\n", - " d = hyper_cube_liste2(n) # * remarque voir plus bas\n", - " for i in range (0, len(li)-n) :\n", - " cle = li[i:i+n]\n", - " t = d # \n", - " for k in range (0,n-1) : # point cl\u00e9 de la fonction : \n", - " t = t[cle[k]] # acc\u00e8s \u00e0 un \u00e9l\u00e9ment\n", - " t [cle [ n-1] ] += 1\n", - " return d\n", - "\n", - "occurrence4((1, 0, 1, 1, 0, 1, 0), 3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Et si on remplace ``list(m2)`` par ``m2``." - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "'int' object is not iterable\n" - ] - } - ], - "source": [ - "def hyper_cube_liste3(n, m=[0, 0], m2=[0, 0]):\n", - " if n > 1 :\n", - " m[0] = m2\n", - " m[1] = m2\n", - " m[0] = hyper_cube_liste3(n-1, m[0])\n", - " m[1] = hyper_cube_liste3(n-1, m[1])\n", - " return m\n", - "\n", - "def occurrence5(li, n):\n", - " d = hyper_cube_liste3(n) # * remarque voir plus bas\n", - " for i in range (0, len(li)-n) :\n", - " cle = li[i:i+n]\n", - " t = d # \n", - " for k in range (0,n-1) : # point cl\u00e9 de la fonction : \n", - " t = t[cle[k]] # acc\u00e8s \u00e0 un \u00e9l\u00e9ment\n", - " t [cle [ n-1] ] += 1\n", - " return d\n", - "\n", - "try:\n", - " occurrence5((1, 0, 1, 1, 0, 1, 0), 3)\n", - "except Exception as e:\n", - " print(e)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Int\u00e9ressant..." - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.0" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/_doc/notebooks/python/notebook_template.ipynb b/_doc/notebooks/python/notebook_template.ipynb deleted file mode 100644 index 596499c4..00000000 --- a/_doc/notebooks/python/notebook_template.ipynb +++ /dev/null @@ -1,201 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Premier notebook\n", - "\n", - "Premier notebook et premier menu javascript." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
run previous cell, wait for 2 seconds
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from jyquickhelper import add_notebook_menu\n", - "add_notebook_menu()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Premier paragraphe" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "### Un sous paragraphe" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.1" - } - }, - "nbformat": 4, - "nbformat_minor": 1 -} \ No newline at end of file diff --git a/_doc/notebooks/python/partie_dame.ipynb b/_doc/notebooks/python/partie_dame.ipynb deleted file mode 100644 index b4ebf852..00000000 --- a/_doc/notebooks/python/partie_dame.ipynb +++ /dev/null @@ -1,537 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Parties de dames\n", - "\n", - "Exercice de programmation sur les tableaux." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
run previous cell, wait for 2 seconds
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from jyquickhelper import add_notebook_menu\n", - "add_notebook_menu()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Q1 \n", - "\n", - "Une partie de dames met en jeu quarante pions, vingt noirs, vingt blancs, chacun sur des cases diff\u00e9rentes. L'objectif est de savoir si un pion est en mesure d'en prendre un autre. On ne traitera pas le cas des dames. Chaque pion est d\u00e9fini par :\n", - "\n", - "* deux coordonn\u00e9es enti\u00e8res, chacune comprise entre 1 et 10\n", - "* une couleur, noir ou blanc\n", - "\t\t\n", - "On propose deux repr\u00e9sentations de l'ensemble de pions :\n", - "\n", - "* Un tableau de 40 pions indic\u00e9s de 0 \u00e0 39 inclus, chaque pion \u00e9tant d\u00e9fini par :\n", - " * deux coordonn\u00e9es comprises entre 1 et 10, ou (0,0) si le pion n'est plus sur le damier\n", - "\t* un entier qui vaut 1 pour blanc, 2 pour noir\n", - "* Un tableau d'entiers \u00e0 deux dimensions, chaque case contient :\n", - " * soit 0 s'il n'y a pas de pion\n", - "\t* soit 1 si la case contient un pion blanc\n", - " * soit 2 si la case contient un pion noir\n", - "\n", - "Y a-t-il d'autres repr\u00e9sentations de ces informations~? Si on consid\u00e8re que l'efficacit\u00e9 d'une m\u00e9thode est reli\u00e9e \u00e0 sa vitesse - autrement dit aux co\u00fbts des algorithmes qu'elles utilisent -, parmi ces deux repr\u00e9sentations, quelle est celle qui semble la plus efficace pour savoir si un pion donn\u00e9 du damier est en mesure d'en prendre un autre ?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "**r\u00e9ponse**\n", - "\n", - "La seconde repr\u00e9sentation sous forme de tableau \u00e0 deux dimensions est plus pratique pour effectuer les tests de voisinages. Chaque case a quatre voisines aux quatre coins, il est ensuite facile de d\u00e9terminer si ces quatre voisines sont libres ou si elles contiennent un pion. On sait rapidement le contenu d'une case.\n", - "\n", - "Avec la premi\u00e8re repr\u00e9sentation - le tableau des pions - pour savoir s'il existe un pion dans une case voisine, il faut passer en revue tous les pions pour savoir si l'un d'eux occupe ou non cette case. Avec la seconde repr\u00e9sentation - le tableau \u00e0 deux dimensions - on acc\u00e8de directement \u00e0 cette information sans avoir \u00e0 la rechercher. On \u00e9vite une boucle sur les pions avec la seconde repr\u00e9sentation." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Q2\n", - "\n", - "Comment repr\u00e9senter un tableau d'entiers \u00e0 deux dimensions en langage python \u00e0 l'aide des types standards qu'il propose, \u00e0 savoir t-uple, liste ou dictionnaire ?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "**r\u00e9ponse**\n", - "\n", - "Pour repr\u00e9senter le tableau en deux dimensions, il existe trois solutions :\n", - "\n", - "* Une liste de listes, chaque ligne est repr\u00e9sent\u00e9e par une liste. Toutes ces listes sont elles-m\u00eames assembl\u00e9es dans une liste globale.\n", - "* Une seule liste, il suffit de num\u00e9roter les cases du damier de 0 \u00e0 99, en utilisant comme indice pour la case $(i,j)$ : $k = 10*i+j$. R\u00e9ciproquement, la case d'indice $k$ aura pour coordonn\u00e9es $(k / 10, \\, k \\% 10)$.\n", - "* Un dictionnaire dont la cl\u00e9 est un couple d'entiers." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Q3\n", - "\n", - "On cherche \u00e0 \u00e9crire l'algorithme qui permet de savoir si un pion donn\u00e9 est un mesure de prendre un pion. Quels sont les param\u00e8tres d'entr\u00e9es et les r\u00e9sultats de cet algorithme ? " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "**r\u00e9ponse**\n", - "\n", - "On d\u00e9sire savoir si le pion de la case $(i,j)$ peut en prendre un autre. On suppose que le tableau \u00e0 deux dimensions est une liste de dix listes appel\u00e9e ``damier``. ``damier[i][j]`` est donc la couleur du pion de la case $(i,j)$, \u00e0 savoir 0 si la case est vide, 1 si le pion est blanc, 2 si le pion est noir. Pour ces deux derniers cas, la couleur des pions de l'adversaire sera donc ``3 - damier[i][j]``. Les entr\u00e9es de la fonctions sont donc les indices ``i``, ``j`` et le damier ``damier``. La sortie est une variable bool\u00e9enne qui indique la possibilit\u00e9 ou non de prendre. On ne souhaite pas d\u00e9placer les pions." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Q4\n", - "\n", - "Il ne reste plus qu'\u00e0 \u00e9crire cet algorithme." - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "True" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def pion_prendre(i, j, damier):\n", - " c = damier[i][j]\n", - " if c == 0:\n", - " return False # case vide, impossible de prendre\n", - " c = 3 - c # couleur de l'adversaire\n", - "\n", - " if damier[i-1][j-1] == c: # s'il y a un pion adverse en haut \u00e0 gauche\n", - " if damier[i-2][j-2] == 0: # si la case d'apr\u00e8s en diagonale est vide\n", - " return True # on peut prendre\n", - "\n", - " # on r\u00e9p\u00e8te ce test pour les trois autres cases\n", - " if damier[i-1][j+1] == c and damier[i-2][j+2] == 0:\n", - " return True\n", - " if damier[i+1][j-1] == c and damier[i+2][j-2] == 0:\n", - " return True\n", - " if damier[i+1][j+1] == c and damier[i+2][j+2] == 0:\n", - " return True\n", - " \n", - " # si tous les tests ont \u00e9chou\u00e9, on ne peut pas prendre\n", - " return False\n", - "\n", - "damier = [[0, 0, 1, 0, 0],\n", - " [0, 1, 0, 1, 0], \n", - " [0, 0, 2, 0, 2], \n", - " [0, 0, 0, 2, 0],\n", - " [0, 0, 0, 0, 0],\n", - " ]\n", - "\n", - "pion_prendre(2, 2, damier)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Voici une fonction \u00e9quivalente lorsque le damier est un dictionnaire dont la cl\u00e9 est un couple d'entiers." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{(0, 0): 0, (0, 1): 0, (0, 2): 1, (0, 3): 0, (1, 0): 0, (1, 1): 1, (1, 2): 0, (1, 3): 1, (2, 0): 0, (2, 1): 0, (2, 2): 2, (2, 3): 0, (3, 0): 0, (3, 1): 0, (3, 2): 0, (3, 3): 2}\n" - ] - }, - { - "data": { - "text/plain": [ - "True" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def pion_prendre_dict(i, j, damier):\n", - " c = damier[(i,j)] # ou encore damier [i,j]\n", - " if c == 0:\n", - " return False # case vide, impossible de prendre\n", - " c = 3 - c # couleur de l'adversaire\n", - "\n", - " # test pour une prise du pion dans les quatre cases voisines\n", - " if damier[i-1,j-1] == c and damier[i-2,j-2] == 0: \n", - " return True\n", - " if damier[i-1,j+1] == c and damier[i-2,j+2] == 0: \n", - " return True\n", - " if damier[i+1,j-1] == c and damier[i+2,j-2] == 0: \n", - " return True\n", - " if damier[i+1,j+1] == c and damier[i+2,j+2] == 0: \n", - " return True\n", - " \n", - " # si tous les tests ont \u00e9chou\u00e9, on ne peut pas prendre\n", - " return False\n", - "\n", - "damier_dict = { (i,j): damier[i][j] for i in range(4) for j in range(4)}\n", - "\n", - "print(damier_dict)\n", - "\n", - "pion_prendre_dict(2, 2, damier_dict)" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(0, 4)\n" - ] - } - ], - "source": [ - "try:\n", - " pion_prendre_dict(1, 3, damier_dict)\n", - "except Exception as e:\n", - " print(e)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Cela ne marche pas tr\u00e8s bien, cela laisse supposer que la fonction pr\u00e9c\u00e9dente n'est pas tr\u00e8s fonctionnelle non plus. Il manque le fait de v\u00e9rifier que les coordonn\u00e9es test\u00e9es restent dans l'\u00e9chiquier." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La m\u00eame fonction lorsque le damier est repr\u00e9sent\u00e9 par une seule liste." - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 2, 0, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0]\n" - ] - }, - { - "data": { - "text/plain": [ - "True" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def pion_prendre_list(i,j,damier):\n", - " n = int(len(damier) ** 0.5) # on suppose que le damier est carr\u00e9\n", - " c = damier[n*i+j]\n", - " if c == 0: \n", - " return False # case vide, impossible de prendre\n", - " c = 3 - c # couleur de l'adversaire\n", - "\n", - " # test pour une prise du pion dans les quatre cases voisines\n", - " if damier[n*(i-1)+j-1] == c and damier[n*(i-2)+j-2] == 0: \n", - " return True\n", - " if damier[n*(i-1)+j+1] == c and damier[n*(i-2)+j+2] == 0:\n", - " return True\n", - " if damier[n*(i+1)+j-1] == c and damier[n*(i+2)+j-2] == 0: \n", - " return True\n", - " if damier[n*(i+1)+j+1] == c and damier[n*(i+2)+j+2] == 0: \n", - " return True\n", - " \n", - " return False\n", - "\n", - "damier_list = []\n", - "for row in damier:\n", - " damier_list.extend(row)\n", - " \n", - "print(damier_list)\n", - "\n", - "pion_prendre_list(2, 2, damier_list)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Pour ces trois cas, aucun effet de bord n'a \u00e9t\u00e9 envisag\u00e9. Si la case est trop pr\u00e8s d'un des bords, un des indices $i,\\;j,\\;i-1,\\;j-1,\\;i+1,\\;j+1,\\;i-2,\\;j-2,\\;i+2,\\;j+2$ d\u00e9signera une case hors du damier. Le code de la fonction ``pion_prendre`` devra donc v\u00e9rifier que chaque case dont elle v\u00e9rifie le contenu appartient au damier." - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "True" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def pion_prendre_bord(i, j, damier):\n", - " c = damier[i][j]\n", - " if c == 0:\n", - " return False # case vide, impossible de prendre\n", - " c = 3 - c # couleur de l'adversaire\n", - "\n", - " # on r\u00e9p\u00e8te ce test pour les trois autres cases\n", - " if i >= 2 and j >= 2 and \\\n", - " damier[i-1][j-1] == c and damier[i-2][j-2] == 0:\n", - " return True\n", - " if i >= 2 and j < len(damier)-2 and \\\n", - " damier[i-1][j+1] == c and damier[i-2][j+2] == 0:\n", - " return True\n", - " \n", - " if i < len(damier)-2 and j >= 2 and \\\n", - " damier[i+1][j-1] == c and damier[i+2][j-2] == 0: \n", - " return True\n", - " \n", - " if i < len(damier)-2 and j < len(damier)-2 and \\\n", - " damier [i+1][j+1] == c and damier [i+2][j+2] == 0: \n", - " return True\n", - " \n", - " return False\n", - "\n", - "pion_prendre_bord(2, 2, damier)" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "True" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "pion_prendre_bord(1, 3, damier)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La fonction ``pion_prendre(1, 3, damier)`` fonctionne parce que le langage python accepte indices n\u00e9gatifs : ``damier[-1][-1]`` mais le r\u00e9sultat n'est pas n\u00e9cessairement celui souhait\u00e9." - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.0" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/_doc/notebooks/python/serialisation_examples.ipynb b/_doc/notebooks/python/serialisation_examples.ipynb deleted file mode 100644 index fd8fce99..00000000 --- a/_doc/notebooks/python/serialisation_examples.ipynb +++ /dev/null @@ -1,1280 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# S\u00e9rialisation\n", - "\n", - "Le notebook explore diff\u00e9rentes fa\u00e7ons de s\u00e9rialiser des donn\u00e9es et leurs limites." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
run previous cell, wait for 2 seconds
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from jyquickhelper import add_notebook_menu\n", - "add_notebook_menu()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## JSON\n", - "\n", - "Le format [JSON](https://fr.wikipedia.org/wiki/JavaScript_Object_Notation) est le format le plus utilis\u00e9 sur internet notemmant via les [API REST](https://fr.wikipedia.org/wiki/Representational_state_transfer)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Ecriture" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "data = {'records': [{'nom': 'Xavier', 'pr\u00e9nom': 'Xavier', \n", - " 'langages':[{'nom':'C++', 'age':40}, {'nom':'Python', 'age': 20}]}]}" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "'{\"records\": [{\"nom\": \"Xavier\", \"pr\\\\u00e9nom\": \"Xavier\", \"langages\": [{\"nom\": \"C++\", \"age\": 40}, {\"nom\": \"Python\", \"age\": 20}]}]}'" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from json import dump\n", - "from io import StringIO\n", - "buffer = StringIO()\n", - "res = dump(data, buffer) # 1\n", - "seq = buffer.getvalue()\n", - "seq" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Lecture" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'records': [{'nom': 'Xavier',\n", - " 'pr\u00e9nom': 'Xavier',\n", - " 'langages': [{'nom': 'C++', 'age': 40}, {'nom': 'Python', 'age': 20}]}]}" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from json import load\n", - "buffer = StringIO(seq)\n", - "read = load(buffer)\n", - "read" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Limite\n", - "\n", - "Les matrices [numpy](http://www.numpy.org/) ne sont pas s\u00e9rialisables facilement." - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Object of type ndarray is not JSON serializable\n" - ] - } - ], - "source": [ - "import numpy\n", - "data = {'mat': numpy.array([0, 1])}\n", - "\n", - "buffer = StringIO()\n", - "try:\n", - " dump(data, buffer)\n", - "except Exception as e:\n", - " print(e)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Les classes ne sont pas s\u00e9rialisables non plus facilement.m" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Object of type A is not JSON serializable\n" - ] - } - ], - "source": [ - "class A:\n", - " def __init__(self, att):\n", - " self.att = att\n", - " \n", - "data = A('e')\n", - "buffer = StringIO()\n", - "try:\n", - " dump(data, buffer)\n", - "except Exception as e:\n", - " print(e) " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Pour ce faire, il faut indiquer au module [json](https://docs.python.org/3/library/json.html) comment convertir la classe en un ensemble de listes et dictionnaires et la classe [JSONEncoder](https://docs.python.org/3/library/json.html#json.JSONEncoder)." - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "'{\"classname\": \"A\", \"data\": {\"att\": \"e\"}}'" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from json import JSONEncoder\n", - "class MyEncoder(JSONEncoder):\n", - " def default(self, o):\n", - " return {'classname': o.__class__.__name__, 'data': o.__dict__}\n", - " \n", - "data = A('e')\n", - "buffer = StringIO()\n", - "res = dump(data, buffer, cls=MyEncoder)\n", - "res = buffer.getvalue()\n", - "res" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Et la relecture avec la classe [JSONDecoder](https://docs.python.org/3/library/json.html#json.JSONDecoder)." - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "<__main__.A at 0x24ddb4d27f0>" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from json import JSONDecoder\n", - "\n", - "class MyDecoder(JSONDecoder):\n", - " def decode(self, o):\n", - " dec = JSONDecoder.decode(self, o)\n", - " if isinstance(dec, dict) and dec.get('classname') == 'A':\n", - " return A(dec['data']['att'])\n", - " else:\n", - " return dec\n", - " \n", - "buffer = StringIO(res)\n", - "obj = load(buffer, cls=MyDecoder)\n", - "obj" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### S\u00e9rialisation rapide\n", - "\n", - "Le module [json](https://docs.python.org/3/library/json.html) est la librairie standard de Python mais comme la s\u00e9rialisation au format *JSON* est un besoin tr\u00e8s fr\u00e9quent, il existe des alternative plus rapide comme [ujson](https://docs.micropython.org/en/latest/pyboard/library/ujson.html)." - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [], - "source": [ - "data = {'records': [{'nom': 'Xavier', 'pr\u00e9nom': 'Xavier', \n", - " 'langages':[{'nom':'C++', 'age':40}, {'nom':'Python', 'age': 20}]}]}" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "28.4 \u00b5s \u00b1 2.46 \u00b5s per loop (mean \u00b1 std. dev. of 7 runs, 10000 loops each)\n" - ] - } - ], - "source": [ - "%timeit dump(data, StringIO())" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "3.35 \u00b5s \u00b1 677 ns per loop (mean \u00b1 std. dev. of 7 runs, 100000 loops each)\n" - ] - } - ], - "source": [ - "from ujson import dump as udump\n", - "%timeit udump(data, StringIO())" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Ces deux lignes mesures l'\u00e9criture au format JSON mais il faut aussi mesurer la lecture." - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "8.9 \u00b5s \u00b1 1.21 \u00b5s per loop (mean \u00b1 std. dev. of 7 runs, 100000 loops each)\n" - ] - } - ], - "source": [ - "buffer = StringIO()\n", - "dump(data, buffer)\n", - "res = buffer.getvalue()\n", - "%timeit load(StringIO(res))" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "3.25 \u00b5s \u00b1 243 ns per loop (mean \u00b1 std. dev. of 7 runs, 100000 loops each)\n" - ] - } - ], - "source": [ - "from ujson import load as uload\n", - "%timeit uload(StringIO(res))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "On enl\u00e8ve le temps pass\u00e9 dans la creation du buffer." - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "735 ns \u00b1 63.4 ns per loop (mean \u00b1 std. dev. of 7 runs, 1000000 loops each)\n" - ] - } - ], - "source": [ - "%timeit StringIO(res)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Pickle\n", - "\n", - "Le module [pickle](https://docs.python.org/3/library/pickle.html) effectue la m\u00eame chose mais au format binaire. Celui-ci est propre \u00e0 *Python* et ne peut \u00eatre lu d'autres langages, voire parfois par d'autres versions de .Python*." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Ecriture" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [], - "source": [ - "data = {'records': [{'nom': 'Xavier', 'pr\u00e9nom': 'Xavier', \n", - " 'langages':[{'nom':'C++', 'age':40}, {'nom':'Python', 'age': 20}]}]}" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "b'\\x80\\x03}q\\x00X\\x07\\x00\\x00\\x00recordsq\\x01]q\\x02}q\\x03(X\\x03\\x00\\x00\\x00nomq\\x04X\\x06\\x00\\x00\\x00Xavierq\\x05X\\x07\\x00\\x00\\x00pr\\xc3\\xa9nomq\\x06h\\x05X\\x08\\x00\\x00\\x00langagesq\\x07]q\\x08(}q\\t(h\\x04X\\x03\\x00\\x00\\x00C++q\\nX\\x03\\x00\\x00\\x00ageq\\x0bK(u}q\\x0c(h\\x04X\\x06\\x00\\x00\\x00Pythonq\\rh\\x0bK\\x14ueuas.'" - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from pickle import dump\n", - "from io import BytesIO\n", - "buffer = BytesIO()\n", - "res = dump(data, buffer)\n", - "seq = buffer.getvalue()\n", - "seq" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Lecture" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'records': [{'nom': 'Xavier',\n", - " 'pr\u00e9nom': 'Xavier',\n", - " 'langages': [{'nom': 'C++', 'age': 40}, {'nom': 'Python', 'age': 20}]}]}" - ] - }, - "execution_count": 18, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from pickle import load\n", - "buffer = BytesIO(seq)\n", - "read = load(buffer)\n", - "read" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Les classes\n", - "\n", - "A l'inverse du format *JSON*, les classes sont s\u00e9rialisables avec *pickle* parce que le langage utilise un format tr\u00e8s proche de ce qu'il a en m\u00e9moire. Il n'a pas besoin de conversion suppl\u00e9mentaire." - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "b'\\x80\\x03c__main__\\nA\\nq\\x00)\\x81q\\x01}q\\x02X\\x03\\x00\\x00\\x00attq\\x03X\\x01\\x00\\x00\\x00rq\\x04sb.'" - ] - }, - "execution_count": 19, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "data = A('r')\n", - "buffer = BytesIO()\n", - "res = dump(data, buffer)\n", - "seq = buffer.getvalue()\n", - "seq" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "<__main__.A at 0x24ddb4c36d8>" - ] - }, - "execution_count": 20, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "buffer = BytesIO(seq)\n", - "read = load(buffer)\n", - "read" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### R\u00e9duire la taille\n", - "\n", - "Certaines informations sont duppliqu\u00e9es et il est pr\u00e9f\u00e9rable de ne pas les s\u00e9rialiser deux fois surtout si elles sont voluminueuses." - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": {}, - "outputs": [], - "source": [ - "class B:\n", - " def __init__(self, att):\n", - " self.att1 = att\n", - " self.att2 = att" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "b'\\x80\\x03c__main__\\nB\\nq\\x00)\\x81q\\x01}q\\x02(X\\x04\\x00\\x00\\x00att1q\\x03X\\x01\\x00\\x00\\x00rq\\x04X\\x04\\x00\\x00\\x00att2q\\x05h\\x04ub.'" - ] - }, - "execution_count": 22, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "data = B('r')\n", - "buffer = BytesIO()\n", - "res = dump(data, buffer)\n", - "seq = buffer.getvalue()\n", - "seq" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Evitons maintenant de stocker deux fois le m\u00eame attribut." - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "b'\\x80\\x03c__main__\\nB\\nq\\x00)\\x81q\\x01}q\\x02X\\x03\\x00\\x00\\x00attq\\x03X\\x01\\x00\\x00\\x00rq\\x04sb.'" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "class B:\n", - " def __init__(self, att):\n", - " self.att1 = att\n", - " self.att2 = att\n", - " \n", - " def __getstate__(self):\n", - " return dict(att=self.att1)\n", - " \n", - "data = B('r')\n", - "buffer = BytesIO()\n", - "res = dump(data, buffer)\n", - "seq = buffer.getvalue()\n", - "seq" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "C'est plus court mais il faut inclure maintenant la relecture." - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "<__main__.B at 0x24ddb4b9a90>" - ] - }, - "execution_count": 24, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "class B:\n", - " def __init__(self, att):\n", - " self.att1 = att\n", - " self.att2 = att\n", - " \n", - " def __getstate__(self):\n", - " return dict(att=self.att1)\n", - " \n", - " def __setstate__(self, state):\n", - " setattr(self, 'att1', state[\"att\"])\n", - " setattr(self, 'att2', state[\"att\"])\n", - " \n", - "buffer = BytesIO(seq)\n", - "read = load(buffer)\n", - "read" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "('r', 'r')" - ] - }, - "execution_count": 25, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "read.att1, read.att2" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "4.05 \u00b5s \u00b1 349 ns per loop (mean \u00b1 std. dev. of 7 runs, 100000 loops each)\n" - ] - } - ], - "source": [ - "data = B('r')\n", - "%timeit dump(data, BytesIO())" - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "5.8 \u00b5s \u00b1 874 ns per loop (mean \u00b1 std. dev. of 7 runs, 100000 loops each)\n" - ] - } - ], - "source": [ - "%timeit load(BytesIO(seq))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La s\u00e9rialisation binaire est habituellement plus rapide dans les langages bas niveau comme C++. La m\u00eame comparaison pour un langage haut niveau tel que Python n'est pas toujours pr\u00e9visible. Il est possible d'acc\u00e9l\u00e9rer un peu les choses." - ] - }, - { - "cell_type": "code", - "execution_count": 27, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "4.05 \u00b5s \u00b1 294 ns per loop (mean \u00b1 std. dev. of 7 runs, 100000 loops each)\n" - ] - } - ], - "source": [ - "from pickle import HIGHEST_PROTOCOL\n", - "%timeit dump(data, BytesIO(), protocol=HIGHEST_PROTOCOL)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Cas des fonctions\n", - "\n", - "La s\u00e9rialisation s'applique \u00e0 des donn\u00e9es et non \u00e0 du code mais le fait de s\u00e9rialiser des fonctions est tout de m\u00eame tentant. La s\u00e9rialisation binaire fonctionne m\u00eame avec les fonctions." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Binaire" - ] - }, - { - "cell_type": "code", - "execution_count": 28, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "b'\\x80\\x03}q\\x00(X\\x01\\x00\\x00\\x00xq\\x01K\\x05X\\x01\\x00\\x00\\x00fq\\x02c__main__\\nmyfunc\\nq\\x03u.'" - ] - }, - "execution_count": 29, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def myfunc(x):\n", - " return x + 1\n", - "\n", - "data = {'x': 5, 'f': myfunc}\n", - "\n", - "from pickle import dump\n", - "from io import BytesIO\n", - "buffer = BytesIO()\n", - "res = dump(data, buffer)\n", - "buffer.getvalue()" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'x': 5, 'f': }" - ] - }, - "execution_count": 30, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from pickle import load\n", - "res = load(BytesIO(buffer.getvalue()))\n", - "res" - ] - }, - { - "cell_type": "code", - "execution_count": 30, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "6" - ] - }, - "execution_count": 31, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "res['f'](res['x'])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La s\u00e9rialisation ne conserve pas le code de la fonction, juste son nom. Cela veut dire que si elle n'est pas disponible lorsqu'elle est appel\u00e9, il sera impossible de s'en servir." - ] - }, - { - "cell_type": "code", - "execution_count": 31, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Can't get attribute 'myfunc' on \n" - ] - } - ], - "source": [ - "del myfunc\n", - "\n", - "from pickle import load\n", - "try:\n", - " load(BytesIO(buffer.getvalue()))\n", - "except Exception as e:\n", - " print(e)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Il est possible de contourner l'obstacle en utilisant le module [cloudpicke](https://github.com/cloudpipe/cloudpickle) qui stocke le code de la fonction." - ] - }, - { - "cell_type": "code", - "execution_count": 32, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "b'\\x80\\x04\\x95\\x9b\\x01\\x00\\x00\\x00\\x00\\x00\\x00}\\x94(\\x8c\\x01x\\x94K\\x05\\x8c\\x01f\\x94\\x8c\\x17cloudpickle.cloudpickle\\x94\\x8c\\x0e_fill_function\\x94\\x93\\x94(h\\x03\\x8c\\x0f_make_skel_func\\x94\\x93\\x94h\\x03\\x8c\\r_builtin_type\\x94\\x93\\x94\\x8c\\x08CodeType\\x94\\x85\\x94R\\x94(K\\x01K\\x00K\\x01K\\x02KCC\\x08|\\x00d\\x01\\x17\\x00S\\x00\\x94NK\\x01\\x86\\x94)h\\x01\\x85\\x94\\x8c\\x1f\\x94\\x8c\\x06myfunc\\x94K\\x01C\\x02\\x00\\x01\\x94))t\\x94R\\x94J\\xff\\xff\\xff\\xff}\\x94(\\x8c\\x0b__package__\\x94N\\x8c\\x08__name__\\x94\\x8c\\x08__main__\\x94u\\x87\\x94R\\x94}\\x94(\\x8c\\x07globals\\x94}\\x94\\x8c\\x08defaults\\x94N\\x8c\\x04dict\\x94}\\x94\\x8c\\x0eclosure_values\\x94N\\x8c\\x06module\\x94h\\x18\\x8c\\x04name\\x94h\\x11\\x8c\\x03doc\\x94N\\x8c\\x17_cloudpickle_submodules\\x94]\\x94\\x8c\\x0bannotations\\x94}\\x94\\x8c\\x08qualname\\x94h\\x11\\x8c\\nkwdefaults\\x94NutRu.'" - ] - }, - "execution_count": 33, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def myfunc(x):\n", - " return x + 1\n", - "\n", - "data = {'x': 5, 'f': myfunc}\n", - "\n", - "from cloudpickle import dump\n", - "from io import BytesIO\n", - "buffer = BytesIO()\n", - "res = dump(data, buffer)\n", - "buffer.getvalue()" - ] - }, - { - "cell_type": "code", - "execution_count": 33, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'x': 5, 'f': }" - ] - }, - "execution_count": 34, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "del myfunc\n", - "\n", - "from cloudpickle import load\n", - "res = load(BytesIO(buffer.getvalue()))\n", - "res" - ] - }, - { - "cell_type": "code", - "execution_count": 34, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "6" - ] - }, - "execution_count": 35, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "res['f'](res['x'])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### JSON" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La s\u00e9rialisation au format JSON ne fonctionne pas avec le module standard." - ] - }, - { - "cell_type": "code", - "execution_count": 35, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Object of type function is not JSON serializable\n" - ] - } - ], - "source": [ - "from json import dump\n", - "from io import StringIO\n", - "buffer = StringIO()\n", - "try:\n", - " dump(data, buffer) # 2\n", - "except Exception as e:\n", - " print(e)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La s\u00e9rialisation avec *ujson* ne fonctionne pas non plus m\u00eame si elle ne produit pas toujours d'erreur." - ] - }, - { - "cell_type": "code", - "execution_count": 36, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "'{\"x\":5,\"f\":{}}'" - ] - }, - "execution_count": 37, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from ujson import dump\n", - "from io import StringIO\n", - "buffer = StringIO()\n", - "try:\n", - " res = dump(data, buffer) # 3\n", - "except TypeError as e:\n", - " print(e)\n", - "buffer.getvalue()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Cas des it\u00e9rateurs\n", - "\n", - "Les it\u00e9rateurs fonctionnent avec la s\u00e9rialisation binaire mais ceci implique de stocker l'ensemble que l'it\u00e9rateur parcourt." - ] - }, - { - "cell_type": "code", - "execution_count": 37, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "b'\\x80\\x03}q\\x00(X\\x01\\x00\\x00\\x00xq\\x01K\\x05X\\x02\\x00\\x00\\x00itq\\x02cbuiltins\\niter\\nq\\x03]q\\x04(K\\x01K\\x02e\\x85q\\x05Rq\\x06K\\x00bu.'" - ] - }, - "execution_count": 38, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ens = [1, 2]\n", - "\n", - "data = {'x': 5, 'it': iter(ens)}\n", - "\n", - "from pickle import dump\n", - "from io import BytesIO\n", - "buffer = BytesIO()\n", - "res = dump(data, buffer) # 4\n", - "buffer.getvalue()" - ] - }, - { - "cell_type": "code", - "execution_count": 38, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "{'x': 5, 'it': }" - ] - }, - "execution_count": 39, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "del ens\n", - "from pickle import load\n", - "res = load(BytesIO(buffer.getvalue()))\n", - "res" - ] - }, - { - "cell_type": "code", - "execution_count": 39, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[1, 2]" - ] - }, - "execution_count": 40, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "list(res[\"it\"])" - ] - }, - { - "cell_type": "code", - "execution_count": 40, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[]" - ] - }, - "execution_count": 41, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "list(res[\"it\"])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Cas des g\u00e9n\u00e9rateurs\n", - "\n", - "Ils ne peuvent \u00eatre s\u00e9rialis\u00e9s car le langage n'a pas acc\u00e8s \u00e0 l'ensemble des \u00e9l\u00e9ments que le g\u00e9n\u00e9rateur parcourt. Il n'y a aucun moyen de s\u00e9rialiser un g\u00e9n\u00e9rateur mais on peut s\u00e9rialiser la fonction qui cr\u00e9e le g\u00e9n\u00e9rateur." - ] - }, - { - "cell_type": "code", - "execution_count": 41, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "can't pickle generator objects\n" - ] - } - ], - "source": [ - "def ensgen():\n", - " yield 1\n", - " yield 2\n", - "\n", - "data = {'x': 5, 'it': ensgen()}\n", - "\n", - "from pickle import dump\n", - "from io import BytesIO\n", - "buffer = BytesIO()\n", - "try:\n", - " dump(data, buffer)\n", - "except Exception as e:\n", - " print(e)" - ] - }, - { - "cell_type": "code", - "execution_count": 42, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.2" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/_doc/notebooks/python/serialisation_protobuf.ipynb b/_doc/notebooks/python/serialisation_protobuf.ipynb deleted file mode 100644 index 51dc3811..00000000 --- a/_doc/notebooks/python/serialisation_protobuf.ipynb +++ /dev/null @@ -1,870 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# S\u00e9rialisation avec protobuf\n", - "\n", - "[protobuf](https://fr.wikipedia.org/wiki/Protocol_Buffers) optimise la s\u00e9rialisation de deux fa\u00e7ons. Elle acc\u00e9l\u00e8re l'\u00e9criture et la lecture des donn\u00e9es et permet aussi un acc\u00e8s rapide \u00e0 une information pr\u00e9cise dans d\u00e9s\u00e9rialiser les autres. Elle r\u00e9alise cela en imposant un sch\u00e9ma strict de donn\u00e9es." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
run previous cell, wait for 2 seconds
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from jyquickhelper import add_notebook_menu\n", - "add_notebook_menu()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Sch\u00e9ma\n", - "\n", - "On r\u00e9cup\u00e8re l'exemple du [tutorial](https://developers.google.com/protocol-buffers/docs/pythontutorial)." - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [], - "source": [ - "schema = \"\"\"\n", - "syntax = \"proto2\";\n", - "\n", - "package tutorial;\n", - "\n", - "message Person {\n", - " required string name = 1;\n", - " required int32 id = 2;\n", - " optional string email = 3;\n", - "\n", - " enum PhoneType {\n", - " MOBILE = 0;\n", - " HOME = 1;\n", - " WORK = 2;\n", - " }\n", - "\n", - " message PhoneNumber {\n", - " required string number = 1;\n", - " optional PhoneType type = 2 [default = HOME];\n", - " }\n", - "\n", - " repeated PhoneNumber phones = 4;\n", - "}\n", - "\n", - "message AddressBook {\n", - " repeated Person people = 1;\n", - "}\n", - "\"\"\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Compilation\n", - "\n", - "Il faut d'abord r\u00e9cup\u00e9rer le compilateur. Cela peut se faire depuis le site de [protobuf](https://github.com/google/protobuf/releases) ou sur Linux (Ubuntu/Debian) ``apt-get install protobuf-compiler`` pour obtenir le programme ``protoc``." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "'3.5.1'" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "import google.protobuf as gp\n", - "version = gp.__version__\n", - "if version == \"3.5.2.post1\":\n", - " version = \"3.5.1\"\n", - "version" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "protoc-3.5.1-win32.zip\n" - ] - } - ], - "source": [ - "import sys, os\n", - "\n", - "if sys.platform.startswith(\"win\"):\n", - " url = \"https://github.com/google/protobuf/releases/download/v{0}/protoc-{0}-win32.zip\".format(version)\n", - " name = \"protoc-{0}-win32.zip\".format(version)\n", - " exe = 'protoc.exe'\n", - "else:\n", - " url = \"https://github.com/google/protobuf/releases/download/v{0}/protoc-{0}-linux-x86_64.zip\".format(version)\n", - " exe = 'protoc'\n", - " name = \"protoc-{0}-linux-x86_64.zip\".format(version)\n", - "\n", - "protoc = os.path.join(\"bin\", exe)\n", - "if not os.path.exists(name):\n", - " from pyquickhelper.filehelper import download\n", - " try:\n", - " download(url)\n", - " except Exception as e:\n", - " raise Exception(\"Unable to download '{0}'\\nERROR\\n{1}\".format(url, e))\n", - "else:\n", - " print(name)" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [], - "source": [ - "if not os.path.exists(protoc):\n", - " from pyquickhelper.filehelper import unzip_files\n", - " unzip_files(name,where_to='.')" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "if not os.path.exists(protoc):\n", - " raise FileNotFoundError(protoc)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "On \u00e9crit le format sur disque." - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [], - "source": [ - "with open('schema.proto', 'w') as f:\n", - " f.write(schema)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Et on peut compiler." - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n", - "----\n", - "\n" - ] - } - ], - "source": [ - "from pyquickhelper.loghelper import run_cmd\n", - "cmd = '{0} --python_out=. schema.proto'.format(protoc)\n", - "try:\n", - " out, err = run_cmd(cmd=cmd, wait=True)\n", - "except PermissionError as e:\n", - " # Sous Linux si ne marche pas avec bin/protoc, on utilise\n", - " # protoc directement \u00e0 supposer que le package\n", - " # protobuf-compiler a \u00e9t\u00e9 install\u00e9.\n", - " if not sys.platform.startswith(\"win\"):\n", - " protoc = \"protoc\"\n", - " cmd = '{0} --python_out=. schema.proto'.format(protoc)\n", - " try:\n", - " out, err = run_cmd(cmd=cmd, wait=True)\n", - " except Exception as e:\n", - " mes = \"CMD: {0}\".format(cmd)\n", - " raise Exception(\"Unable to use {0}\\n{1}\".format(protoc, mes)) from e\n", - " else:\n", - " mes = \"CMD: {0}\".format(cmd)\n", - " raise Exception(\"Unable to use {0}\\n{1}\".format(protoc, mes)) from e\n", - "print(\"\\n----\\n\".join([out, err]))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Un fichier a \u00e9t\u00e9 g\u00e9n\u00e9r\u00e9." - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "['schema_pb2.py']" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "[_ for _ in os.listdir(\".\") if '.py' in _]" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "# Generated by the protocol buffer compiler. DO NOT EDIT!\n", - "# source: schema.proto\n", - "\n", - "import sys\n", - "_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))\n", - "from google.protobuf import descriptor as _descriptor\n", - "from google.protobuf import message as _message\n", - "from google.protobuf import reflection as _reflection\n", - "from google.protobuf import symbol_database as _symbol_database\n", - "from google.protobuf import descriptor_pb2\n", - "# @@protoc_insertion_point(imports)\n", - "\n", - "_sym_db = _symbol_database.Default()\n", - "\n", - "\n", - "\n", - "\n", - "DESCRIPTOR = _descriptor.FileDescriptor(\n", - " name='schema.proto',\n", - " package='tutorial',\n", - " syntax='proto2',\n", - " serialized_pb=_b('\\n\\x0cschema.proto\\x12\\x08tutorial\\\"\\xdb\\x01\\n\\x06Person\\x12\\x0c\\n\\x04name\\x18\\x01 \\x02(\\t\\x12\\n\\n\\x02id\\x18\\x02 \\x02(\\x05\\x12\\r\\n\\x05\\x65mail\\x18\\x03 \\x01(\\t\\x12,\\n\\x06phones\\x18\\x04 \\x03(\\x0b\\x32\\x1c.tutorial.Person.PhoneNumber\\x1aM\\n\\x0bPhoneNumber\\x12\\x0e\\n\\x06number\\x18\\x01 \\x02(\\t\\x12.\\n\\x04type\\x18\\x02 \\x01(\\x0e\\x32\\x1a.tutorial.Person.PhoneType:\\x04HOME\\\"\n" - ] - } - ], - "source": [ - "with open('schema_pb2.py', 'r') as f:\n", - " content = f.read()\n", - "print(content[:1000])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Import du module cr\u00e9\u00e9 \n", - "\n", - "Pour utliser *protobuf*, il faut importer le module cr\u00e9\u00e9." - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [], - "source": [ - "import schema_pb2" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "On cr\u00e9\u00e9 un enregistrement." - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [], - "source": [ - "person = schema_pb2.Person()\n", - "person.id = 1234\n", - "person.name = \"John Doe\"\n", - "person.email = \"jdoe@example.com\"\n", - "phone = person.phones.add()\n", - "phone.number = \"555-4321\"\n", - "phone.type = schema_pb2.Person.HOME" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "name: \"John Doe\"\n", - "id: 1234\n", - "email: \"jdoe@example.com\"\n", - "phones {\n", - " number: \"555-4321\"\n", - " type: HOME\n", - "}" - ] - }, - "execution_count": 14, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "person" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## S\u00e9rialisation en cha\u00eene de caract\u00e8res" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(bytes,\n", - " b'\\n\\x08John Doe\\x10\\xd2\\t\\x1a\\x10jdoe@example.com\"\\x0c\\n\\x08555-4321\\x10\\x01')" - ] - }, - "execution_count": 15, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "res = person.SerializeToString()\n", - "type(res), res" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "4.56 \u00b5s \u00b1 447 ns per loop (mean \u00b1 std. dev. of 7 runs, 100000 loops each)\n" - ] - } - ], - "source": [ - "%timeit person.SerializeToString()" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "name: \"John Doe\"\n", - "id: 1234\n", - "email: \"jdoe@example.com\"\n", - "phones {\n", - " number: \"555-4321\"\n", - " type: HOME\n", - "}" - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "pers = schema_pb2.Person.FromString(res)\n", - "pers" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "name: \"John Doe\"\n", - "id: 1234\n", - "email: \"jdoe@example.com\"\n", - "phones {\n", - " number: \"555-4321\"\n", - " type: HOME\n", - "}" - ] - }, - "execution_count": 18, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "pers = schema_pb2.Person()\n", - "pers.ParseFromString(res)\n", - "pers" - ] - }, - { - "cell_type": "code", - "execution_count": 18, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "3.44 \u00b5s \u00b1 696 ns per loop (mean \u00b1 std. dev. of 7 runs, 100000 loops each)\n" - ] - } - ], - "source": [ - "%timeit schema_pb2.Person.FromString(res)" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "3.13 \u00b5s \u00b1 633 ns per loop (mean \u00b1 std. dev. of 7 runs, 100000 loops each)\n" - ] - } - ], - "source": [ - "%timeit pers.ParseFromString(res)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Plusieurs cha\u00eenes de caract\u00e8res" - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": {}, - "outputs": [], - "source": [ - "db = []\n", - "\n", - "person = schema_pb2.Person()\n", - "person.id = 1234\n", - "person.name = \"John Doe\"\n", - "person.email = \"jdoe@example.com\"\n", - "phone = person.phones.add()\n", - "phone.number = \"555-4321\"\n", - "phone.type = schema_pb2.Person.HOME\n", - "db.append(person)\n", - "\n", - "person = schema_pb2.Person()\n", - "person.id = 5678\n", - "person.name = \"Johnette Doette\"\n", - "person.email = \"jtdoet@example2.com\"\n", - "phone = person.phones.add()\n", - "phone.number = \"777-1234\"\n", - "phone.type = schema_pb2.Person.MOBILE\n", - "db.append(person)" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "b'-\\x00\\x00\\x00\\n\\x08John Doe\\x10\\xd2\\t\\x1a\\x10jdoe@example.com\"\\x0c\\n\\x08555-4321\\x10\\x017\\x00\\x00\\x00\\n\\x0fJohnette Doette\\x10\\xae,\\x1a\\x13jtdoet@example2.com\"\\x0c\\n\\x08777-1234\\x10\\x00'" - ] - }, - "execution_count": 22, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "import struct\n", - "from io import BytesIO\n", - "buffer = BytesIO()\n", - "for p in db:\n", - " size = p.ByteSize()\n", - " buffer.write(struct.pack('i', size))\n", - " buffer.write(p.SerializeToString())\n", - "res = buffer.getvalue()\n", - "res" - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": {}, - "outputs": [], - "source": [ - "from google.protobuf.internal.decoder import _DecodeVarint32\n", - "db2 = []\n", - "buffer = BytesIO(res)\n", - "n = 0\n", - "while True:\n", - " bsize = buffer.read(4)\n", - " if len(bsize) == 0:\n", - " # C'est fini.\n", - " break\n", - " size = struct.unpack('i', bsize)[0]\n", - " data = buffer.read(size)\n", - " p = schema_pb2.Person.FromString(data)\n", - " db2.append(p) " - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "(name: \"John Doe\"\n", - " id: 1234\n", - " email: \"jdoe@example.com\"\n", - " phones {\n", - " number: \"555-4321\"\n", - " type: HOME\n", - " }, name: \"Johnette Doette\"\n", - " id: 5678\n", - " email: \"jtdoet@example2.com\"\n", - " phones {\n", - " number: \"777-1234\"\n", - " type: MOBILE\n", - " })" - ] - }, - "execution_count": 24, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "db2[0], db2[1]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## S\u00e9rialisation JSON" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": {}, - "outputs": [], - "source": [ - "from google.protobuf.json_format import MessageToJson" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "{\n", - " \"name\": \"John Doe\",\n", - " \"id\": 1234,\n", - " \"email\": \"jdoe@example.com\",\n", - " \"phones\": [\n", - " {\n", - " \"number\": \"555-4321\",\n", - " \"type\": \"HOME\"\n", - " }\n", - " ]\n", - "}\n" - ] - } - ], - "source": [ - "print(MessageToJson(pers))" - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "76.4 \u00b5s \u00b1 7.48 \u00b5s per loop (mean \u00b1 std. dev. of 7 runs, 10000 loops each)\n" - ] - } - ], - "source": [ - "%timeit MessageToJson(pers)" - ] - }, - { - "cell_type": "code", - "execution_count": 27, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "name: \"John Doe\"\n", - "id: 1234\n", - "email: \"jdoe@example.com\"\n", - "phones {\n", - " number: \"555-4321\"\n", - " type: HOME\n", - "}" - ] - }, - "execution_count": 28, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from google.protobuf.json_format import Parse as ParseJson\n", - "js = MessageToJson(pers)\n", - "res = ParseJson(js, message=schema_pb2.Person())\n", - "res" - ] - }, - { - "cell_type": "code", - "execution_count": 28, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "75 \u00b5s \u00b1 7.77 \u00b5s per loop (mean \u00b1 std. dev. of 7 runs, 10000 loops each)\n" - ] - } - ], - "source": [ - "%timeit ParseJson(js, message=schema_pb2.Person())" - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.0" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/_doc/notebooks/python/tarabiscote.ipynb b/_doc/notebooks/python/tarabiscote.ipynb deleted file mode 100644 index 3dd9a8ca..00000000 --- a/_doc/notebooks/python/tarabiscote.ipynb +++ /dev/null @@ -1,838 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Exercices expliqu\u00e9s de programmation\n", - "\n", - "Quelques exercices autour de la copie de liste, du temps de calcul, de l'h\u00e9ritage." - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
run previous cell, wait for 2 seconds
\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from jyquickhelper import add_notebook_menu\n", - "add_notebook_menu()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Copie de listes\n", - "\n", - "La fonction ``somme`` est cens\u00e9e faire la concat\u00e9nation de toutes les listes contenues dans ``ens``. Le r\u00e9sultat retourn\u00e9 est effectivement celui d\u00e9sir\u00e9 mais la fonction modifie \u00e9galement la liste ``ens``, pourquoi ?" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[0, 1, 2, 3]\n", - "[[0, 1, 2, 3], [2, 3]]\n" - ] - } - ], - "source": [ - "def somme(tab):\n", - " l = tab[0]\n", - " for i in range(1, len(tab)):\n", - " l += tab [i]\n", - " return l\n", - "\n", - "ens = [[0,1],[2,3]] \n", - "print(somme(ens))\n", - "print(ens)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Le probl\u00e8me vient du fait qu'une affectation en *python* (seconde ligne de la fonction ``somme`` ne fait pas une copie mais cr\u00e9e un second identificateur pour d\u00e9signer la m\u00eame chose. Ici, ``l`` et ``tab[0]`` d\u00e9signent la m\u00eame liste, modifier l'une modifie l'autre. Ceci explique le r\u00e9sultat. Pour corriger, il fallait faire une copie explicite de ``tab[0]`` :" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[0, 1, 2, 3]\n", - "[[0, 1], [2, 3]]\n" - ] - } - ], - "source": [ - "import copy ###### ligne ajout\u00e9e\n", - "def somme(tab):\n", - " l = copy.copy (tab[0]) ###### ligne modifi\u00e9e\n", - " for i in range(1, len (tab)):\n", - " l += tab[i]\n", - " return l\n", - "\n", - "ens = [[0,1],[2,3]] \n", - "print(somme(ens))\n", - "print(ens)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Il \u00e9tait possible, dans ce cas, de se passer de copie en \u00e9crivant :" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[0, 1, 2, 3]\n", - "[[0, 1], [2, 3]]\n" - ] - } - ], - "source": [ - "def somme(tab) :\n", - " l = [] ###### ligne modifi\u00e9e\n", - " for i in range (0, len (tab)) : ###### ligne modifi\u00e9e\n", - " l += tab [i]\n", - " return l\n", - "\n", - "ens = [[0,1],[2,3]] \n", - "print(somme(ens))\n", - "print(ens)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Erreur de logique\n", - "\n", - "Le programme suivant fonctionne mais le r\u00e9sultat n'est pas celui escompt\u00e9. " - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "['un', 'deux', 'deux', 'deux', 'cinq']" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "l = [\"un\", \"deux\", \"trois\", \"quatre\", \"cinq\"]\n", - "\n", - "for i in range (0,len (l)) :\n", - " mi = i\n", - " for j in range (i, len (l)) :\n", - " if l[mi] < l [j] : mi = j\n", - " e = l [i]\n", - " l [mi] = l [i]\n", - " l [i] = e\n", - "\n", - "l" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Ce programme est cens\u00e9 effectuer un tri par ordre alphab\u00e9tique **d\u00e9croissant**. Le probl\u00e8me intervient lors de la permutation de l'\u00e9l\u00e9ment ``l[i]`` avec l'\u00e9l\u00e9ment ``l[mi]``. Il faut donc \u00e9crire :" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "['un', 'trois', 'quatre', 'deux', 'cinq']" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "l = [\"un\", \"deux\", \"trois\", \"quatre\", \"cinq\"]\n", - "for i in range (0,len (l)) :\n", - " mi = i\n", - " for j in range (i, len (l)) :\n", - " if l[mi] < l [j] : mi = j\n", - " e = l [mi] ######## ligne modifi\u00e9e\n", - " l [mi] = l [i]\n", - " l [i] = e\n", - " \n", - "l" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Co\u00fbt d'un algorithme\n", - "\n", - "Le co\u00fbt d'un algorithme ou d'un programme est le nombre d'op\u00e9rations (additions, multiplications, tests, ...) qu'il effectue. Il s'exprime comme un multiple d'une fonction de la dimension des donn\u00e9es que le programme manipule. Par exemple : $O(n)$, $O(n^2)$, $O(n\\ln n)$, ..." - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "1.5\n", - "1.25\n" - ] - } - ], - "source": [ - "def moyenne (tab) :\n", - " s = 0.0\n", - " for x in tab : \n", - " s += x\n", - " return s / len (tab)\n", - " \n", - "def variance (tab) :\n", - " s = 0.0\n", - " for x in tab :\n", - " t = x - moyenne (tab)\n", - " s += t * t\n", - " return s / len (tab)\n", - " \n", - "l = [ 0,1,2, 2,3,1,3,0]\n", - "print(moyenne (l))\n", - "print(variance (l))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Tout d'abord, le co\u00fbt d'un algorithme est tr\u00e8s souvent exprim\u00e9 comme un multiple de la dimension des donn\u00e9es qu'il traite. Ici, la dimension est la taille du tableau ``tab``. Par exemple, si on note ``n = len(tab)``, alors le co\u00fbt de la fonction ``moyenne`` s'\u00e9crit $O(n)$ car cette fonction fait la somme des $n$ \u00e9l\u00e9ments du tableau.\n", - "\n", - "La fonction ``variance`` contient quant \u00e0 elle un petit pi\u00e8ge. Si elle contient elle aussi une boucle, chacun des $n$ passages dans cette boucle fait appel \u00e0 la fonction ``moyenne``. Le co\u00fbt de la fonction ``variance`` est donc \n", - "$O(n^2)$.\n", - "\n", - "Il est possible d'acc\u00e9l\u00e9rer le programme car la fonction ``moyenne`` retourne le m\u00eame r\u00e9sultat \u00e0 chaque passage dans la boucle. Il suffit de m\u00e9moriser son r\u00e9sultat dans une variable avant d'entrer dans la boucle comme suit :" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "1.25" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "def variance (tab) :\n", - " s = 0.0\n", - " m = moyenne (tab)\n", - " for x in tab :\n", - " t = x - m\n", - " s += t * t\n", - " return s / len (tab)\n", - "\n", - "variance(l)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Le co\u00fbt de la fonction ``variance`` est alors $O(n)$." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Le co\u00fbt d'un algorithme peut \u00eatre \u00e9valu\u00e9 de mani\u00e8re plus pr\u00e9cise et n\u00e9cessiter un r\u00e9sultat comme $n^2 + 3n + 2$ mais cette exigence est rarement utile pour des langages comme *python*. L'expression ``for x in tab:`` cache n\u00e9cessairement un test qu'il faudrait prendre en compte si plus de pr\u00e9cision \u00e9tait exig\u00e9e. Il faudrait \u00e9galement se tourner vers un autre langage de programmation, plus pr\u00e9cis dans sa syntaxe. Par exemple, lorsqu'on con\u00e7oit un programme avec le langage C ou C++, \u00e0 partir du m\u00eame code informatique, on peut construire deux programmes ex\u00e9cutables. Le premier (ou version *debug*), lent, sert \u00e0 la mise au point : il inclut des tests suppl\u00e9mentaires permettant de v\u00e9rifier \u00e0 chaque \u00e9tape qu'il n'y a pas eu d'erreur (une division par z\u00e9ro par exemple). Lorsqu'on est s\u00fbr que le programme marche, on construit la seconde version (ou *release*), plus rapide, dont ont \u00e9t\u00e9 \u00f4t\u00e9s tous ces tests de conception devenus inutiles. \n", - "\n", - "*python* aboutit \u00e0 un programme lent qui inclut une quantit\u00e9 de tests invisibles pour celui qui programme mais qui d\u00e9tecte les erreurs plus vite et favorise une conception rapide. Il n'est pas adapt\u00e9 au traitement d'information en grand nombre et fait une multitude d'op\u00e9rations cach\u00e9es." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## H\u00e9ritage double\n", - "\n", - "On a besoin dans un programme de cr\u00e9er une classe ``carre`` et une classe ``rectangle``. Mais on ne sait pas quelle classe doit h\u00e9riter de l'autre. Dans le premier programme, ``rectangle`` h\u00e9rite de ``carre``." - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "12" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "class carre:\n", - " def __init__ (self, a):\n", - " self.a = a\n", - " def surface (self):\n", - " return self.a ** 2\n", - "\n", - "class rectangle(carre):\n", - " def __init__ (self, a,b) :\n", - " carre.__init__(self,a)\n", - " self.b = b\n", - " def surface (self):\n", - " return self.a * self.b\n", - "\n", - "rectangle(3, 4).surface()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Dans le second programme, c'est la classe ``carre`` qui h\u00e9rite de la classe ``rectangle``." - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "9" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "class rectangle :\n", - " def __init__ (self, a,b) :\n", - " self.a = a\n", - " self.b = b\n", - " def surface (self) :\n", - " return self.a * self.b\n", - "\n", - "class carre (rectangle) :\n", - " def __init__ (self, a) :\n", - " rectangle.__init__ (self, a,a)\n", - " def surface (self) :\n", - " return self.a ** 2\n", - " \n", - "carre(3).surface()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "* Dans le second programme, est-il n\u00e9cessaire de red\u00e9finir la m\u00e9thode ``surface`` dans la classe ``carre`` ?\n", - "* Quel est le sens d'h\u00e9ritage qui vous para\u00eet le plus cens\u00e9, ``class rectangle(carre)`` ou ``class carre(rectangle)`` ?\n", - "* On d\u00e9sire ajouter la classe ``losange``. Est-il plus simple que ``rectangle`` h\u00e9rite de la classe ``carre`` ou l'inverse pour introduire la classe ``losange`` ? Quel ou quels attributs suppl\u00e9mentaires faut-il introduire dans la classe ``losange`` ?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Le principe de l'h\u00e9ritage est qu'une classe ``carre`` h\u00e9ritant de la classe ``rectangle`` h\u00e9rite de ses attributs et m\u00e9thodes. L'aire d'un carr\u00e9 est \u00e9gale \u00e0 celle d'un rectangle dont les c\u00f4t\u00e9s sont \u00e9gaux, par cons\u00e9quent, la m\u00e9thode ``surface`` de la classe retourne la m\u00eame valeur que celle de la classe ``rectangle``. Il n'est donc pas n\u00e9cessaire de la red\u00e9finir.\n", - "* D'apr\u00e8s la r\u00e9ponse de la premi\u00e8re question, il para\u00eet plus logique de consid\u00e9rer que ``carre`` h\u00e9rite de ``rectangle``.\n", - "* Un losange est d\u00e9fini par un c\u00f4t\u00e9 et un angle ou un c\u00f4t\u00e9 et la longueur d'une de ses diagonales, soit dans les deux cas, deux param\u00e8tres. Dans la premi\u00e8re question, il paraissait plus logique que la classe la plus sp\u00e9cifique h\u00e9rite de la classe la plus g\u00e9n\u00e9rale afin de b\u00e9n\u00e9ficier de ses m\u00e9thodes. Pour introduire le losange, il para\u00eet plus logique de partir du plus sp\u00e9cifique pour aller au plus g\u00e9n\u00e9ral afin que chaque classe ne contienne que les informations qui lui sont n\u00e9cessaires." - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "8.183676841431136" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "import math\n", - "\n", - "class carre :\n", - " def __init__ (self, a) :\n", - " self.a = a\n", - " def surface (self) :\n", - " return self.a ** 2\n", - "\n", - "class rectangle (carre) :\n", - " def __init__ (self, a,b) :\n", - " carre.__init__(self,a)\n", - " self.b = b\n", - " def surface (self) :\n", - " return self.a * self.b\n", - "\n", - "class losange (carre) :\n", - " def __init__ (self, a,theta) :\n", - " carre.__init__(self,a)\n", - " self.theta = theta\n", - " def surface (self) :\n", - " return self.a * math.cos (self.theta) * self.a * math.sin (self.theta) * 2\n", - " \n", - "losange(3, 1).surface()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Le sens de l'h\u00e9ritage d\u00e9pend de vos besoins. Si l'h\u00e9ritage porte principalement sur les m\u00e9thodes, il est pr\u00e9f\u00e9rable de partir du plus g\u00e9n\u00e9ral pour aller au plus sp\u00e9cifique. La premi\u00e8re classe sert d'interface pour toutes ses filles. Si l'h\u00e9ritage porte principalement sur les attributs, il est pr\u00e9f\u00e9rable de partir du plus sp\u00e9cifique au plus g\u00e9n\u00e9ral. Dans le cas g\u00e9n\u00e9ral, il n'y a pas d'h\u00e9ritage plus sens\u00e9 qu'un autre mais pour un probl\u00e8me donn\u00e9, il y a souvent un h\u00e9ritage plus sens\u00e9 qu'un autre. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Pr\u00e9cision des calculs\n", - "\n", - "Voici un aper\u00e7u de la pr\u00e9cision des calculs pour le calcul $1 - 10^{-n}$. L'exercice a pour but de montrer que l'ordinateur ne fait que des calculs approch\u00e9s et que la pr\u00e9cision du r\u00e9sultat d\u00e9pend de la m\u00e9thode num\u00e9rique employ\u00e9e." - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "0 \t 0.9 \t 0.1 \t 0.31622776601683794\n", - "1 \t 0.99 \t 0.01 \t 0.1\n", - "2 \t 0.999 \t 0.001 \t 0.03162277660168379\n", - "3 \t 0.9999 \t 0.0001 \t 0.01\n", - "4 \t 0.99999 \t 1e-05 \t 0.0031622776601683794\n", - "5 \t 0.999999 \t 1.0000000000000002e-06 \t 0.001\n", - "6 \t 0.9999999 \t 1.0000000000000002e-07 \t 0.000316227766016838\n", - "7 \t 0.99999999 \t 1.0000000000000002e-08 \t 0.0001\n", - "8 \t 0.999999999 \t 1.0000000000000003e-09 \t 3.1622776601683795e-05\n", - "9 \t 0.9999999999 \t 1.0000000000000003e-10 \t 1e-05\n", - "10 \t 0.99999999999 \t 1.0000000000000003e-11 \t 3.1622776601683796e-06\n", - "11 \t 0.999999999999 \t 1.0000000000000002e-12 \t 1.0000000000000002e-06\n", - "12 \t 0.9999999999999 \t 1.0000000000000002e-13 \t 3.1622776601683797e-07\n", - "13 \t 0.99999999999999 \t 1.0000000000000002e-14 \t 1.0000000000000001e-07\n", - "14 \t 0.999999999999999 \t 1e-15 \t 3.162277660168379e-08\n", - "15 \t 0.9999999999999999 \t 1.0000000000000001e-16 \t 1e-08\n", - "16 \t 1.0 \t 1e-17 \t 3.1622776601683795e-09\n", - "17 \t 1.0 \t 1e-18 \t 1e-09\n", - "18 \t 1.0 \t 1.0000000000000001e-19 \t 3.1622776601683795e-10\n" - ] - } - ], - "source": [ - "x = 1.0\n", - "for i in range (0,19) :\n", - " x = x / 10\n", - " print(i, \"\\t\", 1.0 - x, \"\\t\", x, \"\\t\", x **(0.5))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Le programme montre que l'ordinateur affiche ``1`` lorsqu'il calcule $1-10^{-17}$. Cela signifie que la pr\u00e9cision des calculs en *python* est au mieux de $10^{-16}$. C'est encore moins bon dans le cas de *float* ou r\u00e9el simple pr\u00e9cision cod\u00e9 sur 4 octets au lieu de 8 pour les *double*." - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "0 \t 0.8999999985098839 \t 0.1 \t 0.3162277683729184\n", - "1 \t 0.9900000002235174 \t 0.01 \t 0.0999999988824129\n", - "2 \t 0.9990000000689179 \t 0.0009999999 \t 0.03162277551199656\n", - "3 \t 0.9999000000098022 \t 9.999999e-05 \t 0.009999999509891484\n", - "4 \t 0.9999900000011621 \t 9.999999e-06 \t 0.0031622774764217087\n", - "5 \t 0.9999990000001162 \t 9.999999e-07 \t 0.0009999999418942008\n", - "6 \t 0.999999900000013 \t 9.999999e-08 \t 0.0003162277453952373\n", - "7 \t 0.999999990000001 \t 9.999999e-09 \t 9.999999525523424e-05\n", - "8 \t 0.9999999990000001 \t 9.999999e-10 \t 3.162277439909038e-05\n", - "9 \t 0.9999999999 \t 9.999999e-11 \t 9.99999937286775e-06\n", - "10 \t 0.99999999999 \t 9.999999e-12 \t 3.162277516708525e-06\n", - "11 \t 0.999999999999 \t 9.999999e-13 \t 9.999999437919884e-07\n", - "12 \t 0.9999999999999 \t 9.999999e-14 \t 3.162277525279896e-07\n", - "13 \t 0.99999999999999 \t 9.999999e-15 \t 9.999999488741863e-08\n", - "14 \t 0.999999999999999 \t 9.999999e-16 \t 3.162277498494361e-08\n", - "15 \t 0.9999999999999999 \t 9.999999e-17 \t 9.999999422567411e-09\n", - "16 \t 1.0 \t 9.999999e-18 \t 3.162277503725911e-09\n", - "17 \t 1.0 \t 9.999999e-19 \t 9.999999712080637e-10\n", - "18 \t 1.0 \t 1e-19 \t 3.1622776099917643e-10\n" - ] - } - ], - "source": [ - "import numpy\n", - "x = numpy.float32(1.0)\n", - "for i in range (0,19) :\n", - " x = x / numpy.float32(10)\n", - " print(i, \"\\t\", 1.0 - x, \"\\t\", x, \"\\t\", x **(0.5))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "On \u00e9crit une classe ``matrice_carree_2`` qui repr\u00e9sente une matrice carr\u00e9e de dimension 2." - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "0.999999999999\n", - "1.0\n" - ] - } - ], - "source": [ - "class matrice_carree_2 :\n", - " def __init__ (self, a,b,c,d) :\n", - " self.a, self.b, self.c, self.d = a,b,c,d\n", - " \n", - " def determinant (self) :\n", - " return self.a * self.d - self.b * self.c\n", - " \n", - "m1 = matrice_carree_2 (1.0,1e-6,1e-6,1.0)\n", - "m2 = matrice_carree_2 (1.0,1e-9,1e-9,1.0)\n", - "print(m1.determinant())\n", - "print(m2.determinant())" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La seconde valeur est donc fausse. On consid\u00e8re maintenant la matrice $M = \\left(\\begin{array}{cc} 1 & 10^{-9} \\\\ 10^{-9} & 1 \\end{array} \\right)$.\n", - "\n", - "On pose $D = \\det(M) = 1 - 10^{-18}$ et $T = tr(M) = 2$. $\\Delta$ est le d\u00e9terminant de $M$ et $T$ sa trace. On sait que les valeurs propres de $M$ not\u00e9es $\\lambda_1, \\lambda_2$ v\u00e9rifient :\n", - "\n", - "$$\n", - "\\begin{array}{lll}\n", - "D &=& \\lambda_1 \\lambda_2 \\\\\n", - "T &=& \\lambda_1 + \\lambda_2\n", - "\\end{array}\n", - "$$\n", - "\n", - "On v\u00e9rifie que $(x - \\lambda_1)(x - \\lambda_2) = x^2 - x (\\lambda_1 + \\lambda_2) + \\lambda_1 \\lambda_2$. Les valeurs propres de $M$ sont donc solutions de l'\u00e9quation : $x^2 - T x + D = 0$. \n", - "\n", - "Le discriminant de ce polyn\u00f4me est $\\Delta = T^2 - 4 D$. On peut donc exprimer les valeurs propres de la matrice $M$ par : \n", - "\n", - "$$\n", - "\\begin{array}{lll}\n", - "\\lambda_1 &=& \\frac{T - \\sqrt{\\Delta}}{2} \\\\\n", - "\\lambda_2 &=& \\frac{T + \\sqrt{\\Delta}}{2} \n", - "\\end{array}\n", - "$$\n", - "\n", - "On ajoute donc la m\u00e9thode suivante \u00e0 la classe ``matrice_carree_2`` :" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(0.9999990000110609, 1.000000999988939)\n", - "(1.0, 1.0)\n" - ] - } - ], - "source": [ - "class matrice_carree_2 :\n", - " def __init__ (self, a,b,c,d) :\n", - " self.a, self.b, self.c, self.d = a,b,c,d\n", - " \n", - " def determinant (self) :\n", - " return self.a * self.d - self.b * self.c\n", - " \n", - " def valeurs_propres (self) :\n", - " det = self.determinant ()\n", - " trace = self.a + self.d\n", - " delta = trace ** 2 - 4 * det\n", - " l1 = 0.5 * (trace - (delta ** (0.5)) )\n", - " l2 = 0.5 * (trace + (delta ** (0.5)) )\n", - " return l1,l2\n", - " \n", - "m1 = matrice_carree_2 (1.0,1e-6,1e-6,1.0)\n", - "m2 = matrice_carree_2 (1.0,1e-9,1e-9,1.0)\n", - "print(m1.valeurs_propres())\n", - "print(m2.valeurs_propres())" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "D'apr\u00e8s l'\u00e9nonc\u00e9, les valeurs propres de la matrice $M_2$ sont les sommes de celles de la matrice $I$ et de la matrice $M'_2$. Par cons\u00e9quent, ce second calcul m\u00e8ne au r\u00e9sultat suivant :\n", - "\n", - "```\n", - "l1 = 1-1e-9 = 0.99999999900000002828\n", - "l2 = 1+ 1e-9 = 1.000000001\n", - "```" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La pr\u00e9cision des calculs prend sont importance ici. On d\u00e9compose la matrice $M = \\left(\\begin{array}{cc} 1 & 0 \\\\ 0 & 1 \\end{array}\\right) + \\left(\\begin{array}{cc} 0 & 10^{-9} \\\\ 10^{-9} & 0 \\end{array}\\right) = I + M'$. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "On peut d\u00e9montrer que si $\\lambda$ est une valeur propre de $M'$, alors $1 + \\lambda$ est une valeur propre de $M$. Que donne le calcul des valeurs propres de $M'$ si on utilise la m\u00e9thode ``valeurs_propres`` pour ces deux matrices ?\n", - "\n", - "On consid\u00e8re maintenant la matrice $M'' = \\left(\\begin{array}{cc} 1 & 10^{-9} \\\\ -10^{-9} & 1 \\end{array}\\right)$. En d\u00e9composant la matrice $M''$ de la m\u00eame mani\u00e8re qu'\u00e0 la question 4, quelles sont les valeurs propres retourn\u00e9es par le programme pour la matrice $M''$ ? Quelles sont ses vraies valeurs propres ?" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "La matrice $M''$ n'est en fait pas diagonalisable, c'est-\u00e0-dire que $tr(M'')^2 - 4 * \\det{M''} = 4 - 4 (1 + 10^{-18}) < 0$. Or le calcul propos\u00e9 par la question 3 aboutit au m\u00eame r\u00e9sultat faux que pour la matrice $M_2$, les deux valeurs propres trouv\u00e9es seront \u00e9gales \u00e0 1. Si on applique la d\u00e9composition propos\u00e9e :\n", - "$M'' = I + \\left(\\begin{array}{cc}0&-10^{-9}\\\\10^{-9}&0\\end{array}\\right) = I + N''$\n", - "Le programme calcule sans erreur le discriminant n\u00e9gatif de la matrice $N''$ qui n'est pas diagonalisable. Il est donc impossible d'obtenir des valeurs propres r\u00e9elles pour la matrice $M''$ avec cette seconde m\u00e9thode. Cette question montre qu'une erreur d'approximation peut rendre une matrice diagonalisable alors qu'elle ne l'est pas. Il faut bien choisir cette pr\u00e9cision en fonction de la destination des calculs." - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.0" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/_todo/chap6_module.tex b/_todo/chap6_module.tex deleted file mode 100644 index 1037d261..00000000 --- a/_todo/chap6_module.tex +++ /dev/null @@ -1,911 +0,0 @@ -\input{../../common/livre_begin.tex}% -\firstpassagedo{\input{python_cours_titre.tex}} -\input{../../common/livre_table_begin.tex}% -%\firstpassagedo{\input{python_cours_chapter.tex}} - - - - -%------------------------------------------------------------------------------------------------------------- -\chapter{Modules} -\label{chap_module} -%------------------------------------------------------------------------------------------------------------- - -Il est souvent prfrable de rpartir le code d'un grand programme sur plusieurs fichiers. Parmi tous ces fichiers, un seul est considr comme fichier principal, il contient son point d'entre, les premires instructions excutes. Les autres fichiers sont considrs comme des modules, en quelque sorte, des annexes qui contiennent tout ce dont le fichier principal a besoin. - - -\section{Modules et fichiers} - -\subsection{Exemple} - -\indexfr{module}\indexfr{point d'entre} -Cet exemple montre comment rpartir un programme sur deux fichiers. Le premier est appel \textit{module} car il n'inclut pas le point d'entre du programme. - - \begin{xdefinition}{point d'entre du programme} - Le point d'entre d'un programme est la premire instruction excute par l'ordinateur lors de l'excution - de ce programme. - \end{xdefinition} - -\indexkeyword{import}\indexmoduleund{import} -Cet exemple de module contient une fonction, une classe et une variable. Ces trois lments peuvent tre utiliss par n'importe quel fichier qui importe ce module. Le nom d'un module correspond au nom du fichier sans son extension. -\indexfrr{module}{nom} - -\begin{center}\begin{tabular}{@{}lr@{}} -\textbf{Fichier~: \codes{module\_exemple.py}} & \textbf{Fichier~: \codes{exemple.py}} \\ -\begin{minipage}{6.7cm} -\inputcodes{../python_cours/programme/module_exemple.py}{exemple de module}{} -\end{minipage} -& -\begin{minipage}{6.7cm} -\inputcodes{../python_cours/programme/exemple.py}{import de module}{ (1)} -\end{minipage} -\end{tabular} -\end{center} - - -Pour importer un module, il suffit d'insrer l'instruction \codes{import \; nom\_module} avant d'utiliser une des choses qu'il dfinit. Ces importations sont souvent regroupes au dbut du programme, elles sont de cette faon mises en vidence mme s'il est possible de les faire n'importe o. L'exemple ci-dessus droite importe le module dfini gauche. Les modules commencent le plus souvent par une chane de caractres comme dans l'exemple prcdent, celle-ci contient l'aide associe ce module. Elle apparat avec l'instruction \codes{help(module\_exemple)}. - -% -Rien ne diffrencie les deux fichiers \codes{module\_exemple.py} et \codes{exemple.py} except le fait que le second utilise des lments dfinis par le premier. Dans un programme compos de plusieurs fichiers, un seul contient le point d'entre et tous les autres sont des modules. - -La syntaxe d'appel d'un lment d'un module est identique celle d'une classe. On peut considrer un module comme une classe avec ses mthodes et ses attributs la seule diffrence qu'il ne peut y avoir qu'une seule instance d'un mme module. La rptition de l'instruction \codes{import \; module\_exemple} n'aura aucun effet~: un module n'est import que lors de la premire instruction \codes{import \; nom\_module} rencontr lors de l'excution du programme. - -\begin{xremark}{fichier \codes{*.pyc}} -L'utilisation d'un module qu'on a soi-mme conu provoque l'apparition d'un fichier d'extension~\codes{pyc}.\ifnotellipse{\indexfrr{extension de fichier}{pyc}}\indexfr{pyc}\indexfr{bytecode}Il correspond la traduction du module en \textit{bytecode} plus rapidement exploitable par l'interprteur \python. Ce fichier est gnr chaque modification du module. Lorsqu'un module est import, \pythons vrifie la date des deux fichiers d'extension \codes{py} et \codes{pyc}. Si le premier est plus rcent, le second est recr. Cela permet un gain de temps lorsqu'il y a un grand nombre de modules. Il faut faire attention lorsque le fichier source d'extension \codes{py} est supprim, il est alors encore possible de l'importer tant que sa version d'extension \codes{pyc} est prsente.\indexext{pyc}\indexext{py} -\end{xremark} - -\begin{xremark}{recharger un module} -Le module \codes{module\_exemple} contient une variable \codes{exemple\_variable} peut tre modifie au cours de l'excution du programme. Il est possible de revenir sa valeur initiale en forant \pythons recharger le module grce la fonction \codes{reload}.\indexfonction{reload}\vspaceneg\indexexemples{\codesindex{reload}}{} -\begin{verbatimx} -import module_exemple -module_exemple.exemple_variable = 10 -reload (module_exemple) -print module_exemple.exemple_variable # affiche 3 -\end{verbatimx} -\end{xremark} - - -\subsection{Autres syntaxes} - -Il existe trois syntaxes diffrentes pour importer un module. La premire est dcrite au paragraphe prcdent. Il en existe une autre qui permet d'affecter un module un identificateur diffrent du nom du fichier dans lequel il est dcrit. En ajoutant l'instruction \codes{as} suivi d'un autre nom \codes{alias}, le module sera dsign par la suite par l'identificateur \codes{alias} comme le montre l'exemple suivant. - -\textbf{Fichier~: \codes{exemple2.py}} \vspace{-0.3cm} -\inputcodes{../python_cours/programme/exemple2.py}{import de module}{ (2)} - -\indexkeyword{import}\indexkeyword{from}\indexkeyword{as}\indexfrr{module}{identificateur} -Une autre syntaxe permet de se passer d'identificateur pour un module en utilisant le mot-cl \codes{from}. En utilisant la syntaxe \codes{from \; module \; import \; *}, tous les identificateurs (fonctions, classes, variables) sont directement accessibles sans les faire prcder d'un identificateur de module ainsi que le montre l'exemple suivant. - -\textbf{Fichier~: \codes{exemple3.py}} \vspace{-0.3cm} -\inputcodes{../python_cours/programme/exemple3.py}{import de module}{ (3)} -% -La partie \codes{import \; *} permet d'importer toutes les classes, attributs ou fonctions d'un module mais il est possible d'crire \codes{from \; module\_exemple \; import \; exemple\_class} pour n'importer que cette classe. La fonction \codes{exemple\_fonction} ne sera pas accessible. Toutefois, cette syntaxe est dconseille. Elle rduit la longueur de certaines fonctions ou classes puisqu'il n'est plus besoin de faire apparatre le module d'o elle proviennent et cela ne permet plus de distinguer une classe ou une fonction dfinie dans ce fichier de celles dfinies dans un autre module import. - -Il existe une dernire syntaxe d'importation d'un module qui est utile quand on ne sait pas encore au moment d'criture du programme le nom du module importer. Celui-ci sera prcis l'aide d'une chane de caractres au moyen de la fonction \codes{\_\_import\_\_}.\indexfonction{\_\_import\_\_} - -\textbf{Fichier~: \codes{exemple4.py}} \vspace{-0.3cm} -\inputcodes{../python_cours/programme/exemple4.py}{import de module}{ (4)} - - - -\subsection{Nom d'un module} -\indexfrr{module}{nom} -Le nom d'un module est dfini par le nom du fichier sous lequel il est enregistr. Dans l'exemple du paragraphe prcdent, le module avait pour nom de fichier \codes{module\_exemple.py}, le nom de ce module est donc \codes{module\_exemple}. - -Nanmoins, ce module peut galement tre excut comme un programme normal. Si tel est le cas, son nom devient \codes{\_\_main\_\_}. C'est pourquoi, les quelques lignes qui suivent apparaissent souvent. Elles ne sont excutes que si ce fichier a pour nom \codes{\_\_main\_\_}. Un seul fichier peut porter ce nom~: celui qui contient le point d'entre. -\indexfr{point d'entre} -\indexoperateur{\_\_name\_\_}\indexfr{\codesindex{\_\_main\_\_}} -% -\indexexemples{\codesindex{\_\_name\_\_}}{} -\vspaceneg -\begin{verbatimx} -if __name__ == "__main__" : - print "ce fichier est le programme principal" -\end{verbatimx} -\vspaceneg -% -Cette astuce est rgulirement utilise pour tester les fonctions et classes dfinies dans un module. Etant donn que cette partie n'est excute que si ce fichier est le programme principal, ajouter du code aprs le test \codes{if \;\_\_name\_\_ == "\_\_main\_\_" :} n'a aucune incidence sur tout programme incluant ce fichier comme module. - -\subsection{Emplacement d'un module} -\indexfrr{module}{emplacement}\indexfrr{module}{rpertoire} -Lorsque le module est plac dans le mme rpertoire que le programme qui l'utilise, l'instruction \codes{import \; nom\_module\_sans\_extension} suffit. Cette instruction suffit galement si ce module est plac dans le rpertoire \codes{site-packages} prsent dans le rpertoire d'installation de \python. Si ce n'est pas le cas, il faut prciser l'interprteur \pythons o il doit chercher ce module~: -% -\vspaceneg -\indexexemples{\codesindex{sys.path}}{} -\begin{verbatimx} -import sys -sys.path.append (sys.path [0] + "/../common") -################ sys.path [0] = rpertoire de ce programme -import nom_module -\end{verbatimx} -\vspaceneg -% -La variable \codes{sys.path} contient les rpertoires o \pythons va chercher les modules. Le premier d'entre eux est le rpertoire du programme. Il suffit d'ajouter cette liste le rpertoire dsir, ici, un rpertoire appel \codes{common} situ au mme niveau que le rpertoire du programme. A ce sujet, il est conseill d'utiliser le plus souvent possible des chemins relatifs et non absolus\footnote{Depuis un rpertoire courant, les chemins relatifs permettent de faire rfrence d'autres rpertoires sans avoir prendre en compte leur emplacement sur le disque dur contrairement aux chemins absolus comme \httpstyle{C:/Python26/python.exe}.}. De cette faon, on peut recopier le programme et ses modules un autre endroit du disque dur sans altrer leur fonctionnement. \indexfr{chemin relatif, absolu}\indexfrr{module}{chemin relatif} - - -\subsection{Ajouter un module en cours d'excution} - -De la mme faon que \pythons est capable d'inclure de nouvelles portions de code en cours d'excution\footnote{grce la fonction \codesnote{exec}}, il est galement capable d'inclure en cours d'excution des modules dont on ne connat pas le nom au dbut de l'excution. Cela s'effectue grce la fonction \codes{\_\_import\_\_}\indexfonction{\_\_import\_\_} dj prsente ci-dessus. Nanmoins, cette fonction ne peut pas importer un module si celui-ci est dsign par un nom de fichier incluant son rpertoire. Il faut d'abord dterminer le rpertoire o est le module grce la fonction \codes{split}\indexfonction{split} du module \codes{os.path}.\indexmoduleint{os.path} Le programme suivant illustre cette possibilit en proposant une fonction qui importe un module connaissant le nom du fichier qui le contient. -% -\vspaceneg -\inputcode{../python_cours/programme/exemple_import.py}{import dynamique de module} - - -\subsection{Liste des modules imports} - -Le dictionnaire \codes{modules} du module \codes{sys}\indexmoduleint{sys} contient l'ensemble des modules imports. Le programme suivant affiche cette liste. -\vspaceneg -\indexexemples{liste des modules}{} -\begin{verbatimx} -import sys -for m in sys.modules : - print m, " " * (14 - len(str(m))), sys.modules [m] -\end{verbatimx} -\vspaceneg -% -\begin{verbatimx} -os -os.path -re -site -sys -types -... -\end{verbatimx} -\vspaceneg -% -Lorsque le programme stipule l'import d'un module, \pythons vrifie s'il n'est pas dj prsent dans cette liste. Dans le cas contraire, il l'importe. Chaque module n'est import qu'une seule fois. La premire instruction \codes{import \; module\_exemple} rencontre introduit une nouvelle entre dans le dictionnaire \codes{sys.modules}~: -% -\vspaceneg -\begin{verbatimx} -module_exemple -\end{verbatimx} -\vspaceneg -% -Le dictionnaire \codes{sys.modules} peut tre utilis pour vrifier la prsence d'un module ou lui assigner un autre identificateur. Un module est un objet qui n'autorise qu'une seule instance. -% -\vspaceneg -\indexexemples{existence d'un module}{} -\begin{verbatimx} -if "module_exemple" in sys.modules : - m = sys.modules ["module_exemple"] - m.exemple_fonction () -\end{verbatimx} - - -\subsection{Attributs communs tout module} - -Une fois imports, tous les modules possdent cinq attributs qui contiennent des informations comme leur nom, le chemin du fichier correspondant, l'aide associe. - -\begin{center}\begin{tabularx}{\textwidth}{|lX|} \hline -\codes{\_\_all\_\_} & Contient toutes les variables, fonctions, classes du module.\\ \hline -\codes{\_\_builtins\_\_} & Ce dictionnaire contient toutes les fonctions et classes inhrentes au langage \pythons - utilises par le module.\\ \hline -\codes{\_\_doc\_\_} & Contient l'aide associe au module.\\ \hline -\codes{\_\_file\_\_} & Contient le nom du fichier qui dfinit le module. Son extension est \codes{pyc}).\\ \hline -\codes{\_\_name\_\_} & Cette variable contient a priori le nom du module sauf si le module - est le point d'entre du programme auquel cas cette variable contient \codes{"\_\_main\_\_"}.\\ \hline -\end{tabularx}\end{center} -% -Ces attributs sont accessibles si le nom du module est utilis comme prfixe. Sans prfixe, ce sont ceux du module lui-mme. -% -\vspaceneg -\begin{verbatimx} -import os -print os.__name__, os.__doc__ -if __name__ == "__main__" : print "ce fichier est le point d'entre" -else : print "ce fichier est import" -\end{verbatimx} - -\subsection{Arborescence de modules, paquetage}\indexfrr{module}{arborescence}\indexfr{paquetage}\indexfrr{module}{paquetage} - -Lorsque le nombre de modules devient consquent, il est parfois souhaitable de rpartir tous ces fichiers dans plusieurs rpertoires. Il faudrait alors inclure tous ces rpertoires dans la liste \codes{sys.path} du module \codes{sys} ce qui parat fastidieux. \pythons propose la dfinition de paquetage, ce dernier englobe tous les fichiers \pythons d'un rpertoire condition que celui-ci contienne un fichier \codes{\_\_init\_\_.py} qui peut tre vide.\indexfr{\codesindex{\_\_init\_\_.py}}\indexmoduleund{\_\_init\_\_.py} La figure~\ref{pydoc_exemple_module_init_arbo} prsente une telle organisation et l'exemple suivant explicite comment importer chacun de ces fichiers sans avoir modifier les chemins d'importation. -% - \begin{figure}[ht] - \figureoneimage{ \caption{Arborescence de modules, un paquetage est dfini par un ensemble de fichiers - \pythons et d'un fichier \codescaption{\_\_init\_\_.py}. Les rpertoires sont grises tandis que les - fichiers apparaissent avec leur extension.} } - {\includegraphics[width=4.5cm]{\filextellipse{../python_cours/image/arbo}{../python_cours/image_ellipse/arbo}}} - {\label{pydoc_exemple_module_init_arbo}} - \end{figure} -% -\vspaceneg -\begin{verbatimx} -import mesmodules.extension -import mesmodules.part1.niveaudeux -import mesmodules.part2.niveaudeuxbis -\end{verbatimx} -\vspaceneg -% -Lors de la premire instruction \codes{import \; mesmodules.extension}, le langage \pythons ne s'intresse pas qu'au seul fichier \codes{extension.py}, il excute galement le contenu du fichier \codes{\_\_init\_\_.py}. Si cela est ncessaire, c'est ici qu'il faut insrer les instructions excuter avant l'import de n'importe quel module du paquetage. - - - - -\section{Modules internes} - -\pythons dispose de nombreux modules prinstalls\footnote{La page \httpstyle{http://docs.python.org/modindex.html} recense tous les modules disponibles avec \python.}. Cette liste est trop longue pour figurer dans ce document, elle est aussi susceptible de s'allonger au fur et mesure du dveloppement du langage \python. La table~\ref{module_utilise_table} (page~\pageref{module_utilise_table}) regroupe les modules les plus utiliss. - -\begin{table}[ht] -\begin{center}\begin{tabularx}{\textwidth}{|l|X|}\hline -\codes{calendar} & Grer les calendriers, les dates (voir chapitre~\ref{chap_fichier}). \ifnotellipse{\indexmoduleint{calendar}}\\ \hline -\codes{cgi} & Utilis dans les scripts CGI (programmation Internet) \ifnotellipse{\indexmoduleint{cgi}}\\ \hline -\codes{cmath} & Fonctions mathmatiques complexes. \ifnotellipse{\indexmoduleint{cmath}}\\ \hline -\codes{codecs} & Jeux de caractres (voir paragraphe~\ref{para_cosedescodes}) \ifnotellipse{\indexmoduleint{codecs}}\\ \hline -\codes{copy} & Copies d'instances de classes. \ifnotellipse{\indexmoduleint{copy}}\\ \hline -\codes{csv} & Gestion des fichiers au format CSV (utiliss par \textit{Microsoft Excel}).\ifnotellipse{\indexoutil{Microsoft Excel}} \ifnotellipse{\indexmoduleint{csv}}\\ \hline -\codes{datetime} & Calculs sur les dates et heures (voir chapitre~\ref{chap_fichier}). \indexmoduleint{datetime}\\ \hline -\codes{gc} & Gestion du garbage collector. \ifnotellipse{\indexmoduleint{gc}}\\ \hline -\codes{getopt} & Lire les options des paramtres passs en arguments d'un programme \python. \ifnotellipse{\indexmoduleint{getopt}}\\ \hline -\codes{glob} & Chercher des fichiers (voir chapitre~\ref{chap_fichier}). \ifnotellipse{\indexmoduleint{glob}}\\ \hline -\codes{hashlib} & Fonctions de cryptage. \ifnotellipse{\indexmoduleint{hashlib}}\\ \hline -\codes{htmllib} & Lire le format HTML. \ifnotellipse{\indexmoduleint{htmllib}}\\ \hline -\codes{math} & Fonctions mathmatiques standard telles que \codes{cos}, \codes{sin}, \codes{exp}, \codes{log}... \ifnotellipse{\indexmoduleint{math}}\indexfonction{cos}\indexfonction{sin}\indexfonction{log}\indexfonction{exp}\\ \hline -\codes{os} & Fonctions systmes dont certaines fonctions permettant de grer les fichiers (voir chapitre~\ref{chap_fichier}). \ifnotellipse{\indexmoduleint{os}}\\ \hline -\codes{os.path} & Manipulations de noms de fichiers (voir chapitre~\ref{chap_fichier}). \ifnotellipse{\indexmoduleint{os.path}}\\ \hline -\codes{pickle} & Srialisation d'objets, la srialisation consiste convertir des donnes structures de faon complexe en une structure linaire facilement enregistrable dans un fichier (voir chapitre~\ref{chap_fichier}). \indexmoduleint{pickle}\indexfr{srialisation}\\ \hline -\codes{profile} & Etudier le temps pass dans les fonctions d'un programme. \ifnotellipse{\indexmoduleint{profile}}\\ \hline -%\codes{pydoc} & Gnration de pages HTML contenant l'aide associe aux classes et aux fonctions d'un fichier. \indexmoduleint{pydoc}\\ \hline -\codes{random} & Gnration de nombres alatoires. \ifnotellipse{\indexmoduleint{random}}\\ \hline -\codes{re} & Expressions rgulires (voir paragraphe~\ref{regex_label_chap}). \ifnotellipse{\indexmoduleint{re}}\\ \hline -%\codes{sets} & Union, intersection d'ensembles. \indexmoduleint{sets}\\ \hline -\codes{shutil} & Copie de fichiers (voir chapitre~\ref{chap_fichier}). \ifnotellipse{\indexmoduleint{shutil}}\\ \hline -\codes{sqlite3} & Accs aux fonctionnalits du gestionnaire de base de donnes SQLite3. \ifnotellipse{\indexmoduleint{sqlite3}}\ifnotellipse{\indexoutil{SQLite3}}\\ \hline -\codes{string} & Manipulations des chanes de caractres. \ifnotellipse{\indexmoduleint{string}}\\ \hline -\codes{sys} & Fonctions systmes, fonctions lies au langage \pythons (voir chapitre~\ref{chap_fichier}). \ifnotellipse{\indexmoduleint{sys}}\\ \hline -\codes{threading} & Utilisation de threads (voir chapitre~\ref{chap_thread}). \ifnotellipse{\indexmoduleint{threading}}\\ \hline -\codes{time} & Accs l'heure, l'heure systme, l'heure d'une fichier. \ifnotellipse{\indexmoduleint{time}}\\ \hline -\codes{Tkinter} & Interface graphique (voir chapitre~\ref{chap_interface}). \ifnotellipse{\indexmoduleint{Tkinter}}\\ \hline -\codes{unittest} & Tests unitaires (ou comment amliorer la fiabilit d'un programme).\ifnotellipse{\indexmoduleint{unittest}}\\ \hline -\codes{urllib} & Pour lire le contenu de page HTML sans utiliser un navigateur. \ifnotellipse{\indexmoduleint{urllib}}\\ \hline -\codes{urllib2} & Module plus complet que \codes{urllib}. \ifnotellipse{\indexmoduleint{urllib2}}\\ \hline -\codes{xml.dom} & Lecture du format XML. \ifnotellipse{\indexmoduleint{xml.dom}}\\ \hline -\codes{xml.sax} & Lecture du format XML. \ifnotellipse{\indexmoduleint{xml.sax}}\\ \hline -\codes{zipfile} & Lecture de fichiers ZIP (voir chapitre~\ref{chap_fichier}). \ifnotellipse{\indexmoduleint{zipfile}}\\ \hline -\end{tabularx}\end{center} -\label{module_utilise_table} -\caption{Liste de modules souvent utiliss. La liste exhaustive est disponible l'adresse - \httpstyle{http://docs.python.org/modindex.html}. Les moteurs de recherche sur Internet retournent - des rsultats assez pertinents sur des requtes du type \textit{python + le nom du module}. - Les rsultats sont principalement en langue anglaise.} -\end{table} - -\ifnotellipse{ -Certains de ces modules sont prsents dans les chapitres qui suivent. Le programme suivant par exemple utilise les modules \codes{random} et \codes{math} pour estimer le nombre \codes{pi}. Pour cela, on tire alatoirement deux nombres $\pa{x,y}$ dans l'intervalle $\cro{0,1}$, si $\sqrt{x^2+y^2} \infegal 1$, on compte~1 sinon~0. Au final, $\hat{\pi} = \esp{\indicatrice{\sqrt{x^2+y^2} \infegal 1}}$. -% -\inputcode{../python_cours/programme/pi.py}{estimation du nombre $\pi$} -} - -Le programme suivant calcule l'intgrale de Monte Carlo\indexfr{Monte Carlo} de la fonction $f(x)=\sqrt{x}$ qui consiste tirer des nombres alatoires dans l'intervalle \codes{a,b} puis faire la moyenne des $\sqrt{x}$ obtenu. -% -\inputcode{../python_cours/programme/integrale.py}{intgrale de Monte Carlo} -% -Le programme suivant utilise le module \codes{urllib}\indexmoduleint{urllib} pour tlcharger le contenu d'une page et l'afficher. -\vspaceneg -\indexexemples{lecture d'une page HTML}{} -\begin{verbatimx} -def get_page_html (url): - import urllib - d = urllib.urlopen(url) - res = d.read () - d.close () - return res - -url = "http://www.lemonde.fr" -print get_page_html (url) -\end{verbatimx} -\vspaceneg - -\if 0 - -\section{Gnration automatique de la documentation} \label{generation_autoamtidqsdlfqlsd_fgqsdfq} - -Le langage \pythons permet d'associer de la documentation chaque lment du programme (fonction, classe, mthode, modules). Elle est accessible en tapant l'instruction \codes{help (...)} avec comme argument l'lment dont on veut lire la documentation. Cette lecture n'est pas forcment facile, c'est pourquoi il peut tre utile de gnrer une page HTML avec le contenu de cette aide. Il suffit pour cela d'crire dans une fentre commande en remplaant \codes{nom\_de\_fichier} par le nom d'un programme \pythons sans son extension. \indexoutil{pydoc} -\vspaceneg -\indexexemples{ligne de commande}{} -\begin{verbatimx} -c:\python26\python c:\python26\lib\pydoc.py -w nom_de_fichier -\end{verbatimx} -\vspaceneg -% -L'autre solution est d'utiliser la fonction \codes{pydoc\_generation} dfinie dans l'exemple suivant. Cette fonction gnre l'aide depuis un programme \pythons en excutant une instruction en ligne de commande grce la fonction \codes{system} du module \codes{os}.\indexmoduleint{os}\indexfonction{system} Le rsultat obtenu est prsent par la figure~\ref{pydoc_exemple_module_ref}. -% -\label{exemple_programme_pydoc_module} -\inputcode{../python_cours/programme/exemple_pydoc.py}{gnration automatique de l'aide avec \codesindex{pydoc}} -% - \begin{figure}[ht] - \figureoneimage{ \caption{Page HTML gnre par l'outil \codescaption{pydoc}, cette page correspond - au programme de la page~\pageref{exemple_programme_pydoc_module}. Elle est divise en trois parties, - la premire fait rfrence aux modules inclus, la seconde aux classes qui y sont dfinies, la troisime - aux fonctions.} } - {\includegraphics[width=6.5cm]{\filextellipse{../python_cours/image/pydoc_image} - {../python_cours/image_ellipse/pydoc_image}} } - \label{pydoc_exemple_module_ref} - \end{figure} - -\fi - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\section{Modules externes} -\indexfrr{module}{externe} - -Les modules externes ne sont pas fournis avec \python, ils ncessitent une installation supplmentaire. Il serait impossible de couvrir tous les thmes abords par ces extensions. La simplicit d'utilisation du langage \pythons et son interfaage facile avec le langage~\textit{C} contribue sa popularit. Il permet de relier entre eux des projets conus dans des environnements diffrents, dans des langages diffrents. Depuis les versions 2.3, 2.4 du langage \python, la plupart des modules externes sont faciles installer, faciles utiliser d'aprs les exemples que fournissent de plus en plus les sites Internet qui les hbergent. De plus, il s'coule peu de temps entre la mise disposition d'une nouvelle version du langage \pythons et la mise jour du module pour cette version\footnote{Ceci n'est pas tout--fait vrai pour la version~3.0 du langage dont les changements sont trop consquents. Un changement du premier numro de version indique souvent des changements majeurs.}. Le paragraphe~\ref{mosule_dexifsqlliste} (page~\pageref{mosule_dexifsqlliste}) donne une liste de modules utiles du point de vue d'un ingnieur gnraliste. - -Nanmoins, de nombreux modules ont t conus pour un besoin spcifique et ne sont plus maintenus. Cela convient lors de l'criture d'un programme qui remplit un besoin ponctuel. Pour une application plus ambitieuse, il est ncessaire de vrifier quelques informations comme la date de cration, celle de la dernire mise jour, la prsence d'une documentation, une prvision pour la sortie de la future version, si c'est une personne lambda qui l'a conu ou si c'est une organisation comme celle qui fournit le module \codes{pygoogledesktop}\footnote{\httpstyle{http://code.google.com/p/pythongoogledesktop/}}.\ifnotellipse{\indexmoduleext{pygoogledesktop}} C'est le cas de tous les modules prsents au pragraphe~\ref{mosule_dexifsqlliste}. - -Concernant leur installation, certains modules externes comme \codes{SciPy} peuvent tre installs l'aide d'un fichier excutable sous \textit{Windows}. Il suffit d'excuter ce fichier pour pouvoir se servir du module par la suite dans un programme \python. Ce mode d'installation est disponible pour la plupart des modules de taille consquente. - -D'autres modules apparaissent compresss dans un fichier. Une fois dcompresss, ils incluent un fichier \codes{setup.py}. Le langage \pythons fournit une procdure d'installation standard~: il suffit d'crire quelques lignes dans une fentre de commande ouverte dans le rpertoire o a t dcompress le fichier contenant le module installer. -% -\vspaceneg -\indexexemples{installation d'un module}{} -\begin{verbatimx} -c:\python26\python setup.py install -\end{verbatimx} -\vspaceneg -% -Sous \textit{Linux} et \textit{Mac~OS~X}, cette ligne devient~: -\vspaceneg -\begin{verbatimx} -python setup.py install -\end{verbatimx} - - - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\section{\Pythons et les autres langages} - -Il est impossible d'obtenir avec le mme langage la fois une grande vitesse de dveloppement et une grande vitesse d'excution. La faon dont est gre la mmoire est un lment important qui explique l'appartenance d'un langage l'une ou l'autre des deux catgories. \pythons inclut une fonctionnalit qu'on appelle le \emph{garbage collector}. \indexfr{garbage collector} A chaque objet cr correspond un emplacement mmoire. Celui-ci peut tre cr et dtruit de faon explicite ou tre totalement gr par le langage, ce que fait \python. Il est inutile de se soucier d'un objet dont on ne sert plus, il sera dtruit automatiquement et la place mmoire qu'il utilisait sera de nouveau exploitable. Cette aisance de programmation suppose que le langage sache dterminer avec exactitude quand une variable n'est plus utilise. Ceci signifie que \pythons mmorise des informations supplmentaires sur tous les objets crs en cours d'excution pour assurer leur rfrencement. \pythons est tout moment en mesure de connatre l'ensemble des noms de variables utiliss pour dsigner le mme objet. Le \emph{garbage collector} alourdit un programme de faon cache, il le ralentit tout en facilitant la conception des programmes. - -\indexfr{vitesse d'excution} -C'est pour acclrer l'excution que le langage \pythons est parfois associ d'autres langages. Le programme final crit en \pythons utilise des fonctionnalits haut niveau codes dans un autre langage plus rapide. - - - -\subsection{Langage \textit{Java}}\indexlangage{Java} - -Il est possible d'utiliser des classes \textit{Java} en \python. Cette possibilit ne sera pas plus dtaille ici car le langage \textit{Java} est galement un langage interprt mme s'il est nettement plus rapide. Pour cela, il faut utiliser une version de l'interprteur \pythons code lui-mme en \textit{Java} ce qui est le cas de la version \textit{Java} de \python~: \emph{Jython}\footnote{\httpstyle{http://www.jython.org/Project/}}.\indexoutil{Jython}\indexfr{Java} - - -\subsection{Langage \textit{C}}\indexfr{\textit{C, C++}}\indexlangage{C, C++} - -Il existe deux faons de construire un programme mlant \pythons et langage~\textit{C}. La premire mthode est la ralisation de modules \pythons crits en~\textit{C} ou~\textit{C++}. A moins de devoir construire un module le plus efficace possible, il est peu conseill de le faire directement car cela implique de grer soi-mme le rfrencement des variables cres en~\textit{C} ou~\textit{C++} et exportes vers \python\footnote{Il faut tenir compte dans le module en \textit{C} des oprations ncessaires au garbage collector.}. Il est prfrable d'utiliser des outils comme la librairie \textit{SWIG}\footnote{\httpstyle{http://www.swig.org/}},\ifnotellipse{\indexoutil{SWIG}}ou encore la librairie \textit{Boost Python}\footnote{\httpstyle{http://www.boost.org/doc/libs/1\_36\_0/libs/python/doc/index.html}} qui simplifie le travail d'intgration.\indexoutil{Boost Python} C'est cette dernire option qui est dtaille dans ce livre. - -L'utilisation d'un autre langage est en effet indispensable lorsque l'exigence de rapidit est trop grande. Les modules scientifiques tels que \codes{scipy} ou \codes{numpy} ne rpondent pas tous les besoins. Il faut parfois dvelopper soi-mme des outils numriques en \textit{C++}\footnote{en finance par exemple} mme si la partie interface est assure par \python. - -L'autre faon de mlanger les deux langages est l'inclusion de petites parties~\textit{C} dans un programme \python. Ce point a dj t voqu au paragraphe~\ref{accelation_pyrex_weave} (page~\pageref{accelation_pyrex_weave}). Cela permet une optimisation essentiellement locale et numrique mais pas l'utilisation sous \pythons d'un projet existant programm en~\textit{C++} ou~\textit{C}. Sous \textit{Microsoft Windows}, il existe galement une version du langage \textit{IronPython}\footnote{\httpstyle{http://ironpython.net/}} dveloppe pour ce systme d'exploitation. L'intgration des DLL y est plus facile. - -D'une manire gnrale, il est prfrable de scinder nettement les parties d'un mme programme qui s'occupent de calculs numriques de celles qui prennent en charge l'interface graphique. Construire un module crit en \textit{C++} pour grer les calculs numriques est une faon drastique et efficace d'oprer cette scission. - - -%------------------------------------------------------------------------------------------ -\ifnotellipse{ - -\section{Ecrire un module en langage~\textit{C++}} -\indexlangage{C++}\indexfr{garbage collector} - -Avant de dcrire la librairie \textit{Boost Python} qui facilite l'criture d'extension en langage~\textit{C++}, il peut tre utile de voir un exemple d'un module crit dans ce langage. L'inconvnient majeur est le comptage des rfrences~: le garbage collector du langage \python dtruit automatique toute variable qui n'est plus utilise. Cette information est gre automatiquement par le langage \python mais doit l'tre manuellement au sein des extensions crites en langage~\textit{C++}. - -Un pralable est cependant ncessaire pour les utilisateurs du systme d'exploitation \textit{Windows}. Il faut que le compilateur \textit{MinGW}\footnote{\httpstyle{http://www.mingw.org/}}\indexoutil{MinGW} soit install. C'est l'adaptation du compilateur~\textit{C++} \textit{gcc}\indexoutil{gcc} qui est prsent sur tout systme d'exploitation \textit{Linux}. - -L'exemple suivant~: - -\inputcode{../python_cours/programme/sample_module.cpp}{un module en C++} - -Le module suivant vite l'installation manuelle d'un module crit en \textit{C++}. Il dtecte que le module a t modifi et qu'il doit tre recompil. Toutefois, il ne gre qu'un seul fichier. - -\inputcode{../python_cours/programme/import_c_module.py}{importer un module en C++} - -} % ifnotellipse - -%------------------------------------------------------------------------------------------ - -\section{\textit{Boost Python}} \label{boost_python_section_ok}\indexoutil{Boost Python} - -La librairie \emph{Boost}\footnote{\httpstyle{http://www.boost.org/}}\indexoutil{Boost} est une librairie crite en C++ qui a l'avantage d'tre portable~: elle est utilisable sur les systmes d'exploitation les plus courants. \indexfr{portable} Rgulirement mise jour, elle propose une extension de la librairie \emph{Standard Template Library (STL)} incluant notamment les expressions rgulires, les graphes, les threads,~...\indexoutil{Standard Template Library (STL)} \textit{Boost Python} est une partie de cette librairie qui se prsente galement sous forme de \emph{template}\footnote{Les \textit{template} ou \textit{patron de classe}\indexfr{patron de classe} sont un concept de mtaprogrammation.\ifnotellipse{\indexfr{mtaprogrammation}}Lorsque deux classes sont presque identiques l'exception d'un type, le langage \textit{C++} autorise la cration d'un patron unique pour ces deux classes. Le \textit{C++} est typage statique~: il faut crire deux classes pour crer un tableau d'entiers et un tableau de rels mme si le code est le mme. Les \textit{template} permettent de factoriser le code de ces deux classes.}.\indexfr{template} - -Il est prfrable d'avoir programm en \textit{C++} et en \pythons pour pouvoir mettre en \oe uvre les exemples proposs ci-dessous. -La prise en main ncessite un investissement, une certaine habitude des longs messages d'erreurs issus des \emph{template} mais une fois que cela est fait, la librairie acclre notablement l'criture d'un module. Il n'est plus utile de se soucier de l'interfaage avec \pythons et notamment du rfrencement drfrencement des objets pour le \emph{garbage collector}\footnote{Le langage \pythons dtruit automatique les objets qui ne sont plus utiliss. Cette fonctionnalit s'appuie sur un rfrencement de tous les objets crs. Alors qu'il est implicite en \python, il est explicite dans un module \pythons crit en langage~\textit{C} moins d'utiliser une librairie comme \textit{Boost Python} qui prend en charge une partie de cette tche (voir la page \httpstyle{http://docs.python.org/c-api/intro.html\#objects-types-and-reference-counts}).}. \indexfr{garbage collector} - -\begin{xremark}{utilisation d'un logiciel de suivi de source} -Le nombre de fichiers est assez important, il est conseill de conserver l'historique des modifications grce un logiciel de suivi de source tels que \textit{TortoiseSVN}\footnote{\httpstyle{http://tortoisesvn.tigris.org/}}. Cela vite de perdre parfois une demi-journe de travail. -\end{xremark} - -\subsection{Exemple}\label{python_boost_exemple} - -Vous pourrez trouver l'adresse suivante\footnote{\httpstyle{http://www.xavierdupre.fr/}} l'ensemble des sources ncessaires la ralisation d'un module avec \textit{Boost Python}\footnote{L'adresse suivante fournit une aide plus complte que ce document~: \httpstyle{http://www.boost.org/libs/python/doc/tutorial/doc/html/index.html}.}. Ce projet est configur pour \emph{Microsoft Visual Studio C++} \indexoutil{Microsoft Visual Studio C++} et dfinit un premier module appel \emph{PythonSample} qui contient quelques fonctions et une classe. Le rsultat est une DLL (Dynamic Link Library)\indexfr{Dynamic Link Library (DLL)} qui sera appele par le langage \python. Cet exemple est conu pour \textit{Windows}. - -Un point important est l'utilisation de la librairie \codes{c:\backslash python26\backslash python26.lib} qui explique qu'un module compil pour une version donne de \pythons ne puisse tre utilis avec une autre version~: un module compil avec la version~2.4 ne fonctionnera pas avec la version~2.6. - -L'exemple propos contient galement diffrentes fonctions de conversion des structures \pythons vers des containers de la \textit{STL} ou \textit{Standard Template Library}. Il suffit d'ouvrir le fichier \codes{pythonsample.sln} avec \textit{Microsoft Visual~C++} pour avoir accs au code source, c'est ce que montre la figure~\ref{boost_scheme_module_visual}. Le fichier \codes{exesample.sln} dfinit un programme excutable permettant de tester le module sans \pythons (voir figure~\ref{boost_scheme_module}). Les paragraphes qui suivent prsentent quelques lments de syntaxe et se concluent par un exercice qui consiste ajouter une fonction au module. - - - \begin{figure}[ht] - \figureoneimage{ \caption{Copie d'cran du projet ouvert avec \textit{Microsoft Visual~C++}. Les deux projets - \codescaption{dllc \; boost\_python} et \codescaption{lib\_in\_dll \; boost} contiennent les sources - \textit{Boost Python}. Le projet \codescaption{lib\_in\_dll \; libsample} contient le code d'une librairie - qui est crite sans tenir compte du fait que celle-ci sera utilise sous forme de module \python. - Le dernier projet \codescaption{dllc \; pythonsample} ajoute la couche qui fera le pont entre la librairie - \codescaption{libsample} et le langage \python. Les fichiers \codescaption{conversion.*} - contiennent des fonctions de conversion des types \pythons vers des types \textit{C++} ou plus - prcisment de la STL (Standard Template Library). Le fichier \codescaption{definition.cpp} - contient le point d'entre du module~: la macro \codescaption{BOOST\_PYTHON\_MODULE} qui - dclare \pythons les fonctions et classes du module. \vspace{-1cm} } } - {\includegraphics[width=6cm]{\filextellipse{../python_cours/image/boost} - {../python_cours/image_ellipse/boost}} } - {\label{boost_scheme_module_visual}} - \ifnotellipse{\indexfr{STL}\indexfr{Standard Template Library}} - \end{figure} - - - -\subsection{Les grandes lignes} - -Un module construit avec \textit{Boost Python} se compose de trois lments, une inamovible DLL \codes{boost\_python.dll}, un fichier \texttt{.py} portant le nom du module, une DLL \texttt{.dll}. Les deux premiers fichiers ne changent pas, le dernier contient les classes et fonctions proposes par le module. L'organisation propose dans l'exemple du paragraphe~\ref{python_boost_exemple} suit le schma de la figure~\ref{boost_scheme_module}. L'utilisation d'un programme excutable n'est pas indispensable. Toutefois, cela permet de tester le module sans \pythons et ainsi de faciliter sa conception. - - - - \begin{figure}[ht] - \figureoneimage{ \caption{Schma gnral de l'exemple introduit au paragraphe~\ref{python_boost_exemple}. - Le code de la librairie est utilis selon deux faons, l'intrieur d'un module \pythons - ce qui est l'objectif recherch et l'intrieur d'un programme excutable utilis - pour tester cette librairie sans passer par \python.} \vspace{-1cm} } - {\includegraphics[width=7cm]{\filextellipse{../python_cours/image/boostp} - {../python_cours/image_ellipse/boostp}} } - {\label{boost_scheme_module}} - \end{figure} - -Une fois le module prt, il est utilisable dans tout programme \python. Il suffit de l'importer. Lors de cette tape, une fonction va tre excute pour indiquer au langage \pythons l'ensemble des classes et des fonctions prsentes dans le module. - - -\subsubsection{Initialiser le module} - -L'initialisation d'un module correspond la dclaration au langage \pythons de l'ensemble des classes et des fonctions exporter. Cette partie peut contenir des tches qui doivent tre faites la premire fois que \pythons importe le module (initialisation de variables globales par exemple, chargement de donnes,~...). L'objectif de cette initialisation est de construire pour chaque fonction ou classe ou mthode un objet \pythons correspondant. \indexboost{BOOST\_PYTHON\_MODULE} -\vspaceneg -\begin{verbatimx} -BOOST_PYTHON_MODULE(PythonSample) -{ - // tapes d'initialisation -} ; -\end{verbatimx} - - -\subsubsection{Ajout d'une fonction} -\indexboost{boost::python::def} -La fonction \codes{boost::python::def} permet de dclarer une fonction. On peut y prciser les arguments, des valeurs par dfaut, un message d'aide retourn par l'instruction \pythons \codes{help}. -\vspaceneg -\begin{verbatimx} -int fonction (int r, const char * s, double x = 4) ; -BOOST_PYTHON_MODULE(PythonSample) -{ - boost::python::def ("fonction", fonction, - (boost::python::arg ("r"), - boost::python::arg ("s"), - boost::python::arg ("x") = 4), - "aide associe la fonction") ; -} ; -\end{verbatimx} -\vspaceneg -Les arguments de \codes{boost::python::def} sont les suivants~: - -\begin{small} -\begin{enumerate} -\item Le premier argument est le nom de la fonction exporte en \python. Ce nom peut tout fait tre diffrent de celui de la fonction \textit{C++}. -\item Le second argument est la fonction elle-mme. -\item Le troisime argument est la liste des arguments suivis ou non d'une valeur par dfaut. -\item Le dernier argument est l'aide associe la fonction. -\end{enumerate} -\end{small} - -Ct \python, cela donne~: -\vspaceneg -\begin{verbatimx} -import PythonSample -print PythonSample.fonction (4, "second") -print PythonSample.fonction (4, "second", 5) -\end{verbatimx} -\vspaceneg - -La surcharge de fonction est possible avec \textit{Boost Python} mais elle ne sera pas dtaille ici. Le langage \pythons n'autorise pas la surcharge, la rendre possible revient crer une fonction qui appellera telle ou telle autre fonction selon le type et le nombre des paramtres qu'elle aura reus. - - - - -\subsubsection{Ajout d'une classe} - -La dclaration d'une classe suit le mme schma que pour une fonction mais avec le template \codes{boost::python::class\_}. \indexboost{boost::python::class\_} Lorsque le constructeur n'a pas d'argument, la dclaration suit le schma suivant~: -\vspaceneg -\begin{verbatimx} - boost::python::class_ obj ( - "ClassSample", - "help on PythonClassSample") ) ; -\end{verbatimx} -\vspaceneg -% -Le template \codes{class\_} est instanci sur la classe exporter, ici \codes{PythonClassSample}. On cre un objet \codes{obj} de type \codes{boost::python::class\_}. Son constructeur prend comme arguments~: - -\begin{small} -\begin{enumerate} -\item Le nom de la classe en \python. -\item L'aide qui lui est associe. Ce second paramtre est facultatif mais il est conseill de le renseigner. -\end{enumerate} -\end{small} -% -Au cas o la classe aurait un constructeur avec des paramtres, il faudrait ajouter le code suivant~: \indexboost{boost::python::init} -\vspaceneg -\begin{verbatimx} - boost::python::class_ obj ( - "ClassSample", - "help on PythonClassSample", - boost::python::init ( // ajout - (boost::python::arg ("a"), // ajout - boost::python::arg ("s") = "default value for s"), // ajout - "help on PythonClassSample constructor" ) // ajout - ) ; -\end{verbatimx} -\vspaceneg -C'est--dire un autre template \codes{boost::python::init<...>} dont les arguments sont les types des paramtres du constructeur, c'est--dire entier et chane de caractres dans l'exemple prcdent. La suite est identique la dclaration d'une fonction. Il est galement possible de dfinir un hritage de la manire qui suit~: -\vspaceneg -\begin{verbatimx} - boost::python::class_ > obj ( - "ClassSample", - "help on PythonClassSample") ; -\end{verbatimx} -\vspaceneg -Le template \codes{class\_}\indexboost{boost::python::bases} peut recevoir un autre argument qui est \codes{boost::python::bases} avec \codes{ClassBase} dsignant la classe mre de la classe dclare. Cette dernire doit avoir t dclare au pralable avec cette mme syntaxe \codes{boost::python::class\_}. -\vspaceneg -\begin{verbatimx} - boost::python::class_ > obj ( - // ... -\end{verbatimx} -\vspaceneg -% -\begin{xremark}{template \textit{C++}} -Lorsqu'un template est un argument d'un autre template, il faut insrer un espace entre deux symboles \codes{<} ou \codes{>} conscutifs pour viter la confusion avec les oprateurs~\texttt{<}\texttt{<} ou~\texttt{>}\texttt{>} qui existent en \textit{C++}. -\end{xremark} - -\subsubsection{Ajout d'une mthode} - -La dclaration d'une classe passe par la dclaration d'une instance du template \codes{class\_}. Dans les exemples utiliss, cette instance porte le nom \codes{obj}. C'est cette instance qui va permettre de dclarer une mthode exactement de la mme manire qu'une fonction~: -\vspaceneg -\begin{verbatimx} - obj.def ( "Random", - &PythonClassSample::Random, - (boost::python::arg ("pos")), - "help on the method") ; -\end{verbatimx} -\vspaceneg -Cette mme mthode \codes{def} permet galement de surcharge le constructeur au cas o la classe pourrait tre initialise de diffrentes manires. Cela donne~: \indexboost{def} -\vspaceneg -\begin{verbatimx} - boost::python::class_ obj ("Vector", "help on vector", - boost::python::init ( - (PY_ARG ("n")), - "cre un vecteur de dimension n")) ; - // ajout d'un constructeur sans paramtre - obj.def (boost::python::init ()) ; -\end{verbatimx} -\vspaceneg -La classe \pythons \codes{Vector} peut tre cre avec un ou aucun paramtre~: -\vspaceneg -\begin{verbatimx} -v = PythonSample.Vector () -v2 = PythonSample.Vector (10) -\end{verbatimx} - -\subsubsection{Ajout d'un attribut} - -La dclaration \indexboost{def\_readwrite} d'un attribut s'effectue avec la mthode \codes{def\_readwrite}~: -\vspaceneg -\begin{verbatimx} - obj.def_readwrite ("a", &PythonClassSample::_a, "retourne un accs a") ; -\end{verbatimx} -\vspaceneg -Le premier paramtre sera son nom sous \python, le second le paramtre lui-mme, le troisime l'aide associe. La mthode \codes{def\_readwrite} permet d'exporter un attribut de sorte qu'il soit lisible et modifiable. - - - - - -\subsection{Exemple concret~: ajout d'une fonction} - -L'objectif est d'ajouter une fonction au module. La premire tape consiste dcompresser le fichier tlcharg\footnote{depuis l'adresse \httpstyle{http://www.xavierdupre.fr/}}, compiler l'ensemble des fichiers sous \textit{Microsoft Visual~C++} en version \textit{release} et \textit{debug}. L'excution du programme \codes{PythonSample/test/test.py} doit s'effectuer sans problme. Ajouter une fonction revient ensuite suivre les tapes suivantes~: - -\begin{small} -\begin{enumerate} -\item Dclarer la fonction dans le fichier \codesmall{libSample/mafonction.h} qu'on cre. -\item Implmenter la fonction dans le fichier \codesmall{libSample/mafonction.cpp} qu'on cre galement. -\end{enumerate} -\end{small} - -La partie purement \textit{C++} est termine\footnote{C'est facultatif mais il est galement conseill d'crire d'crire un code pour tester cette fonction dans le fichier \codesnote{exeSample/source/main.cpp}. Cela rduit le risque d'erreurs d'excution dans cette partie.}, il faut maintenant dfinir la transition \textit{C++}$\rightarrow$\pythons grce aux tapes suivantes~: - -\begin{small} -\begin{enumerate} -\item On dclare une fonction dans un fichier \codesmall{PythonSample/mafonction.h} qu'on cre. Elle peut par exemple porter le mme nom que la prcdente mais prfix par \codesmall{python\_}. -\item On peut passer l'implmentation de la fonction \pythons dans un fichier \codesmall{PythonSample/mafonction.cpp} qu'on cre aussi. Le code est sensiblement le mme pour chaque fonction ajoute~: il faut convertir les paramtres depuis des structures \pythons en type \textit{C++}, appeler la fonction \textit{C++} puis effectuer la conversion inverse. On pourra s'aider des fonctions contenues dans le fichier \codesmall{PythonSample/python/conversion.h}. -\item Il suffit de dclarer la fonction au sein de la macro \codesmall{BOOST\_PYTHON\_MODULE} dans le fichier \codesmall{PythonSample/python/definition.cpp}. -\end{enumerate} -\end{small} - -Il ne reste plus qu' tester la fonction nouvellement incluse depuis le programme \codes{PythonSample/test/test.py}. Le contenu de chaque fichier modifi lors de ces tapes est prsent par la figure~\ref{boost_python_sample_concert} page~\pageref{boost_python_sample_concert}. - -\begin{figure}[ht] -\indexexemples{\textit{Boost Python}}{} -\begin{center}\begin{tabular}{@{}lr@{}} -Fichier \codes{libSample/mafonction.h} & Fichier \codes{libSample/mafonction.cpp} \\ -\indexexemples{\textit{Boost Python}}{, mafonction.h} -\begin{minipage}{6.7cm} -\begin{verbatimx} -#ifndef LIB_MAFONCTION_H -#define LIB_MAFONCTION_H - -#include - -void somme_vecteur ( - const std::vector &v1, - const std::vector &v2, - std::vector &res) ; - -#endif - - - - - - - - - -\end{verbatimx} -\end{minipage} -& \indexexemples{\textit{Boost Python}}{, mafonction.cpp} -\begin{minipage}{6.7cm} -\begin{verbatimx} -#include "mafonction.h" -void somme_vecteur ( - const std::vector &v1, - const std::vector &v2, - std::vector &res) -{ - if (v1.size () != v2.size ()) - throw std::runtime_error ( - "dimensions diffrentes") ; - res.resize (v1.size ()) ; - std::vector:: - const_iterator it1,it2 ; - std::vector::iterator it3 ; - for (it1 = v1.begin (), - it2 = v2.begin (), - it3 = res.begin () ; - it1 != v1.end () ; - ++it1, ++it2, ++it3) - *it3 = *it1 + *it2 ; -} -\end{verbatimx} -\end{minipage} -\\ -Fichier \codes{PythonSample/mafonction.h} & Fichier \codes{PythonSample/mafonction.cpp} \\ -\indexexemples{\textit{Boost Python}}{, mafonction.h} -\begin{minipage}{6.7cm} -\begin{verbatimx} -#ifndef PYTHON_MAFONCTION_H -#define PYTHON_MAFONCTION_H - -#include "python/definition.h" - -boost::python::list - python_somme_vecteur ( - boost::python::list v1, - boost::python::list v2) ; - -#endif - - - - - - - -\end{verbatimx} -\end{minipage} -& -\indexexemples{\textit{Boost Python}}{, mafonction.cpp} -\begin{minipage}{6.7cm} -\begin{verbatimx} -#include "python/definition.h" -#include "mafonction.h" -#include "../libsample/mafonction.h" -#include "python/conversion.h" -#include "python/conversion.hpp" -boost::python::list - python_somme_vecteur ( - boost::python::list v1, - boost::python::list v2) -{ - std::vector cv1,cv2,cres ; - PythonConvert (v1, cv1) ; - PythonConvert (v2, cv2) ; - somme_vecteur (cv1, cv2, cres) ; - boost::python::list res ; - PythonConvert (cres, res) ; - return res ; -} -\end{verbatimx} -\end{minipage} -\\ -Fichier \codes{PythonSample/python/main.cpp} & Fichier \codes{PythonSample/test/test.py} \\ -\indexexemples{\textit{Boost Python}}{, main.cpp} -\begin{minipage}{6.7cm} -\begin{verbatimx} -// ... -#include "../mafonction.h" -BOOST_PYTHON_MODULE(PythonSample) -{ - // ... - def ("somme_vecteur", - &python_somme_vecteur, - (boost::python::arg ("v1"), - boost::python::arg ("v2")), - "retourne la somme de deux vecteurs"); - // ... -} ; -\end{verbatimx} -\end{minipage} -& -\indexexemples{\textit{Boost Python}}{, test.py} -\begin{minipage}{6.7cm} -\begin{verbatimx} -import PythonSample as PS -v1 = [1.0, 2.0] -v2 = [6.5, 7.8] -v3 = PS.somme_vecteur (v1, v2) - - - - - - - - -\end{verbatimx} -\end{minipage} - -\end{tabular}\end{center} -\caption{Six fichiers modifis pour ajouter une fonction dans un module \pythons crit en \textit{C++} partir de l'exemple -accessible depuis l'adresse \httpstyle{http://www.xavierdupre.fr/}.} -\label{boost_python_sample_concert} -\end{figure} - - - - - - - - -\subsection{Garbage collector et pointeur} - -Le langage \pythons gre lui-mme la destruction des objets au travers d'un \emph{garbage collector}.\indexfr{garbage collector} Cela signifie qu'un objet cr en \pythons provenant d'un module dfini dans module en~\textit{C++} sera lui aussi dtruit par \python. A partir du moment o le destructeur d'un objet libre les pointeurs qu'il a allou, la mmoire ne sera pas corrompue. Ce schma ne permet pas de prvoir quand l'objet sera dtruit. - -Pour parer aux problmes ventuels qui pourraient survenir notamment lorsqu'un objet contient des pointeurs sur des donnes dtenues par un autre objet, il est possible de spcifier \textit{Boost Python}\indexfr{pointeur} qu'un rsultat est une rfrence~: son identificateur \pythons peut tre dtruit mais pas l'objet qu'il dsigne. C'est l'objet du template \codes{boost::python::return\_internal\_reference<>()}. \indexboost{return\_internal\_reference} Il est utilis pour spcifier qu'une fonction retourne un rsultat qui ne doit pas tre dtruit. - -Par exemple, on utilise cette fonctionnalit pour dfinir un oprateur d'affectation comme l'oprateur~\texttt{+=}. La fonction suivante a la mme signature \textit{C++} que l'oprateur~\texttt{+=}. -\vspaceneg -\begin{verbatimx} -class PythonClassSample -{ - ... - PythonClassSample & __iadd__ (const PythonClassSample &a) ; - ... -} ; -\end{verbatimx} -\vspaceneg -Son rsultat est une rfrence sur un objet existant. Si aucune mention spcifique n'est prcise lors de l'export de la mthode (avec \codes{def}), lors d'un appel l'oprateur~\texttt{+=}, \pythons va considrer que le rsultat est un objet diffrent alors qu'il s'agit de deux identificateurs \pythons faisant rfrence au mme objet~\textit{C++}. C'est pour cela qu'on ajoute l'argument suivant la mthode \codes{def}~: -\vspaceneg -\begin{verbatimx} - x.def ("__iadd__", - &PythonClassSample::__iadd__, - boost::python::return_internal_reference<>(), - "addition") ; -\end{verbatimx} -\vspaceneg -De cette faon, il y aura bien deux identificateurs \pythons faisant rfrence au mme objet~\textit{C++}. C'est aussi cette syntaxe qui permet de dclarer une fonction retournant un pointeur sur un objet~\textit{C++}. - - -\subsection{Utilisation, installation} - -Le module termin se compose de trois fichiers~: - -\begin{small} -\begin{enumerate} -\item la DLL compile avec le code C++ du module, -\item un fichier portant le mme nom que la DLL mais d'extension \codesmall{.py}~: \codesmall{PythonSample.py}, -\item un fichier \codesmall{\_\_init\_\_.py}\indexfr{\codesindex{\_\_init\_\_.py}}\indexmoduleund{\_\_init\_\_.py}. -\end{enumerate} -\end{small} - -Voici ce fichier pour l'exemple prsent au paragraphe~\ref{python_boost_exemple}. La fonction importante de ce fichier est \codes{load\_dynamic} qui charge la DLL en mmoire au cas o elle n'aurait jamais t charge.\indexfonction{load\_dynamic}\indexmoduleint{imp} -\vspaceneg -\inputcode{../python_cours/programme/PythonSample.py}{import d'une DLL} - - - - - -\subsection{Dtails sur l'exemple du paragraphe~\ref{python_boost_exemple}} -\indexfr{version, debug, release} -Certains fichiers exposs ici ont t simplifis par rapport l'exemple tlchargeable. Celui-ci a t configur de manire produire deux DLL, une autre pour la version \textit{release} \codes{PythonSample.dll} et une pour la version \textit{debug} \codes{PythonSampled.dll}. Ceci permet d'utiliser l'une ou l'autre des versions dans le mme programme. La version \textit{debug} facilite la correction des erreurs qui pourraient survenir lors de l'utilisation du module sous \python (voir le paragraphe~\ref{debuggage_cplusplus_boust_python}). Il suffit alors d'crire~: -\vspaceneg -\begin{verbatimx} -import PythonSampled as PythonSample -# au lieu de import PythonSample -\end{verbatimx} -\vspaceneg -De cette faon, passer d'une DLL l'autre est simple et permet de dbugger, tche qu'introduit le paragraphe suivant. Si le programme \pythons s'tale sur plusieurs fichiers, il est plus pratique d'ajouter au dbut de chacun fichier qui utilise le module~\textit{C++}~: -\vspaceneg -\begin{verbatimx} -import sys -if "PythonSampled" in sys.modules : PythonSample = sys.modules ["PythonSampled"] -else : import PythonSample -\end{verbatimx} - - - - -\subsection{Debuggage}\indexfr{dbugger}\label{debuggage_cplusplus_boust_python}\indexfr{version, debug, release} - -Il ne serait pas pensable de dvelopper des outils sans pouvoir utiliser un dbuggeur. Dans l'exemple prsent au paragraphe~\ref{python_boost_exemple}, le fichier \codes{testd.py} n'utilise pas le module compil dans sa version \textit{release} mais dans sa version \textbf{\textit{debug}}. L'excution est plus lente mais permet de faire appel au dbuggeur pour corriger une ventuelle erreur d'excution. \indexfr{dbugger}\indexfr{version, debug, release}\indexfr{debug} - -Une manire de dbugger consiste momentanment arrter l'excution du programme \pythons ( l'aide de la fonction \codes{raw\_input}\indexfonction{raw\_input} par exemple), le temps d'attacher le dbuggeur de \textit{Microsoft Visual~C++} au processus dont le nom est \textit{python.exe} ou \textit{pythonw.exe}. Il ne reste plus qu' placer des pointeurs d'arrt\indexfr{pointeur d'arrt} puis continuer l'excution du programme \pythons jusqu' ce que ces pointeurs d'arrt soient atteints.\indexfr{pointeur d'arrt} - -Une seconde mthode consiste volontairement insrer dans le code~\textit{C++} du module l'instruction \codes{\_\_debugbreak ()}. Lorsque le module est excut via un programme \pythons et qu'il arrive sur cette ligne, il vous demande l'autorisation de continuer l'excution via un dbuggeur. Il faudra penser enlever la ligne une fois le module corrig.\ifnotellipse{\indexfr{\codesindex{\_\_debugbreak}}}\indexboost{\_\_debugbreak} - -Il reste toutefois une dernire faon plus classique de dbugger qui est l'ajout dans le code d'instructions crivant des messages dans un fichier texte. On crit des \textit{logs} ou des \textit{traces}.\indexfr{logs}\ifnotellipse{\indexfr{traces}} De cette faon, lorsque le programme provoque une erreur, on connat la squence de messages gnrs par le programme. S'ils sont suffisamment explicites, cela permet de corriger l'erreur. Sinon, l'ajout de messages supplmentaires puis une nouvelle excution du programme permettront d'tre plus prcis quant la cause de l'erreur. - -Outre ces trois mthodes de dbuggage, il est possible qu'un module doivent retourner un code d'erreur ou gnrer une exception\indexfr{exception} qui soit attrape par l'interprteur \pythons puis afficher. C'est l'objet des lignes qui suivent~: -\vspaceneg -\begin{verbatimx} -if () - throw std::runtime_error ("message d'erreur") ; -\end{verbatimx} -\vspaceneg -Toute exception drivant de \codes{runtime\_error} sera intercepte par l'interprteur \python. La librairie \textit{Boost Python} gnre galement des exceptions notamment lorsque les paramtres envoys une fonction du module ne correspondent pas avec sa signature. - -En terme d'architecture, \indexfr{architecture} il est conseill de bien scinder la partie utilisant \textit{Boost Python} des algorithmes. \textit{Boost Python} n'est qu'une passerelle vers \python. Il pourrait tre ncessaire de construire une autre passerelle vers d'autres langages tel que le \textit{Visual Basic pour Applications (VBA)}.\indexlangage{VBA} De mme, outre la passerelle vers \python, il est utile de construire un programme excutable permettant de tester les algorithmes crits en~\textit{C++} avant de les exporter. Cela rduit beaucoup le temps de dbuggage qui peut alors grer sparment la partie \textit{C++} de la partie interfaage entre \pythons et \textit{C++}. - - -%------------------------------------------------------------------------------------------ - -\subsection{Pour aller plus loin}\label{boost_python_aller_plus_loin} - -La librairie \textit{Boost Python}\footnote{\httpstyle{http://www.boost.org/libs/python/doc/}} permet de faire beaucoup plus de choses que ce qui est prsent dans ces paragraphes. Ceux-ci contiennent nanmoins l'essentiel pour exporter vers \pythons les objets les plus simples. Il est galement possible de~: - -\begin{small} -\begin{itemize} -\item surcharger une mthode~\textit{C++} dans un programme \python, -\item excuter un programme crit en \pythons depuis un programme~\textit{C++}. -\end{itemize} -\end{small} - - -Il faut parfois une certaine dose de volont et de tnacit pour parvenir matriser un outil tel que \textit{Boost Python}, surtout lorsqu'une erreur se dclare dans le code de librairie aprs une modification en dehors de cette mme librairie. - - - - -\firstpassagedo{ - \begin{thebibliography}{99} - \input{python_cours_biblio.tex} - \end{thebibliography} -} - - - -\input{../../common/livre_table_end.tex}% -\input{../../common/livre_end.tex}% \ No newline at end of file diff --git a/_todo/chapn_tools.tex b/_todo/chapn_tools.tex deleted file mode 100644 index eb02ce13..00000000 --- a/_todo/chapn_tools.tex +++ /dev/null @@ -1,2174 +0,0 @@ -\input{../../common/livre_begin.tex}% -\firstpassagedo{\input{python_cours_titre.tex}} -\input{../../common/livre_table_begin.tex}% -%\firstpassagedo{\input{python_cours_chapter.tex}} - - - - - - - - -%------------------------------------------------------------------------------------------------------------- -\chapter{Outils d'aide au dveloppement} -\label{chap_tools} -%------------------------------------------------------------------------------------------------------------- - - -Ce chapitre prsente diffrents outils qui accompagnent la cration d'une application dans quelque langage de programmation que ce soit. Les premiers outils prsents sont des modules du langage \pythons qui permettent de fiabiliser un programme malgr de nombreuses modifications ou de mesurer le temps pass dans chaque fonction. - -Les autres outils sont des applications facilitant le dveloppement etle partage d'information. Le premier, \emph{Tortoise SVN}, est un logiciel de suivi de version~: il permet de conserver l'historique de vos modifications. Le second, \emph{HTML Help Workshop}, permet de construire des fichiers d'aide au format \emph{chm}. Le troisime, \emph{InnoSetup}, permet de construire un installateur, un programme qui installera votre application sur une autre machine. Le dernier outil, \emph{MoinMoin} est ce qu'on appelle un \textit{Wiki}, il permet facilement de partager l'information au sein d'une entreprise en offrant chacun la possibilit de modifier des pages internet et d'y effectuer des recherches.\indexoutil{Wiki} - -\begin{xremark}{instructions d'installation et de configuration} -Les instructions qui permettent d'installer et de configurer les applications \textit{Apache}, \textit{SVN}, \textit{MoinMoin}, ... sont extraites des sites internet de chaque applications. Elles sont valides pour les numros de version cits dans ce document mais il est possible qu'elles voluent dans le futur. Pour des versions plus rcentes, il est probable que ces installations se modifient\footnote{Les versions testes lors de l'criture de ce document sont \textit{Apache 2.2.8}, \textit{SVN 1.4.6}, \textit{MoinMoin 1.6.3}, \textit{InnoSetup 5.2.3}, \textit{Tortoise SVN 1.4.8}, \textit{HTML Help Workshop 4.74}, \textit{MySQL 5.0.51}.} . -\end{xremark} - - -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ - -\section{Modules d'aide au dveloppement} - -L'intrt de la programmation rside rarement dans le programme construit mais plutt dans ce qu'il permet de faire. Les outils qui suivent permettent de gagner du temps pas forcment lors de la conception mais plutt lors de la finalisation d'une application\footnote{Certains site comme celui-ci \httpstyle{http://sebsauvage.net/python/snyppets/index.html} sont plus utiles lors de la conception, ils recensent de nombreux usages du langages toujours illustrs d'un exemple.} - - - -\subsection{Temps d'excution} \indexfrr{temps}{excution}\indexfrr{temps}{mesure} - -Le cot d'un algorithme dfinit sa complexit en fonction de la taille des donnes qu'il manipule mais cette information est rarement disponible. Lorsqu'un programme est trop long, avant de pouvoir le modifier, il faut savoir quels sont les lments consommateurs de temps, c'est ce que permettent de faire les modules \codes{profile} et \codes{pstats}.\indexmoduleint{profile}\indexmoduleint{pstats} Le code suivant a t ajout au programme \codes{genchm.py} dfinit au paragraphe~\ref{section_chm_programme}, page~\pageref{section_chm_programme}. -\indexexemples{gnration automatique de l'aide}{} -\begin{verbatimx} -def run () : - files = [".\\genchm.py", ".\\genhelp.py", "os", "sys"] - res = genhelp.genhelp (files) - print res # ['genchm.html', 'genhelp.html', 'os.html', 'sys.html'] - genchm (res, "GenHelp") - -if __name__ == "__main__" : - # crit des informations relatives l'excution de la fonction - # run () dans le fichier profile.txt - import profile - profile.run ('run()', "profile.txt") - - # rcupre les informations stockes dans profile.txt - # et construit le nombre de passages dans chaque - # fonction et les temps d'excution moyen - import pstats - p = pstats.Stats('profile.txt') - p.strip_dirs().sort_stats(-1).print_stats() -\end{verbatimx} -Le rsultat est le suivant~: -\begin{verbatimx} -Mon May 12 22:38:02 2008 profile.txt - - 77 function calls in 5.557 CPU seconds - - Ordered by: standard name - - ncalls tottime percall cumtime percall filename:lineno(function) - 5 0.000 0.000 0.000 0.000 :0(append) - 4 0.000 0.000 0.000 0.000 :0(close) - 2 0.000 0.000 0.000 0.000 :0(len) - 4 0.003 0.001 0.003 0.001 :0(open) - 16 0.000 0.000 0.000 0.000 :0(replace) - 1 0.001 0.001 0.001 0.001 :0(setprofile) - 2 0.000 0.000 0.000 0.000 :0(split) - 5 5.551 1.110 5.551 1.110 :0(system) - 4 0.000 0.000 0.000 0.000 :0(write) - 1 0.000 0.000 5.556 5.556 :1() - 1 0.000 0.000 2.562 2.562 genchm.py:102(genchm) - 1 0.000 0.000 0.001 0.001 genchm.py:11(genhhp) - 1 0.000 0.000 5.556 5.556 genchm.py:113(run) - 1 0.000 0.000 0.001 0.001 genchm.py:42(gen_premierepage) - 13 0.000 0.000 0.000 0.000 genchm.py:54(genhh_input) - 1 0.000 0.000 0.001 0.001 genchm.py:61(genhhc) - 8 0.000 0.000 0.000 0.000 genchm.py:7(g) - 1 0.000 0.000 0.001 0.001 genchm.py:83(genhhk) - 4 0.000 0.000 2.993 0.748 genhelp.py:17(generate_help_file) - 1 0.000 0.000 2.994 2.994 genhelp.py:26(genhelp) - 0 0.000 0.000 profile:0(profiler) - 1 0.000 0.000 5.557 5.557 profile:0(run()) -\end{verbatimx} -Ces informations nous rvle que la fonction la plus souvent appele \codes{replace} ne consomme presque pas de temps d'excution. La fonction \codes{generate\_help\_file} dure prs de trois quarts de seconde chaque appel. La fonction \codes{run} est la plus longue car elle cumule le temps pass dans toutes les autres. - - -\subsection{Tests systmatiques avec \codes{doctest}} \indexfrr{test}{systmatique} - -Lorsqu'il s'agit d'un programme court, il n'est pas ncessaire de bien rflchir la structure d'un programme ni vrifier de temps en temps que ce qu'on a crit auparavant continue de fonctionner malgr toutes les modifications apportes au programme. Car il existe certains piges rcurrents en informatique inhrents toutes les applications consquentes. Le schma suivant retrace l'historique de la cration de trois fonctions. -\begin{center}\begin{tabular}{lll} -\codes{fonction\;A} & crite en janvier & \\ \hline -\codes{fonction\;B} & crite en janvier & utilise \codes{fonction\;A} \\ \hline -\codes{fonction\;C} & crite en juin & utilise \codes{fonction\;A} -\end{tabular}\end{center} -En juillet, on s'aperoit qu'il faut modifier \codes{fonction\;C}, cette modification implique la modification de \codes{fonction\;A}. Quel est l'impact sur \codes{fonction\;B} qui est une vieille fonction mais dont le comportement ne doit absolument pas changer~? Ce cas de figure se produit frquemment lors de la conception d'une application et il n'est pas toujours facile de prvoir les consquences d'une modifications d'une fonction lorsque celle-ci est appele d'un peu partout dans le code. - -Une des solutions proposes par le langage \python est le module \codes{doctest}.\indexmoduleint{doctest} Il permet de simplifier le travail de vrification pour des fonctions qui retourne un rsultat. Plus prcisment, il est possible de spcifier une liste d'appels une fonction et de comparer le rsultat avec un rsultat attendu ou souhait. - -L'exemple suivant utilise une fonction d'addition de deux listes. Elle retourne une liste de mme taille contenant la somme membre membre des deux listes. On souhaite vrifier que cette fonction retourne les bonnes valeurs pour certaines valeurs d'entres connues. Dans ce cas, on souhaite s'assurer que la fonction retourne bien~: -\begin{center}\begin{tabular}{|l|l|l|} \hline -\codes{l1} & \codes{l2} & rsultat \\ \hline -\codes{[]} & \codes{[]} & \codes{[]} \\ -\codes{[1,2]} & \codes{[3,-1]} & \codes{[4, 1]} \\ \hline -\end{tabular}\end{center} - -La premire tape est d'ajouter ces rsultats dans le commentaire associ la fonction. On fait prcder l'appel de \codes{>>>} et on crit le rsultat sur la ligne suivante. - -\begin{verbatimx} ->>> addition ( [1,2], [3,-1]) -[4, 1] -\end{verbatimx} - -Il suffit ensuite d'ajouter une fonction appelant ces tests pour le module en question~: -\indexexemples{\codesindex{doctest}}{} -\begin{verbatimx} -def _test(): - import doctest - print doctest.testmod() -\end{verbatimx} -Si le test est valid, il ne se passe rien lorsqu'on appelle la fonction \codes{\_test}, sinon le message suivant apparat~: -\begin{verbatimx} -File "testdoc1.py", line 6, in __main__.addition -Failed example: - addition ( [1,2], [3,-1]) -Expected: - [4, 1] -Got: - [4, 1] -********************************************************************** -1 items had failures: - 1 of 2 in __main__.addition -***Test Failed*** 1 failures. -\end{verbatimx} -Dans ce cas prcis, une erreur se dclenche car un espace de trop a t ajout au rsultat attendu. Il suffit d'appeler rgulirement ou chaque modification du programme la fonction \codes{_test} de tous les modules d'un programme pour s'assurer que les rsultats sont toujours ceux attendus. On peut mettre plusieurs tests bout bout, le programme complet donne~: - -\inputcode{../python_cours/programme/testdoc1.py}{exemple de test avec \codesindex{doctest}} - -Il reste grer le cas o la fonction retourne une exception. Il suffit d'inclure le texte suivant dans le commentaires\footnote{Il faut faire attention aux espaces rsiduels en fin de ligne, ceux-ci doivent tre supprims dans le commentaires}. Les deux premires lignes sont identiques chaque fois, la dernire est l'exception lance par la fonction. -\begin{verbatimx} - Traceback (most recent call last): - ... - Exception: listes de tailles diffrentes -\end{verbatimx} - -Le programme complet suit~: - -\inputcode{../python_cours/programme/testdoc2.py}{exemple de test plus complet avec \codesindex{doctest}} - -Le module \codes{doctest} reste cependant trs limit puisqu'il ne permet que de tester le rsultat d'une fonction et non un paramtre modifi comme une liste. C'est une manire de faire simple et vite pour des fonctions courtes et retournant des rsultats principalement numriques. Ce module permet nanmoins d'introduire le concept de tests automatiques d'une application ou tests unitaires dvelopps par le paragraphe suivant. - - -\subsection{Tests unitaires avec \codes{unittest}} \indexfrr{test}{unitaire} \indexmoduleint{unittest} - -Les tests unitaires sont avant tout un concept, ils permettent de fiabiliser une application en rptant les mmes tests chaque modification du programme et chaque fois qu'une application doit tre transmise aux utilisateurs finaux\footnote{C'est ce qu'on appelle une mise en production.\indexfr{mise en production}} Le module \codes{unittest} facilite la mise en place de ces tests mais ils pourraient tout--fait tre implments sans l'utiliser. - -L'objectif reste identique celui vis par le module \codes{doctest}, il est simplement plus ambitieux. Cette fois-ci, le code correspondant aux tests sera spar du code de l'application elle-mme. Les tests inclus dont de deux types~: -\begin{enumerate} -\item vrifier que la fonction fait bien ce pour quoi elle a t cr y compris dans les cas limites, on vrifiera par exemple qu'une fonction de tri retourne bien un tableau tri, qu'une fonction retourne bien le bon code d'erreur dans un cas prcis -\item vrifier que la correction apporte suite la dcouverte d'un bug continue bien de corriger ce bug -\end{enumerate} - -Ce paragraphe n'abordera pas en dtail toutes les possibilits du module \codes{unittest}, ils ne sont pas indispensables au travail d'un ingnieur moins que son travail n'volue vers la cration d'une application qui dpasse son propre usage ou d'une application destine durer. Le programme dont on souhaite vrifier la fiabilit est celui du paragraphe prcdent~: - -\inputcode{../python_cours/programme/testunit1.py}{module tester} - -On crit maintenant un autre fichier contenant les trois tests implments avec le module \codes{doctest}. Deux concernaient des rsultats retourns par la fonction \codes{addition} et le dernier un cas gnrant une exception. Pour dfinir un test, le principe est le suivant~: -\begin{enumerate} -\item crer une classe hritant de \codes{unittest.TestCase} -\item ajouter une mthode dont le nom commence par \codes{test} -\item dans le corps de cette mthode, crire le code du test, ce dernier est valid si une srie de conditions est vrifie, pour chaque condition, on ajoutera l'instruction \codes{assert \; condition} -\end{enumerate} -\indexkeyword{assert} -Le test est pass avec succs si les conditions prcdes du mot-cl \codes{assert} sont vraies. Si l'une d'elle est fausse, le test a chou et signifie que le programme est bugg. Pour lancer les tests, il faut appeler la fonction \codes{unittest.main ()}. Cela donne le programme suivant~: - -\inputcode{../python_cours/programme/testunit2.py}{liste de tests avec \codesindex{unittest}} - -Aprs avoir modifie la fonction \codes{addition} de faon faire chouer le second test \codes{test\_addition}, le message retourn par \pythons est~: -\begin{verbatimx} -====================================================================== -ERROR: test_addition : test de [1,2] + [3,-1] != [4,1] ----------------------------------------------------------------------- -Traceback (most recent call last): - File "testunit2.py", line 16, in test_addition - assert l [0] == 4 and l [1] == 1 -IndexError: list index out of range -\end{verbatimx} -Les premires lignes reprennent le commentaires associes la mthode de test. Les lignes suivantes permettent de comprendre o l'erreur est apparue et quelle condition a fait chouer le test. La fonction \codes{addition} a galment t intentionnellement modifie pour ne pas gnrer d'exception lorsque les tailles de listes sont diffrentes. Le message suivant apparat~: -\begin{verbatimx} -====================================================================== -FAIL: on vrifie que l'addition de deux listes de tailles diffrentes gnre une exception ----------------------------------------------------------------------- -Traceback (most recent call last): - File "testunit2.py", line 27, in test_exception - assert str (e.__class__ .__name__) != "AssertionError" -AssertionError -\end{verbatimx} -Le module \codes{unittest} indique galement le temps pass effectuer ces tests et le nombre de tests lancs. Lorsqu'il existe une multitude de tests, il est sans doute prfrable de les rpartir sur plusieurs fichiers la fois. Il faut pouvoir les lancer depuis un seul fichier qui passera tous les tests unitaires en sries. C'est l'objectif du programme suivant qui rcupre tous les fichiers \codes{test_*.py} du rpertoire, les importe puis cre des suites de tests unitaires pour les mthodes \codes{test...} des classes intitules \codes{Test...}. -% -\inputcode{../python_cours/programme/alltest.py}{excution de tests unitaires rpartis sur plusieurs fichiers} - - - -\subsection{Ecrire des fichiers de log} \indexfr{logs} - -module \codes{logging} \indexmoduleint{logging} - - - -\subsection{Lancer un programme \pythons en ligne de commande} \indexfr{ligne de commande}\indexfr{commande} - -Certains dveloppements ncessitent de pouvoir excuter un programme \pythons en ligne de commande sans intervention extrieure. Ce peut tre un programme de synchronisation de deux rpertoires ou la rcupration du contenu de pages HTML, des tches souvent excutes la nuit une heure o personne n'est prsent pour le faire. Prenons par exemple le cas d'un programme trs simple de synchronisation qui recopie tous les fichiers d'un rpertoire vers un autre. La fonctionne \codes{copie\_repertoire} effectue cette tche. \indexmoduleint{glob}\indexmoduleint{shutil} -\begin{verbatimx} -# coding: cp1252 -import glob -import shutil -def copie_repertoire (rep1, rep2) : - """copie tous les fichiers d'un rpertoire rep1 vers un autre rep2""" - li = glob.glob (rep1 + "/*.*") - for l in li : - to = l.replace (rep1, rep2) # nom du fichier copi (on remplace rep1 par rep2) - shutil.copy (l, to) -copie_repertoire ("c:/original", "c:/backup") -\end{verbatimx} -% -Cette tche est en plus excut sur deux rpertoires et on ne voudrait pas avoir deux programmes diffrents alors que la tche est la mme. On souhaite pouvoir lancer le programme \pythons et lui spcifier les deux rpertoires, c'est--dire tre capable de lancer le programme comme suit (voir galement figure~\ref{poyton__cmd_synchor})~: -\begin{verbatimx} -c:\python25\python.exe synchro.py c:/original c:/backup -\end{verbatimx} - - \begin{figure}[ht] - \figureoneimageusual{ \caption{Un programme \pythons lanc en ligne de commande.} } - { \includegraphics[width=13cm]{\filextellipse{../python_cours/image/cmds}{../python_cours/image/cmds}} } - { \label{poyton__cmd_synchor}} - \end{figure} - -\indexmoduleint{sys} -Pour lancer un programme \pythons en ligne de commande, il faut crire dans une fentre de commande ou un programme d'extension \textit{bat}\indexfrr{extension}{bat} les instructions suivantes spares par des espaces~: -\begin{verbatimx} -interprteur_python programme_python argument1 argument2 ... -\end{verbatimx} -% -Il faut maintenant rcuprer ces paramtres au sein du programme \pythons grce au module \codes{sys} qui contient une variable \codes{argv} contenant la liste des paramtres de la ligne de commande. S'il y a deux paramtres, cette liste \codes{argv} contiendra trois lments~: -\begin{enumerate} -\item nom du programme -\item paramtre 1 -\item paramtre 2 -\end{enumerate} -% -Le programme suivante utilise ce mcanisme avec le programme \codes{synchro} contenant la fonction \codes{copie\_repertoire}~: -% -\inputcode{../python_cours/programme/synchro.py}{lancer un programme \pythons en ligne de commande} -% - -\begin{xremark}{paramtres contenant des espaces} -Lorsque les paramtres crits sur la ligne de commande contiennent eux-mmes des espaces, il faut les entourer avec des guillemets. -\begin{verbatimx} -c:\python25\python.exe c:\batch\synchro.py "c:\Program Files\source" "c:\Program Files\backup" -\end{verbatimx} -\end{xremark} - -Pour des besoins plus complexes, le module \codes{getopt} propose des fonctions plus labores pour traiter les paramtres de la ligne de commande.\indexmoduleint{getopt} - -\subsection{Lancer un programme \pythons en ligne de commande depuis un programme \python} \indexfr{ligne de commande}\indexfr{commande} - -Il est parfois utile de lancer un programme excutable en ligne de commande depuis un programme \python. C'est assez pratique pour ouvrir automatiquement un diteur de texte ou lancer un navigateur affichant directement une page internet prcise. Il existe plusieurs faons de faire cela. La premire est l'utilisation de la fonction \codes{system}\indexfonction{system} du module \codes{os}.\indexmoduleint{os} L'exemple suivant ouvre automatiquement l'diteur de texte \textit{SciTe}\indexoutil{SciTe} sur le fichier \codes{fichier.txt}. -\indexexemples{ligne de commande \textit{SciTe}}{} -\begin{verbatimx} -os.system ("scite -open:fichier.txt") -\end{verbatimx} -% -Un autre moyen est l'utilisation du module \codes{subprocess}.\indexmoduleint{subprocess} Il permet d'attendre ou non la fin de l'excution de la ligne de commande. -\indexexemples{\codesindex{subprocess}}{} -\begin{verbatimx} -import subprocess -args = ["scite.exe", "-open:fichier.txt"] -proc = subprocess.Popen(args) -retcode = proc.wait() # on attend la fin de l'excution -if retcode!=0: - # ici, traiter les erreurs -\end{verbatimx} -% -Certains programmes en ligne de commande crivent des informations dans la fentre d'excution. C'est le cas par exemple d'une instruction \codes{print} dans un programme \python. lorsqu'on excute un programme en ligne de commande, ces informations sont perdues moins de les rcupres. La premire solution consiste ajouter \codes{>>output.txt} en fin de ligne de commande de sorte que ces informations seront stockes dans le fichier \codes{output.txt}. -\indexexemples{\codesindex{subprocess}}{} -\begin{verbatimx} -import subprocess -args = ["scite.exe", "-open:fichier.txt", ">>output.txt"] -proc = subprocess.Popen(args) -\end{verbatimx} -% -La seconde option consiste rediriger la sortie vers le programme appelant toujours avec la fonction \codes{Popen}.\indexfonction{Popen} -% - -( venir) - -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ - - -\section{Tortoise SVN : suivi de version} \indexoutil{Tortoise SVN} - -Le premier des outils est sans doute installer avant de commencer programmer. \emph{Tortoise SVN}\footnote{\httpstyle{http://tortoisesvn.tigris.org/}}\footnote{\textit{Tortoise SVN} comprend en fait deux composants, le premier \textit{SVN} est le logiciel proprement dit, il existe sur tout type de plateforme. \textit{Tortoise} est l'interface graphique qui permet d'utiliser \textit{SVN} plus simplement mais elle est spcifique \textit{Windows}.} permet de conserver l'historique des modifications d'un fichier, d'une arborescence de fichiers. Le logiciel peut grer tout type de fichiers, toutefois, il est particulier indiqu pour les fichiers textes. C'est un outil galement qui facilite grandement le travail plusieurs sur les mmes fichiers. - -Le principe est d'avoir un rpertoire o sont stockes l'ensemble des fichiers et toutes les modifications qui y ont t apportes. Ce rpertoire principal porte souvent le nom de \emph{repository} (voir figure~\ref{fig_svn_1}).\indexfr{repository} Cette copie principale n'est pas modifiable directement. Il faut en faire autant de copies qu'il y a d'intervenants sur le projet. - - \begin{figure}[ht] - \figureoneimage { \caption{SVN conserve une copie principale que personne ne peut modifier directement. - On peut en fait autant de copies - qu'il y a de programmeurs. Chacun d'entre eux peut modifier sa copie sans interfrer sur celle des autres. } } - { \includegraphics[height=2.5cm, width=7cm]{\filextel{../python_cours/image/svn1}} } - { \label{fig_svn_1}} - \end{figure} - -\subsection{Utilisation personnelle} - -Cet outil est galement utile pour ses propres fichiers, pour conserver l'historique des modifications apportes un ensemble de fichiers. La premire tape est l'installation. - -\subsubsection{Installation et cration d'un repository} \label{troitoise_installation} \indexoutilz{TortoiseSVN}{installation} - -L'installation commence par l'excution d'un installateur \textit{Windows}\footnote{L'installation usage personnel est simple, l'utilisation pour un usage multiple permet une utilisation personnelle mais ncessite des tapes de configurations plus importantes et l'installation de trois logiciels (voir paragraphe~\ref{svn_installation_multiple}).}. Celle-ci ne pose pas de problme particulier. Une fois celle-ci termine, de nouveaux menus apparaissent dans l'explorateur \textit{Windows} lorsqu'on clique sur le bouton droit de la souris sur un rpertoire (voir figure~\ref{fig_svn_2ex}). La cration d'un repository consiste tout d'abord crer un rpertoire que SVN utilisera comme rpertoire principal. C'est un rpertoire que seul \textit{SVN} modifiera, le modifier soi-mme n'est pas conseill mme si certains fichiers de configuration peuvent l'tre mais cela sort du cadre de ce livre.\indexoutilz{SVN}{repository} - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|c|}\hline - \includegraphics[height=5cm, width=6cm]{\filextel{../python_cours/image/svn2ex}} & - \includegraphics[height=3cm, width=5cm]{\filextel{../python_cours/image/svn3r}} - \\ \hline - \end{tabular}\end{center} - \caption{ Aprs l'installation de SVN, de nouveaux menus apparaissent lors d'un clic droit de la souris au-dessus - d'un rpertoire. La seconde image intervient lorsqu'on cherche construire un repository, \textit{SVN} demande - quel type d'archivage il doit choisir. Il est prfrable de choisir le premier.} - \label{fig_svn_2ex} - \end{figure} - -L'tape suivante consiste crer un rpertoire dans le repository. Il faut encore cliquer sur le clic droit de la souris l'endroit o a t cr le repository et choisir \textit{RepoBrowser}. Ensuite, un nouveau clic droit de la souris dans la fentre qui s'ouvre permet de crer un nouveau rpertoire (choisir \textit{Add Folder}). Ce premier rpertoire porte souvent le nom de \textit{racine} ou \textit{root} ou encore \textit{trunk}.\indexoutilz{SVN}{cration d'un rpertoire} - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|c|}\hline - \includegraphics[width=3.4cm]{\filextel{../python_cours/image/svn5f}} & - \includegraphics[width=9cm]{\filextel{../python_cours/image/svn4f}} - \\ \hline - \end{tabular}\end{center} - \caption{ Cration du premier rpertoire du repository. } - \label{fig_svn_3f} - \end{figure} - -\subsubsection{Utilisation} - -Le principe de \textit{SVN} est de faire correspondre un rpertoire du disque dur au premier rpertoire du repository. Ce sera le rpertoire de travail. Le nom de l'opration est \textit{CheckOut} (voir figure~\ref{fig_svn_4s}).\indexoutilz{SVN}{CheckOut} \textit{SVN} cre un rpertoire si celui-ci n'existe pas et y insre galement un rpertoire cach \textit{.svn}.\indexoutilz{SVN}{.svn} Il contient des informations interne \textit{SVN}. Il ne faut ni le supprimer ni le modifier. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|c|}\hline - \includegraphics[width=3.4cm]{\filextel{../python_cours/image/svn61}} & - \includegraphics[width=10cm]{\filextel{../python_cours/image/svn72}} - \\ \hline - \end{tabular}\end{center} - \caption{ Cration d'une correspondance entre un rpertoire du disque dur et un rpertoire du repository. } - \label{fig_svn_4s} - \end{figure} - -Ajouter un fichier au rpertoire \textit{racine} du disque dur n'a pas d'effet sur le repository. Pour l'y inclure, il faut utiliser l'opration \textit{Commit} (voir la figure~\ref{fig_svn_5n}).\indexoutilz{SVN}{Commit} Il faut cocher la case associe au fichier cr, ajouter un commentaire et cliquer sur \textit{Ok}. - - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|c|}\hline - \includegraphics[width=3cm]{\filextel{../python_cours/image/svn8nn}} & - \includegraphics[width=10.4cm]{\filextel{../python_cours/image/svn8n}} - \\ \hline - \end{tabular}\end{center} - \caption{ Ajout d'un fichier texte au repository.} - \label{fig_svn_5n} - \end{figure} - -Un icne vert apparat adoss au fichier cr (voir figure~\ref{fig_svn_6i}), il signifie que le fichier est identique dans le repository et dans le rpertoire associ. Sa modification entrane l'apparition d'un icne rouge qui signifie que la copie du disque dur a t modifie. La rptition de l'opration \textit{Commit} permet de basculer les modifications dans le repository et de faire apparatre l'icne vert. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|c|}\hline - \includegraphics[height=1cm, width=3cm]{\filextel{../python_cours/image/svn9a}} & - \includegraphics[height=1cm, width=3cm]{\filextel{../python_cours/image/svn9b}} - \\ \hline - \end{tabular}\end{center} - \caption{ Icnes \textit{SVN}.} - \label{fig_svn_6i} - \end{figure} - -Un nouveau clic droit sur le fichier modifi et la slection du sous-menu \textit{Log} permet d'afficher l'ensemble des modifications intervenues sur ce fichier (voir figure~\ref{fig_svn_7l}).\indexoutilz{SVN}{Log} Un double-clic sur le fichier en question permet de comparer deux versions conscutives, de voir les lignes ajoutes, supprimes et modifies. Cette fonctionnalit ne concerne que les fichiers textes. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|c|}\hline - \includegraphics[height=10cm, width=6cm]{\filextel{../python_cours/image/svn10a}} & - \includegraphics[height=7cm, width=11cm]{\filextel{../python_cours/image/svn10b}} - \\ \hline - \end{tabular}\end{center} - \caption{ Historique des modifications d'un fichier.} - \label{fig_svn_7l} - \end{figure} - -Les autres menus ne seront pas dtaills, leur exploration est laisse au soin du lecteur. Toutefois, l'un d'entre deux permet de rcuprer une vieille version d'un fichier, antrieure aux dernires modifications. De la mme manire, si un fichier est supprime par mgarde, celui-ci, jamais prsent dans le repository, peut tre rcupr tout moment. - - - -\subsubsection{Configuration} - -Un clic droit sur le rpertoire repository permet d'accder la partie \textit{Settings}.\indexoutilz{SVN}{Settings} Le seul paramtre dcrit dans ce paragraphe est celui intitul \textit{Global ignore patterns} de la section \textit{General} (voir figure~\ref{fig_svn_8s}). Il permet que certains fichiers ne soient pas pris en compte par \textit{SVN}. Par exemple, lorsqu'on programme en \python, de nombreux fichiers d'extension \textit{pyc} sont gnrs. Il ne sert rien de les conserver dans le repository puisque ceux-ci seront de toutes faons recrs par \pythons si ceux-ci ont t supprims ou si le fichier source leur origine a t modifi~: ce sont des fichiers temporaires. Pour viter que \textit{SVN} n'en tienne compte, il suffit d'ajouter l'expression \textit{*.pyc} dans le champ \textit{Global ignore patterns}. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|c|}\hline - \includegraphics[height=5cm, width=5cm]{\filextel{../python_cours/image/svn11a}} & - \includegraphics[height=7cm, width=11cm]{\filextel{../python_cours/image/svn11b}} - \\ \hline - \end{tabular}\end{center} - \caption{ Configuration de \textit{SVN}, il est possible de faire en sorte que \textit{SVN} ne tienne pas compte - de certains fichiers dans le champ \textit{Global ignore patterns}. S'il y a plusieurs filtres, - ils doivent tre spars par des espaces.} - \label{fig_svn_8s} - \end{figure} - -\subsubsection{Plusieurs copies du repository} - -Mme si ce n'est pas souvent utile, il est possible de travailler avec plusieurs copies du repository. Chaque copie doit tre construite avec la fonctionnalit \textit{CheckOut}. Une fois ces deux copies crs, il faut pouvoir propager les modifcations d'une copie l'autre. La fonctionnalit \textit{Commit} applique la copie modifie permet de transmettre des modifications au repository qui contient l'unique version officielle. Ensuite, la fonctionnalit \textit{Update}\indexoutilz{SVN}{Update} permet de mettre jour en chargeant depuis le repository les dernires modifications. Ce principe est illustr par le schma de la figure~\ref{fig_svn_sevcopie}. - - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=3cm, width=10cm]{\filextel{../python_cours/image/svn12_}} - \\ \hline - \end{tabular}\end{center} - \caption{ Lorsqu'on travaille avec plusieurs copies, la fonctionnalit \textit{Update} fait les modifications depuis - le repository jusqu' une copie (celle sur laquelle on applique l'opration \textit{Update}. La fonctionnalit - \textit{Commit} est le chemin inverse~: on transmet les modifications depuis une copie vers le repository.} - \label{fig_svn_sevcopie} - \end{figure} - -Certains problmes peuvent survenir lorsqu'on travaille sur les mmes fichiers depuis les deux copies. Il faut toujours rappatrier les dernires modifications enregistres dans le repository~: un \textit{Commit} est toujours prcd d'un \textit{Update}. \textit{SVN} est capable dans la plupart des cas de grer les conflits. Seuls restent les cas o les mmes lignes du mme fichier sont modifies. Lors d'un \textit{Update}, on peut rcuprer une modification qui rentre en conflit sur la version en cours. Il faut alors rsoudre ce conflit puis indiquer \textit{SVN} que le conflit est rsolu (par l'intermdiaire des sous-menu accessibles avec la souris). \textit{SVN} n'autorisera pas de \textit{Commit} sur un fichier pour lequel il subsiste un conflit irrsolu.\indexoutilz{SVN}{Resolve} - - - -\subsection{Utilisation plusieurs} - -Une utilisation plusieurs requiert une machine accessible par tous sur laquelle sera install le repository. La communication entre cette machine et celles des autres utilisateurs se fera par l'intermdiaire d'un serveur. Le plus couramment utilis est le serveur \textit{Apache}. C'est une application qui va fonctionner en permanence sur l'ordinateur et qui permettra les changes d'informations. - -\subsubsection{Installation sur la machine contenant le repository} \label{svn_installation_multiple} - -\textbf{Installation de \textit{SVN}} \indexoutilz{SVN}{installation} - -L'installation est diffrente car l'application \textit{SVN} utilise est lgrement diffrente et il faut faire attention que \textit{SVN} et \textit{Apache} ont des numros de versions cohrents. On commence donc par l'installation de \textit{SVN}. Il faut tout d'abord tlcharger une version \textit{SVN} pour une version \textit{Apache} spcifique \footnote{Au moment o est crit ce livre, la version \textit{SVN} est 1.4.6 pour \textit{Apache 2.2}, \textit{SVN} est tlchargeable l'adresse \httpstyle{http://subversion.tigris.org/project\_packages.html} et apparat sous l'intitul \textit{Win32 packages built against Apache 2.2} pour \textit{Windows}.} - -Ensuite, on va crer un repository. Pour cela, il faut ouvrir une fentre de commande \textit{Windows} et crire les instructions suivantes pour crer un repository l'emplacement \codes{c:\backslash svnrepository}~: -\begin{verbatimx} -cd "rpertoire d'installation de SVN\bin" -svnadmin create c:\svnrepository -\end{verbatimx} - -\textbf{Installation de \textit{Apache}} -Voir paragraphe~\ref{apache_paragraphe_section} page~\pageref{apache_paragraphe_section}. - -\subsubsection{Installation sur les autres machines} - -L'installation est beaucoup plus simple puisqu'il suffit d'installer \textit{Tortoire SVN} (voir paragraphe~\ref{troitoise_installation}, page~\pageref{troitoise_installation}). Il suffira de faire une opration \codes{checkout} depuis le repository \httpstyle{http://localhost/svn/} \httpstyle{http://127.0.0.1/svn/} o \codes{127.0.0.1} est l'adresse~IP de la machine o est installe le repository. - -\begin{xremark}{connexion sur \textit{Apache} impossible depuis une autre machine du rseau} \label{remark_firewall} -Il est possible que l'accs la machine o est install \textit{Apache} soit impossible depuis une autre machine. Il y a deux causes possibles, la premire est que les deux machines ne peuvent pas communiquer ensemble. Pour vrifier cela, il suffit d'ouvrir une fentre de commande \textit{Windows} et d'crire depuis la machine distante~: -\indexexemples{\codesindex{ping}}{} -\begin{verbatimx} -ping 127.0.0.1 -\end{verbatimx} -On suppose que \codes{127.0.0.1} est l'adresse IP de la machine o figure \textit{Apache}. Si le rsultat est ngatif, il faut d'abord rsoudre ce problme l. La seconde cause est le \textit{firewall}\indexfr{firewall} (ou \textit{pare-feu})\indexfr{pare-feu} qui empche les connexions entrantes. Il est possible que ce soit le \textit{firewall} de \textit{Windows} qui soit utilis, il est possible de le dsactiver depuis le panneau de contrle ou le laisser activer mais autoriser une exception concernant le port qu'coute le serveur \textit{Apache}. -\end{xremark} - -\begin{xremark}{\textit{Apache} coute un autre port que le port 80}\label{remark_port_81} -Au cas o \textit{Apache} coute un autre port que le port 80, il faut le prciser lorsqu'on se connecte depuis une machine distante. Si le port cout est le port~81, il faudra crire dans la barre d'adresse~: -\begin{verbatimx} -http://127.0.0.1:81/ -\end{verbatimx} -\end{xremark} - -\subsubsection{Backup} \indexfr{backup}\indexoutilz{SVN}{backup} - -Il peut tre intressant de sauvergarder rgulirement le repository au cas o la machine qui le contiendrait tombe en panne. Cette option ne sera pas dtaille ici mais elle est disponible avec \codes{Apache} qui autorise l'excution de tches intervalles rguliers. - -\subsubsection{Via internet} - -\textit{SVN} est plus souvent install pour tre utilis l'intrieur d'une entreprise et n'est accessible que depuis son rseau local. Nanmoins, il n'est pas exclu de travailler depuis des postes distants via Internet. Comme pour une utilisation interne, cela suppose qu'un ordinateur servira de repository, la diffrence viendra de l'URL permettant de se connecter au seveur \textit{SVN} qui pointera vers l'extrieur. Toutefois, cette configuration soulve des problmes de scurit. Il faut que le serveur soit bien configur pour ne laisser l'accs aux fichiers partags qu' ceux qui y sont autoriss. - -\subsubsection{Limitations} - -Travailleur plus d'une dizaine de personnes sur les mmes fichiers peut parfois poser des problmes. Comme un \textit{Update} prcde toujours un \textit{Commit}, il arrive, en priode de travail intense, qu'un autre programmeur russisse faire passer ses modifications entre la succession \textit{Update}-\textit{Commit} d'un autre programmeur. - -\indexfrr{gestion}{centralise}\indexfr{open source}\indexfrr{gestion}{dcentralise} -La gestion des fichiers \textit{SVN} est dite centralise car il existe une seule version officielle de tous les fichiers. Cette configuration n'est pas toujours approprie la gestion du code source de projets open source auxquels participent un grand nombre de programmeurs. La configuration employe est dite dcentralise, ceci signifie qu'il n'existe plus de version officielle mais que chacun possde une version unique et identifie. Il n'y a plus d'opration \textit{Commit} ou \textit{Update} mais simplement l'opration \textit{Merge} qui consiste fusionner les fichiers de deux versions. Avec ce schma, le problme voqu au paragraphe prcdent n'existe plus. - -\subsubsection{Module \codes{pysvn}} \indexmoduleext{pysvn} - -Un module \codes{pysvn}\footnote{tlchargeable depuis l'adresse \httpstyle{http://pysvn.tigris.org/}}\indexmoduleext{pysvn} permet de rcuprer des informations sur un repository et de faire des modifications par l'intermdiaire du langage \python. Grce cela, on pourrait plus facilement piloter \textit{SVN} et faciliter l'excution de tches rcurrentes comme la mise jour chaque nuit de tous les machines de chaque utilisateur. Il faut vrifier lors de l'installation que le module \codes{pysvan} install est cohrent la fois avec la version de \pythons et la version de \textit{SVN} installe. - - - -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ - -\section{HTML Help Workshop : construction d'un fichier d'aide} \indexoutil{HTML Help Workshop} \indexoutilz{HTML Help Workshop}{installation} - -La rdaction d'une documentation devrait accompagner toute application destine tout autre utilisateur que le concepteur lui-mme. Un moyen simple est la rdaction de pages HTML. Ces pages peuvent ensuite compiles pour ne former qu'un seul fichier. A cet ensemble est adjoint une table des matires, un indexe, et un moteur de recherche simple. La premire partie du travail est assure par \pythons lui-mme avec le module \codes{pydoc}.\indexmoduleint{pydoc}. La seconde partie est assure par le logiciel \textit{HTML Help Workshop}\footnote{\httpstyle{http://msdn.microsoft.com/en-us/library/ms669985.aspx}}. - -\subsection{Cration automatique d'une documentation avec \codes{pydoc}} - -Le module \codes{pydoc} ne s'utilise pas directement l'intrieur d'un programme \pythons mais en ligne de commande. L'exemple suivant gnre l'aide associe au module \codes{random} et celle du programme \codes{mon\_programme.py} dans le rpertoire courant. -\begin{verbatimx} -c:\python25\python c:\python25\lib\pydoc.py random -c:\python25\python c:\python25\lib\pydoc.py .\mon_programme.py -\end{verbatimx} -Pour l'inclure dans un programme \python, il faut reproduire un appel en ligne de commande grce la fonction \codes{system} du module \codes{os}~:\indexmoduleint{os}\indexfonction{system} -\begin{verbatimx} -import os -os.system (r"c:\python25\python c:\python25\lib\pydoc.py .\mon_programme.py") -\end{verbatimx} -Le nom d'un module standard doit apparatre sans extension, le nom d'un fichier peut apparatre sans extension s'il se trouve dans le rpertoire depuis lequel est lanc l'appel \codes{pydoc}, sinon, il faut mettre son chemin complet avec au moins un symbol~$\backslash$. Le programme suivant cre automatique l'aide associe une liste de fichiers ou de modules, le rsultat est illustr par la figure~\ref{fig_pydoc_sample}. - - -\indexmoduleint{pydoc} -\inputcode{../python_cours/programme/genhelp.py}{gnration automatique de l'aide} - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[width=10.4cm]{\filextel{../python_cours/image/pydoch}} - \\ \hline - \end{tabular}\end{center} - \caption{Exemple gnr avec \codescaption{pydoc}.} - \label{fig_pydoc_sample} - \end{figure} - - -\subsection{Compilation des pages HTML avec \textit{HTML Help Workshop}} - -Les pages gnres par l'exemple prcdents vont tre reprise par l'application \textit{HTML Help Workshop} pour gnrer un fichier d'aide de type \textit{chm}.\indexfrr{extension}{chm} Il est possible d'utiliser cette application de faon classique (voir figure~\ref{fig_hhw}) mais l'objectif de cette section sera de gnrer ce fichier de faon automatique grce un script \python. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=8cm, width=8cm]{\filextel{../python_cours/image/hhw}} - \\ \hline - \end{tabular}\end{center} - \caption{Fentre de l'application \textit{HTML Help Workshop}.} - \label{fig_hhw} - \end{figure} - -Pour cela, il faut construire trois fichiers~: -\begin{enumerate} -\item help.hhp : le fichier de configuration de l'aide\indexfrr{extension}{hhp} -\item help.hhc : le fichier contenant la table des matires (format HTML)\indexfrr{extension}{hhc} -\item help.hhk : le fichier contenant l'indexe (format HTML)\indexfrr{extension}{hhk} -\end{enumerate} - -L'utilisation de ce genre d'outils comme \textit{HTML Help Workshop} est parfois laborieuse, apprendre s'en servir n'a en soi pas beaucoup d'intrt et une fois que la gnration des fichiers \textit{chm} est automatise, il n'est pas rare qu'on oublie leur mode d'emploi. Les paragraphes qui suivent dcrivent sommairement l'application et vous permettront de ne pas lui consacrer trop de temps. Le premier fichier d'extension \textit{hhp} dfinit le projet, un exemple suit, seules les lignes commentes sont importantes. - -\inputcode{../python_cours/programme/exhelp.hhp}{exemple de fichier \textit{hpp} pour \textit{HTML Help Workshop}} - -\indexfr{HTML} -Les fichiers \textit{hhc} et \textit{hhk} sont dfinis avec la mme syntaxe HTML et leur structure est une arborescence. Ces deux fichiers commencent par l'en-tte suivant~: -\begin{verbatimx} - -\end{verbatimx} -Et se concluent par le pied de tte~: -\begin{verbatimx} - -\end{verbatimx} -Chaque lment est compos d'un intitul et d'une page HTML correspondante qui est facultative, ces deux informations vont tre insrs dans le code HTML qui suit~: -\begin{verbatimx} -
  • - - - -\end{verbatimx} -Les niveaux et sous-niveaux sont dfinis par l'instruction \codes{
      } qui permet d'ouvrir une section de niveau infrieure et \codes{
    } de la fermer.\indexhtml{
      }\indexhtml{
    } Appliqu un exemple d'indexe, cela donne~: - -\inputcode{../python_cours/programme/exhelp.hhk}{exemple de fichier \textit{hhk}} - -La dernire tape est de construire un programme \pythons qui construit automatiquement les trois fichiers ncessaires \textit{HTML Help Workshop}. L'exemple suivant est assez simple, il pourrait tre toff notamment en ajoutant l'indexe le nom des classes et de leur mthodes ce qu'il ne fait pas. - -\label{section_chm_programme} -\inputcode{../python_cours/programme/genchm.py}{gnration automatique d'un fichier \textit{chm}} - -\begin{xremark}{problmes de compilation} -Il arrive que les messages d'erreurs de ce logiciel ne soient pas trs explicites. Lors de la compilation du fichier \textit{chm}, il s'intresse aussi toutes les pages dont l'hyperlien dans une des pages incluses dans le fichier \textit{hpp}, c'est pourquoi le nombre de pages final peut tre plus lev que celui des pages recenses. -\end{xremark} - - - -\subsection{Prolongements} - -\indexmoduleext{epydoc}\indexoutil{Graphviz}\indexoutil{Latex}\indexoutil{Miktex}\indexmoduleext{doxypy} -La documentation gnre par le module \codes{pydoc} n'est pas trs agrable lire. D'autres outils permettent d'amliorer la qualit des pages automatiquement gnres et de gnrer d'autres formats que des pages HTML. Le premier est \textit{epydoc}\footnote{\httpstyle{http://epydoc.sourceforge.net/}} qui fonctionne de faon similaire \codes{pydoc} mais dj plus agrable. Le plus rpandu est \textit{Doxygen}\footnote{\httpstyle{http://www.stack.nl/~dimitri/doxygen/}} car il traite la plupart des langages informatique.\indexoutil{Doxygen} Son utilisation fait appel d'autres outils tels que \textit{Graphviz}\footnote{\httpstyle{http://www.graphviz.org/}, cet outil sert reprsenter des graphes.}, \textit{Latex}\footnote{\textit{Latex} n'est pas un outil en soi, c'est un langage permettant de crer des documents usage le plus souvent scientifique. \textit{Miktex} fournit un compilateur sur \textit{Windows} (\httpstyle{http://miktex.org/}).}, ou encore le module \codes{doxypy}\footnote{\httpstyle{http://code.foosel.org/doxypy}}. - - - -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ - -\section{InnoSetup : installateur} \indexoutil{InnoSetup} \indexoutilz{InnoSetup}{installation} - -Un installateur rpond au problme~: comment permettre d'autres d'utiliser votre travail en peu de temps~? Une application a souvent besoin de plusieurs fichiers pour fonctionner et ceux-ci doivent respecter une certaine arborescence. \textit{InnoSetup}\footnote{\httpstyle{http://www.jrsoftware.org/isinfo.php}} est une application qui rpond simplement ce problme. Il permet de concevoir un programme excutable (d'extension \textit{exe}) qui recopie aux bons endroits les bons fichiers. Il permet plus prcisment de~: -\begin{enumerate} -\item grouper plusieurs fichiers ensemble en un seul, ces fichiers peuvent provenir de diffrents rpertoires depuis la machine du concepteur -\item recopier ces fichiers des endroits spcifiques sur la machine de l'utilisateur -\item excuter certaines tches avant la premire utilisation -\item construire un sous-menu dans le menu \textit{Dmarrer / Tous les programmes} de \textit{Windows} -\end{enumerate} - -\subsection{Sections \textit{InnoSetup}} - -\subsubsection{section \codes{[Setup]}} - -Toutes ces actions sont dfinies par un fichier texte d'extension \textit{iss}.\indexfrr{extension}{iss} Celui-ci commence par un en-tte dfinissant les options gnrales. -\indexexemples{\textit{InnoSetup}}{} - -\begin{verbatimx} -[Setup] ; nom de la section -AppName=HalPython ; nom de l'application installer -AppVerName=HalPython 1.5.1162 ; numro de version -AppPublisher=Xavier Dupr ; auteur -AppPublisherURL=http://www.xavierdupre.fr/ ; site web -AppSupportURL=http://www.xavierdupre.fr/ ; site web, support -AppUpdatesURL=http://www.xavierdupre.fr/ ; site web, mise jour -DefaultDirName={pf}/HalPython ; emplacement par dfaut sur la machine utilisateur - ; le code {pf} signife le rpertoire \textit{Program Files} -DefaultGroupName=HalPython ; nom par dfaut du sous menu dans - ; Dmarrer / Tous les programmes -OutputDir=c: ; rpertoire o sera crit l'installateur -OutputBaseFilename=setup_HalPython_py25 ; nom de l'installateur ou setup -Compression=lzma ; type de compression, ne pas changer -SolidCompression=yes ; type de compression, ne pas changer -VersionInfoVersion=1.0.0 ; version, ne pas changer -\end{verbatimx} - -\subsubsection{section \codes{[Files]}} - -Ensuite, il faut dfinir les quatre tapes dfinies prcdemment. Les deux premires seront regroupes en une seule section \codes{[Files]} qui indiquera en mme temps l'emplacement d'un fichier chez le concepteur et sa destination chez l'utilisateur. -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -[Files] -Source: "chemin_concepteur"; DestDir: "chemin_utilisateur" ; -Source: "..\hal_dll.dll"; DestDir: "{app}\hal_python" ; autre exemple -\end{verbatimx} - -L'installateur construit par \textit{InnoSetup} demande l'utilisateur de spcifier un chemin d'installation. Le code \textit{app} fait rfrence celui-ci lorsqu'il est utilis dans la dfinition du chemin de destination. - -\subsubsection{section \codes{[Run]}} - -La partie excution permet d'excuter certaines oprations comme des oprations sur les fichiers en lignes de commande, la compilation de fichiers, l'installation d'un module \pythons ou encore l'installation d'autres applications. Par exemple, les lignes suivantes permettent de lancer l'installation du langage \pythons puis de le supprimer (suppression du fichier \textit{python-2.5.2.msi}). -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -[Run] -Filename: "{win}\system32\msiexec.exe"; Parameters: "/i ""{app}\python-2.5.2.msi"" /qr ALLUSERS=1"; -Filename: "{cmd}"; Parameters: "/c del python-2.5.2.msi"; WorkingDir: "{app}"; -\end{verbatimx} - - -\subsubsection{section \codes{[Icons]}} - -La section \codes{[Icons]} permet d'ajouter un sous-menu dans le menu \textit{Dmarrer / Tous les programmes}. Le nom de ce sous-menu est prcis dans la section \codes{[Setup]}. -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -[Icons] -; liens vers diverses applications -Name: "{group}\PyScripter"; Filename: "{app}\PyScripter.exe"; WorkingDir: "{app}" -Name: "{group}\PyScripter Help"; Filename: "{app}\pyscripter.chm"; WorkingDir: "{app}" -Name: "{group}\Help"; Filename: "{app}\hal_python.chm"; WorkingDir: "{app}" -Name: "{group}\smallest sample with PyScripter"; Filename: "{app}\small_sample.bat"; WorkingDir: "{app}" - -; hyperlien ou url vers un site -Name: "{group}\Website"; Filename: "{app}\hal_python.url" - -; lien vers le dsinstalleur cr automatiquement par InnoSetup -Name: "{group}\uninstall"; Filename: "{uninstallexe}"; WorkingDir: "{app}" -\end{verbatimx} - -Le fichier \codes{hal\_python.url} contient le texte suivant~: -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -[InternetShortcut] -URL=http://www.xavierdupre.fr/hal_python/hal_python_help_html/index.html -\end{verbatimx} - -La section \codes{[Tasks]} permet de crer un icne sur le bureau reli au sous-menu dfinit auparavant. -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -[Tasks] -Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; - Flags: checkedonce -\end{verbatimx} - - -\subsubsection{section \codes{[Registry]}} -Cette section permet de modifier les cls de registres de \textit{Windows}. Cela permet de mmoriser le numro de version ou encore le chemin utilis lors d'une installation prcdente. -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -[Registry] -Root: HKLM; Subkey: "SOFTWARE\HalPython\InstallPath"; ValueType: string; ValueName: ""; - ValueData: "{app}"; Flags: uninsdeletekey -Root: HKLM; Subkey: "SOFTWARE\HalPython\Version"; ValueType: string; - ValueName: ""; ValueData: "1.5.1162"; Flags: uninsdeletekey -\end{verbatimx} - - -\subsubsection{section \codes{[Code]}} - -Enfin, si certaines oprations effectuer sont trop complexes pour tre dcrites par ces sections, il est possible de coder des fonctions, d'ajouter des botes de dialogues permettant de choisir des options. Cette dernire possibilit ne sera pas dcrite ici. - -\subsection{Examples} - -\subsubsection{Exemple 1 : installateur pour un module \python} - -L'exemple suivant dfinit un installateur pour un module \pythons construit avec \textit{Boost Python}. Il inclut galement l'installateur de \pythons 2.5 ainsi qu'un diteur de texte. De ce fait, cet unique installateur inclut tout ce qu'il faut pour pouvoir se servir du module. Le rsultat sera un sous-menu dans le menu \textit{Dmarrer / Tous les programmes} incluant diffrents liens dont un ouvrant l'diteur de texte sur un exemple de programme \pythons utilisant le module install. Certaines fonctions ont t ajouts afin que le langage \pythons 2.5 ne soit pas install si celui-ci l'a dj t. - -Tout texte aprs un point virgule est considr comme un commentaire, les instructions des sections \codes{[Run]}, \codes{[Tasks]}, \codes{[Registry]} sont crites sur deux lignes pour des raisons de prsentation mais doivent l'tre sur une seule. - -\inputcode{../python_cours/programme/hal_python.iss}{construction d'un installateur} - -Le fichier \codes{sample.bat} contient la ligne suivante~: -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -PyScripter.exe sample.py -\end{verbatimx} - -\subsubsection{Exemple 2 : mise jour du module} - -L'installateur suivant assure la mise jour du module. Il vite ainsi d'inclure dans le setup de gros fichiers comme l'installateur de \python ou l'diteur de texte. Ce fichier de description est presque identique au prcdent, les parties ne concernant pas le module ont t supprimes et une fonction \codes{InitalizeSetup} a t ajoute. Cette dernire est appele au dmarrage de l'installateur, elle vrifie que tous les lments sont ncessaires au bon fonctionnament du module. En particulier, si \pythons 2.5 n'est pas install, l'installateur affiche un message puis abandonne. - -\inputcode{../python_cours/programme/hal_python_update.iss}{construction d'un installateur de mise jour} - - -\subsection{Quelques trucs en plus} - -\subsubsection{Crer un raccourci} - -Le code suivant permet d'insrer un raccourci dans le sous-menu insr dans \textit{Dmarrer / Tous les programmes}. La premire partie appelle la fonction \codes{GetLnkSciTE} qui cre un raccourci \codes{scite.exe \; sample.y}. La seconde partie consiste insrer une ligne permettant d'ajouter le raccourci au sous-menu. -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -[Code] -function GetLnkSciTE(Param:String): String; -begin - Result := CreateShellLink(ExpandConstant('{app}\SciTE sample.lnk'), - 'Opens SciTE with a sample', - ExpandConstant('{app}\wscite\scite.exe'), - ExpandConstant('"{app}\sample.py"'), - ExpandConstant('{app}'), - '', - 0, - SW_SHOWNORMAL); -end; - -[Icons] -Name: "{group}\smallest sample with SciTE"; Filename: "{code:GetLnkSciTE}"; WorkingDir: "{app}" -\end{verbatimx} - -\subsubsection{Executer des tches plus compliques} - -Il n'est pas vident d'apprendre encore un nouveau langage tel que celui utilis par \textit{InnoSetup}. Pour des tches plus compliques rien n'empche d'excuter un programme \pythons rcuprant les paramtres dont il a besoin sur sa ligne de commande. L'exemple suivant permet de remplacer dans un fichier install une chane de caractres par une autre. Le programme prend trois paramtres sur sa ligne de commande~: le fichier modifier, la chane de caractres remplacer et la chanes qui la remplace. -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -def replace_string (file, s1, s2) : - f = open (file, "r") - li = f.readlines () - f.close () - f = open (file, "w") - for l in li : - s = l.replace (s1, s2) - f.write (s) - f.close () - -if __name__ == "__main__" : - import sys - file = sys.argv [1] # fichier modifier - s1 = sys.argv [2] # chane remplacer - s2 = sys.argv [3] # nouvelle chane - replace_string (file, s1, s2) -\end{verbatimx} -% -On cherche remplacer dans le cas prsent la chane \codes{"=pythonw"} par \codes{"=c:\backslash python25\backslash pythonw"}. -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -[Code] -; retourne le chemin du programme pythonw.exe -function GetPythonPathW(Param: String): String; -begin - Result := ''; - Result := ExpandConstant('{reg:HKLM\Software\Python\PythonCore\2.5\InstallPath,|}'); - if Result <> '' then - Result := Result + '\pythonw'; -end; - -; construit les paramtres de la ligne de commande -; "c:\Program Files\HalPython\replace_conf.py" "=pythonw" "=c:\python25\pythonw" -function GetReplaceConf(Param:String):String; -begin - Result := ExpandConstant ('"{app}\replace_conf.py"') - Result := Result + ' ' + ExpandConstant ('"{app}\wscite\python.properties"') - Result := Result + ' "=pythonw"' - Result := Result + ' "=' + GetPythonPathW ('') + '"' ; -end; - -[Run] -; excution de la ligne de commande -Filename: "{code:GetPythonPath}"; Parameters:"{code:GetReplaceConf}"; WorkingDir: "{app}"; -\end{verbatimx} -% -Au final, la ligne de commande excute est la suivante~: -\indexexemples{\textit{InnoSetup}}{} -\begin{verbatimx} -c:\python25\pythonw "c:\Program Files\HalPython\replace_conf.py" "=pythonw" "=c:\python25\pythonw" -\end{verbatimx} - -\begin{xremark}{\codes{pythonw.exe} et \codes{python.exe}} -Dans ce cas, c'est le programme excutable \codes{pythonw.exe} et non \codes{python.exe} qui a t utilis. Ceci vite l'apparition la fentre de la ligne de commande. \indexoutil{pythonw} -\end{xremark} - - - -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ - -\section{MoinMoin : wiki} \indexoutil{MoinMoin}\indexoutil{wiki} \label{cgi_definition} - -Un \textit{Wiki} est un outil permettant d'changer facilement de l'information au sein d'une entreprise ou via Internet. Le \textit{Wiki} le plus connu est sans doute \textit{Wikipedia}.\indexfr{Wikipedia} Ce site a pour objectif de crer une encyclopdie que chacun peut modifier. L'intrt d'un \textit{Wiki} dans une entreprise est de pouvoir crer une sorte d'encyclopdie usage interne. A cela s'ajoute la possibilit d'inclure des pices jointes, de garder une trace des diffrentes modifications apportes, ou de grer les droits de chaque utilisateur, tout le monde ne pourra pas lire ou crire ou crer des pages ou certaines pages. L'outil propos ici est \textit{MoinMoin}, c'est un \textit{Wiki} crit en langage \python. - -Un autre avantage d'un \textit{Wiki} est la possibilit d'effectuer une recherche au sein des pages cres dans le \textit{Wiki}. A cette recherche s'ajoute aussi des statistiques comme le nombres de pages cres, le compte de visites de chaque pages, la possibilit d'tre inform d'un changement sur une page. Un \textit{Wiki} a pour objectif de faciliter l'accs l'information d'une entreprise. Pour donner un exemple d'utilisation de \textit{MoinMoin}, je citerai le site \textit{WikiPython}\footnote{\httpstyle{http://wikipython.flibuste.net/}}\indexfr{WikiPython} qui propose de nombreux exemples en franais sur de nombreux sujets. - -Les diffrentes tapes d'installation et de configuration sont extraites de \httpstyle{http://moinmo.in/HelpOnInstalling/ApacheOnWin32} (en anglais). Il est sans doute utile de prciser ce qu'est un script CGI\footnote{CGI : Common Gateway Interface}.\indexfrr{script}{CGI} Ces scripts sont en fait des programmes excuts par un serveur, ils peuvent excuter certaines tches sur le serveur et construire des pages HTML la vole. Typiquement, lorsque le texte d'une page HTML varie (elle affiche l'heure par exemple), cela signifie qu'elle inclut un script CGI qui insre dans la page l'heure actuelle, c'est--dire l'heure laquelle la page a t demande. Concrtement, lorsqu'un internaute se connecte une page HTML~: -\begin{enumerate} -\item Le serveur reoit la requte. -\item Le serveur examine le code de la page HTML. -\item Il commence retourner la page HTML l'internaute. -\item Lors de ce processus, s'il dtecte la prsente d'un script, il l'excute et envoie l'internaute tout ce que le script produit en terme d'affichage. -\item Le serveur a termin sa tche lorsque tous les scripts sont excuts. -\end{enumerate} -Les scripts CGI peuvent tre crit en de nombreux langages, les plus courants sont \textit{PHP} et \textit{JavaScript}. \pythons fait partie galement de la liste des langages utiliss. C'est le cas de \textit{Ruby} aussi. \indexlangage{Ruby} - -\subsection{Installation} \indexoutilz{MoinMoin}{installation} - -La premire tape consiste installer un serveur comme le serveur \textit{Apache},\indexoutil{Apache} cette installation est identique celle du paragraphe~\ref{apache_installation_par} (page~\pageref{apache_installation_par}). L'tape de configuration d'\textit{Apache} requise pour \textit{MoinMoin} pourra s'ajouter celle effectue pour \textit{SVN}. - -La seconde tape consiste installer \textit{MoinMoin}\footnote{Il est disponible l'adresse~: \httpstyle{http://moinmo.in/}}. Une fois tlcharg puis dcompress le fichier \codes{MoinMoin 1.6.3\; tar.gz}\footnote{Le site de \textit{MoinMoin} dconseille l'utilisation de \textit{WinZip} pour dcompresser le fichier tlcharg mais plutt \textit{WinRar} ou \textit{7-Zip}.}, il reste l'installer comme un module \pythons en tapant les instructions suivantes en ligne de commande~: -% -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -C: -cd c:\TEMP\moin-1.6.3 -C:\Python25\python setup.py install --record=install.log -\end{verbatimx} -% -La dernire tape de l'installation consiste crer un rpertoire dans lequel seront placs toutes les informations relatives au \textit{Wiki}. Cela signifie qu'il est possible de crer plusieurs \textit{Wiki}. Les instructions qui suivent sont excuter en ligne de commande, elles supposent que le \textit{Wiki} devra tre crer dans le rpertoire \codes{c:\backslash Moin} et que \pythons a t install dans le rpertoire \codes{c:\backslash Python25}. Dans le cas contraire, il suffit de les adapter. -% -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -cd C:\ -md Moin -md Moin\mywiki -md Moin\mywiki\data -md Moin\mywiki\underlay -cd c:\Python25\share\moin -xcopy data C:\Moin\mywiki\data /E -xcopy underlay C:\Moin\mywiki\underlay /E -copy config\*.* C:\Moin\mywiki\*.* -copy server\*.* C:\Moin\mywiki\*.* -\end{verbatimx} -% -Il reste configurer \textit{Apache} et \textit{MoinMoin} pour que les deux applications communiquent. Par la suite, on supposera que le \textit{Wiki} est cr dans le rpertoire \codes{c:\backslash Moin} et que \pythons a t install dans le rpertoire \codes{c:\backslash Python25}. Dans le cas contraire, il suffit d'adapter ces lignes. - -\subsection{Configuration d'\textit{Apache}} \label{configuration_apache_sql_plus0} \indexoutilz{Apache}{installation} -Voir paragraphe~\ref{configuration_apache_moinmoin} page~\pageref{configuration_apache_moinmoin}. - -\subsection{Configuration de \textit{MoinMoin}} - -Les indications suivantes sont tires du site officiel de \textit{MoinMoin}\footnote{plus prcisment de \httpstyle{http://moinmo.in/HelpOnConfiguration}}. Il y a principalement deux fichiers modifier, le premier gre l'excution du code \pythons au sein de \textit{Apache}, le second gre l'apparence de \textit{MoinMoin}. - - - -\subsubsection{Fichier \codes{moin.cgi}} - -Ce fichier est disponible dans le rpertoire \codes{C:/Moin/mywiki}. Il faut remplacer la ligne~: -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -#!/usr/env/bin python -\end{verbatimx} -par la ligne~: -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -#!c:/Python25/python.exe -\end{verbatimx} -% -Cette ligne spcifie om l'interprteur \pythons est disponible sur la machine du serveur. - -\begin{xremark}{pour aller plus loin} -Il est possible, si vous tes courageux, d'optimiser \textit{MoinMoin} en utilisant d'autres types de CGI\footnote{Le rle des CGI est brivement expliqu au paragraphe~\ref{cgi_definition}.}, notamment les \textit{FastCGI} dont l'excution est plus rapide qu'un CGI classique. \indexfr{CGI}\indexfr{FastCGI} Dans ce cas, il faudra penser rpter cette man\oe uvre pour les fichiers du type \codes{moin.*}. -\end{xremark} - - -\subsubsection{Fichier \codes{wikiconfig.py}} - -Ce fichier dfinit l'apparence et les droits d'accs de \textit{MoinMoin}. Aprs l'installation, ce fichier contient de nombreuses lignes commentes concernant les options principales. Tout d'abord, deux options qui permettent \textit{MoinMoin} de dfinir l'emplacement du \textit{Wiki}~: -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -data_dir = r'C:\Moin\mywiki\data' -data_underlay_dir = r'C:\Moin\mywiki\underlay' -\end{verbatimx} -% -Ensuite, il est prfrable qu'une personne non identifie ne puisse pas dfaut ni attacher une pice jointe, ni dtruire ou renommer une page, pour cela il faut ajouter la ligne~: -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -actions_excluded = ['DeletePage', 'RenamePage', ] -\end{verbatimx} -% -On dfinit ensuite un "superuser", le seul ayant tous les droits sur \textit{MoinMoin}, le nom d'\textit{admim}\footnote{pour \textit{administrator}} lui est donn (ce n'est pas une obligation)~: -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -superuser = [u"admin", ] -\end{verbatimx} -% -Les droits utilisateurs sont dfinis par dfaut par la ligne suivante. Par dfaut, le "superuser" peut tout faire~: \label{acl_rights_before_wiki} -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -acl_rights_before = u"admin:read,write,delete,revert,admin" -\end{verbatimx} -% - - - -Il reste dfinir le nom du site et le nom de la premire page~: -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -sitename = u'NomSite' -page_front_page = u"FirstPage" -\end{verbatimx} - -\begin{xremark}{\codes{wikiconfig.py}, paramtre \codes{url\_prefix\_static} et langue par dfaut} -Il est prfrable de ne pas toucher au paramtre \codes{url\_prefix\_static}, celui-ci ne semble pas fonctionner compltement. Il est prfrable d'utiliser les alias avec \textit{Apache}. Si les termes anglais vous rebutent, il est possible de faire passer une partie des intituls en franais en modifiant le paramtre suivant~: -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -language_default = 'fr' -\end{verbatimx} -\end{xremark} - - - -Le \textit{Wiki} est maintenant en tat de fonctionner et vous devriez avoir une page correspondant celle de la figure~\ref{wiki_first_page}. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=6cm, width=16cm]{\filextel{../python_cours/image/wiki1}} - \\ \hline - \end{tabular}\end{center} - \caption{Premire page du \textit{Wiki} une fois configur. Son contenu est vide car ce dernier n'a pas encore t prcis. - C'est aussi ce qui s'affiche lorsqu'une page n'existe pas encore mais que le \textit{Wiki} y fait rfrence.} - \label{wiki_first_page} - \end{figure} - -\subsubsection{Scurit, cration d'utilisateurs} - -Il est utile de restreindre maintenant les droits de chaque utilisateurs. La premire chose faire est de crer un utilisateurs administrateurs. Pour cela il faut cliquer sur \textit{Connexion} pour atteindre la page de la figure~\ref{wiki_first_page_connexion}. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=4cm, width=12cm]{\filextel{../python_cours/image/wiki2}} - \\ \hline - \includegraphics[height=3.5cm, width=10cm]{\filextel{../python_cours/image/wiki3}} - \\ \hline - \end{tabular}\end{center} - \caption{Page de connexion, il faut rentrer un login et un mot de passe ou dfinir un nouvel utilisateur en cliquant - sur \textit{UserPreferences} si vous n'avez pas encore de compte. Il est dconseill d'utiliser des accents, - ils peuvent provoquer certains comportements erratiques.} - \label{wiki_first_page_connexion} - \end{figure} - -Une fois qu'un utilisateur administrateur est cr, il faut insrer la ligne suivante dans le fichier \codes{wikiconfig.py}. Elle permet de spcifier que seul l'administrateur (ici dupre) a tous les droits, tout autre utilisateur n'a que le droit de lire les pages sans pouvoir les modifier. Au cas om cet utilisateur essaierait, il tomberait sur la page de la figure~\ref{wiki_first_page_noright}. -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -acl_rights_default = u"dupre:read,write,delete,revert,admin All:read" -\end{verbatimx} - - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=3.5cm, width=16cm]{\filextel{../python_cours/image/wiki4}} - \\ \hline - \end{tabular}\end{center} - \caption{Page qui apparat lorsqu'un utilisateur essaye de modifier une page mais qu'il n'en a pas le droit.} - \label{wiki_first_page_noright} - \end{figure} - -\textit{MoinMoin} offre la possibilit de crer des groupes d'utilisateurs, de se connecter un annuaire de type \textit{LDAP} ou \textit{ActiveDirectory}. Le site de \textit{MoinMoin} est assez complet et dcrit tout ce qu'il est possible de faire avec ce \textit{Wiki}\footnote{Tout est y est crit en anglais exclusivement.} Les tapes de configuration prsentes dans ce livre sont assez sommaires et conviennent pour une utilisation au sein d'une entreprise de quelques dizaines d'employs tout au plus et sur un rseau interne. Pour des rseaux de plus en grandes envergures, il est conseill de consulter le site de \textit{MoinMoin}, voire d'opter pour un \codes{Wiki} diffrent. - - - -\subsubsection{Apparence} - -Il est possible de modifier l'apparence du site \textit{Wiki}, la variable \codes{theme\_default} permet de dfinir l'aspect gnral. Il existe trois thmes prdfinis \codes{'classic'}, \codes{'modern'} et \codes{'rightsidebar'}. -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -theme_default = 'modern' -\end{verbatimx} -% -Il est aussi possible de dvelopper son propre thme\footnote{voir l'adresse \httpstyle{http://moinmo.in/MoinDev/ThemeDevelopment}} mais cela requiert un peu de temps ou aller tlcharger un thme existant\footnote{voir l'adresse \httpstyle{http://moinmoin.wikiwikiweb.de/ThemeMarket}} en prenant toutefois soin de vrifier que ce thme fonctionne avec la version de \textit{MoinMoin} installe. - -\subsection{Utilisation sur un rseau d'entreprise} - -Aucune autre configuration n'est a priori ncessaire pour utiliser ce \textit{Wiki} sur le rseau d'une entreprise. La donne de l'adresse IP suffit se connecter au \textit{Wiki} install sur une autre machine. Si cela ne fonctionnait pas, les deux remarques~\ref{remark_firewall} et~ \ref{remark_port_81} page~\ref{remark_port_81} devraient vous rsoudre rsoudre ce problme. - - -\subsection{Ecrire des pages} - -\subsubsection{Cration d'une page} - -Le \textit{Wiki} est maintenant configur, il reste encore savoir comment crire quelques pages commencer par la premire qui est pour le moment l'allure de celle de la figure~\ref{wiki_first_page}. Il suffit de cliquer sur \textit{Create an empty page} pour afficher l'cran de la figure~\ref{wiki_first_page_creation_first}. Le \textit{Wiki} ne manipule que du texte, toute image doit tre traite comme une pice jointe. La syntaxe \textit{Wiki}, simple, permet tout de mme d'afficher des titres, des tableaux, des listes, une table des matires\footnote{voir un rsum en franais de la syntaxe l'adresse \httpstyle{http://moinmo.in/HelpOnMoinWikiSyntax}.}. La figure~\ref{wiki_first_page_creation_first_syntax} donne un court exemple de qu'il est possible de faire avec \textit{MoinMoin}. - - - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=3.5cm, width=16cm]{\filextel{../python_cours/image/wiki5}} - \\ \hline - \end{tabular}\end{center} - \caption{Page qui apparat lorsqu'un utilisateur essaye de modifie une page.} - \label{wiki_first_page_creation_first} - \end{figure} - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|c|}\hline -\begin{minipage}{8cm} -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -<> - -= Titre 1 = - -http://www.xavierdupre.fr/mywiki/XavierDupre - -== Titre 1 niveau 2 == -= Titre 2 = - -Affichage d'une liste : - * lment 1 - * lment 2 - * lement 3 : sous liste - * sous lment 1 - * sous lment 2 - * dernier lment de la premire liste - -''italique'' '''gras''' __soulign__ - -une ligne - ----- -\end{verbatimx} -\end{minipage} -& - \includegraphics[height=6.5cm, width=7cm]{\filextel{../python_cours/image/wiki6}} - \\ \hline - \end{tabular}\end{center} - \caption{D'un ct, la syntaxe \textit{MoinMoin}, de l'autre le rendu dans un navigateur.} - \label{wiki_first_page_creation_first_syntax} - \end{figure} - - - -\subsubsection{Ajouter des liens} - -On peut considrer deux types de liens l'intrieur d'un \textit{Wiki}~: les liens externes qui sont une simple adresse internet et les liens internes qui font rfrence une page du \textit{Wiki}. Pour ajouter un lien externe une page, il suffit de l'incoroporer au texte de la page ou entre double crochets si on veut que ce lien apparaisse avec un autre texte. -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -http://www.xavierdupre.fr/mywiki/XavierDupre -[[http://www.xavierdupre.fr/mywiki/XavierDupre|wiki de Xavier Dupr]] -\end{verbatimx} - -Les liens internes sont des rfrences des pages dj crites ou des pages crer si le \textit{Wiki} dtecte que ce lien interne n'existe pas. Un lien interne est un mot contenant deux ou plusieurs majuscule comme \codes{LienInterne} ou une phrase entre crochets comme \codes{[[lien \; interne]]}. - - -\subsubsection{Ajouter des pices jointes} - -L'ajout d'une pice jointe\indexfr{pice jointe} s'effectue en cliquant sur l'intitul \textit{Pice jointe}. Il suffit ensuite d'ajouter le texte \codes{attachment:nom\_de\_la\_piece\_jointe} pour y donner accs tous les lecteurs de la page. - -\subsubsection{Droits spcifiques une page} - -Il est possible d'attribuer des droits spcifiques une page. Le paramtre \codes{acl\_rights\_before} de \codes{wikiconfig.py} (voir paragraphe~\ref{acl_rights_before_wiki}) dfinit les droits par dfaut de chaque page du \textit{Wiki}. Il est nanmoins possible de restreindre l'accs certaines pages du \textit{Wiki}. Par exemple, par dfaut, tout le monde peut lire chaque page mais on voudrait que chaque utilisateurs est un espace rserv inaccessible quiconque autre que lui. Dans ce cas, on ajoutera au dbut du texte de cette page le texte suivant~: -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -#acl dupre:read,write -\end{verbatimx} -% -Dans ce cas, personne d'autre que l'utilisateur \codes{dupre} ne pourra avoir accs ni en lecture ni en criture la page o est insre cette ligne. Cette ligne crase les droits par dfaut. Le texte de la page peut ensuite tre crit comme n'importe quelle autre page. - - - -\subsection{Script CGI} - -\subsubsection{Script simple} -\indexfr{CGI}\indexfrr{script}{CGI} \indexoutilz{Apache}{configuration CGI} -\textit{MoinMoin} fonctionne base de script CGI~: ce sont des pages HTML entirement produites par des scripts crits en \python. Excut par le ssrveur \textit{Apache}, tout instruction \codes{print} d'un script CGI sera automatiquement envoy au navigateur. Les lignes qui suivent donne un exemple d'introduction cette technique. Il commence par la configuration du serveur \textit{Apache} auquel on indique un nouveau rpertoire dans lequel seront placs des script CGI crits en \python. -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} - - Options FollowSymLinks - AllowOverride None - Order deny,allow - Allow from all - - -Alias /pycgih "C:/Program Files/Apache Software Foundation/Apache2.2/python_cgi" -ScriptAlias /pycgi "C:/Program Files/Apache Software Foundation/Apache2.2/python_cgi" -\end{verbatimx} -% -Dans ce rpertoire, on placera des pages HTML et des scripts CGI. Pour viter de longues adresses URL, on dfinit deux alias diffrents mais dont la cible est le mme rpertoire \codes{python\_cgi}. \textit{Apache} n'accepte pas que deux directives \codes{Alias} et \codes{ScriptAlias} portent le mme nom. -% -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} -#!c:/Python25/python.exe -# ligne 1 : emplacement de python (obligatoire) -# ligne 2 : la page ne contiendra que du texte -print "Content-Type: text/plain\n\n" -# premier message au navigateur -print "premier message\n" -\end{verbatimx} -% -Il faut maintenant crer une page HTML qui pointe vers ce script~: -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} - -

    Lien vers un script CGI crit en Python

    -hello.cgi - -\end{verbatimx} -% -Il ne reste plus qu' crire l'adresse de cette page dans le navigateur~: -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} -http://localhost/pycgih/index.html -\end{verbatimx} -% -La page affiche fait apparatre un titre suivi d'un unique lien vers le script CGI. Cliquer dessus affiche le message souhait. - - -\begin{xremark}{erreur, premire ligne \codes{\#!c:/Python25/python.exe}} -Il ne faut pas oublier cette premire ligne qui indique \textit{Apache} o trouver l'interprteur \pythons qui lui permettra de comprendre le script. Dans le cas contraire, la page aboutit une erreur. Si cette erreur subsiste toujours mme aprs l'ajout de cette ligne, cela signifie que l'interprteur \pythons n'est pas install cet endroit o que le script a produit une erreur. Dans ce cas, il peut tre utile de remplacer l'extension \codes{cgi} par \codes{py} puis d'excuter le script CGI comme s'il tait un programe \python. -\end{xremark} - -\subsubsection{Script HTML} \indexfr{HTML}\indexcgi{CGI}{plain}\indexcgi{html} - -Le paragraphe prcdent a prsent un script CGI permettant d'afficher du texte gnre par un script \python. Pour mettre en forme ce texte, il faut utiliser la syntaxe HTML et prciser depuis le script que le format de sortie du script est bien du HTML. Pour cela, il faut modifier une ligne du script CGI, \codes{html} remplace \codes{plain}~: -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} -print "Content-Type: text/html\n\n" -\end{verbatimx} -% -Par exemple~: -% -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} -#!c:/Python25/python.exe -# coding: cp1252 -print "Content-Type: text/html\n\n" -# premier message au navigateur, -# les passages la ligne \n sont sans effet l'affichage -print "\n" -print "premier message en gras\n" -print "" -\end{verbatimx} -% -\begin{xremark}{les accents dans un script CGI} -L'instruction \codes{\#\; \; coding:\; latin-1\; } est toujours ncessaire lorsque le script CGI contient des accents. Dans le cas contraire, l'interprteur \pythons dclenche une exception et le serveur affiche un message d'erreur. -\end{xremark} - - -\subsubsection{Attraper les exceptions} - -Lorsqu'une erreur survient, le texte affich correspond au traitement effectu par le script CGI jusqu' ce que l'erreur se soit produite. Pour pouvoir remonter jusqu' la cause de l'erreur, il est possible d'attraper l'exception engendr par le script et d'afficher les informations relatives cette erreur. Le script suivant gnre volontairement une erreur en excutant une instruction inconnue \codes{stop}. L'exception est alors attrape puis on utilise le module \codes{traceback} pour afficher la ligne et le type d'erreur gnr. \indexmoduleint{traceback} -% -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} -#!c:/Python25/python.exe -# coding: cp1252 -print "Content-Type: text/html\n\n" -print "\n" -try: - print "premier message en gras\n" - print "
    dclenchement d'une erreur (instruction inconnue)
    " - stop -except: - import sys - import traceback - print "
    "
    -    traceback.print_exc(file=sys.stdout)
    -    print "
    " -print "" -\end{verbatimx} -% -Le navigateur affiche le message suivant~: -% -\begin{verbatimx} -Traceback (most recent call last): - File "C:/Program Files/Apache Software Foundation/Apache2.2/python_cgi/hello4.cgi", line 8, in - stop -NameError: name 'stop' is not defined -\end{verbatimx} -% -\begin{xremark}{module \codes{traceback} et erreur de syntaxe} -Ce procd ne protge pas le script contre les erreurs de syntaxe, un guillement manquant, une mauvaise indentation ou une parenthse mal ferme. -\end{xremark} - -\subsubsection{Rsum de la syntaxe HTML} \indexfrr{HTML}{syntaxe} - -Il peut tre utile de dcrire trs succintement la syntaxe HTML. Ce langage est un langage balise, c'est--dire que toute information est insre au sein d'une syntaxe qui ressemble ~: -\begin{verbatimx} - .... -\end{verbatimx} -% -\indexfrr{HTML}{balise} -Les balises peuvent tre crites avec des minuscules ou des majuscules, le langage HTML ne fait pas la diffrence. Toute page HTML s'crit de la forme~: -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} - - -.... entte de la page, n'est pas affich, il est possible d'y dfinir -.... des feuilles de styles pour un affichage amlior -.... ou la dfinition de nouvelles balises -.... la ligne - -.... permet de dfinir un jeu de caractres incluant les accents franais - - -.... contenu de la page - - -\end{verbatimx} -% -Le contenu de la page doit figurer entre les balises \codes{} et \codes{}. La table~\ref{balises_html_table} regroupe les balises de style les plus utilises et la table~\ref{balises_html_table2} des balises courantes de prsentations. Les balises cites dans ces tables permettent de prsenter des rsultats au format HTML. Pour des prsentations plus sophistiques, une recherche sur Internet donnera la plupart du temps une rponse\footnote{voir galement \httpstyle{http://fr.wikipedia.org/wiki/HTML}}. Le langage tant en perptuelle volution, les possibilits offertes ne cessent de s'tendre. \indexhtml{}\indexhtml{
    }\indexhtml{
    }\indexhtml{}\indexhtml{}\indexhtml{}\indexhtml{

    }\indexhtml{

    }\indexhtml{

    } - - -\begin{table}[ht] -\begin{center}\begin{tabular}{|l|p{8cm}|} \hline -\textbf{balises} & \textbf{effet} \\ \hline -\codes{} & commentaires, ces informations ne sont pas affiches par le navigateur\\ \hline -\codes{

    } & titre de premier niveau \\ \hline -\codes{

    } & titre de second niveau \\ \hline -... & ... \\ \hline -\codes{
    } & aller la ligne \\ \hline -\codes{
    } & tracer une ligne horizontale\\ \hline -\codes{ } & gras \\ \hline -\codes{ } & italique \\ \hline -\codes{ } & soulign \\ \hline -\codes{ } & barr \\ \hline -\end{tabular}\end{center} -\caption{Balises HTML relatives la mise en forme de caractres.} -\label{balises_html_table} -\end{table} - - -\indexhtml{}\indexhtml{}\indexhtml{name=}\indexhtml{src=}\indexhtml{href=}\indexhtml{

    }\indexhtml{}\indexhtml{} -\indexhtml{
    }\indexfrr{HTML}{attribut}\indexhtml{border=} - -\begin{table}[ht] -\begin{center}\begin{tabular}{|l|p{8cm}|} \hline -\textbf{balises} & \textbf{effet} \\ \hline -\codes{} texte \codes{} & lien, url dsigne l'hyperlien, le texte afficher par le navigateur est situ entre les balises\\ \hline -\codes{} & poser une ancre\\ \hline -\codes{} texte \codes{} & lien vers une ancre l'intrieur d'une page\\ \hline -\codes{ } & lien vers une image, les attributs \codes{width} et \codes{height} pour modifier la taille de l'image - lorsqu'elle est affiche. \\ \hline -\codes{

    } & paragraphe \\ \hline -\codes{
    } & insertion d'un tableau, l'attribut \codes{border} permet de prciser l'paisseur des bords. - \codes{} \\ \hline -\codes{} & insertion d'une ligne dans un tableau \\ \hline -\codes{} & insertion d'une case dans un tableau \\ \hline -\codes{} & insertion d'une case dans un tableau \\ \hline -\codes{
    } & cration d'une liste \\ \hline -\codes{
  • } & insertion d'un intitul au sein d'une liste\\ \hline -\end{tabular}\end{center} -\caption{Balises HTML relatives la mise en page. Le nom du fichier suit le mot \codescaption{src} - dans la syntaxe, \codescaption{}, - \codescaption{src} est appel un attribut. les valeurs associes aux attributs sont toujours entoures de guillemets. - Lorsqu'il n'y a rien entre deux balises, l'criture peut tre courte en \codescaption{}. - } -\label{balises_html_table2} -\end{table} - - - -\subsubsection{Appeler une page avec des paramtres} - -Les programmes \pythons sont capables d'accepter des paramtres lorsqu'ils sont excuts en ligne de commande. Ce mcanisme existe galement en ce qui concernent les pages HTML. Cela consiste faire un URL d'un point d'interrogation puis d'une suite de couple \codes{param=valeur} spar par le symbole~$\&$. -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} -http://URL?param1=valeur1¶m2=valeur2&... -\end{verbatimx} -% -Le programme suivant rcupre la valeur de ces paramtres. -% -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} -#!c:/Python25/python.exe -# coding: cp1252 -print "Content-Type: text/html\n\n" -print "\n" -import cgi -par = cgi.FieldStorage() -if len (par) == 0 : - print " aucun paramtre cette page " -else : - print "liste des paramtres
    " - print """
  • """ - for p in par : - print "" - name = str (p) - value = par.getvalue (name) - print "" - print "" - print "
    ", name, "", value, "
    " -print "" -\end{verbatimx} - -\subsubsection{Formulaires} \indexfrr{HTML}{formulaire} - -Le langages HTML donne la possibilit de construire des formulaires puis de rcuprer les donnes saisies par l'internaute. Bien souvent, la page qui affiche le formulaire est un script CGI capable de traiter les donnes qu'il s'envoie lui-mme. L'utilisateur slectionne l'adresse~: -\begin{verbatimx} -http://localhost/pycgi/pyform.cgi -\end{verbatimx} -Puis le formulaire, lorsque l'utilisateur appuie sur \textit{Envoyer}, appelle l'URL suivant~: -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} -http://localhost/pycgi/pyform.cgi?nom=dupre&prenom=xavier -\end{verbatimx} -C'est ce que fait le script CGI suivant. Il affiche d'abord le formulaire de la figure~\ref{forulaire_python_html}. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=2cm, width=5cm]{\filextel{../python_cours/image/pyform1}} - \\ \hline - \end{tabular}\end{center} - \caption{Exemple de formulaire au format HTML engendr par un script CGI crit en \python.} - \label{forulaire_python_html} - \end{figure} -\indexexemples{\textit{Apache}, CGI}{} -\begin{verbatimx} -#!c:/Python25/python.exe -# coding: cp1252 -print "Content-Type: text/html\n\n" -print "\n" -def print_form () : - # cration du formulaire avec deux champs nom et et prenom - print """ -
    -

    -
    -
    - -

    -
    - """ - -import cgi -par = cgi.FieldStorage () -if len (par) == 0 : - # s'il n'y a aucun paramtre, on affiche le formulaire - print_form () -else : - # sinon, cela signifie que le formulaire a rappel le script CGI - # avec des paramtres et le traitement suit une direction diffrente - # ici, cela consiste afficher les informations reues en gras - nom = par.getvalue ("nom") - prenom = par.getvalue ("prenom") - print "Votre nom est ", nom, " et votre prnom ", prenom, "" -print "\n" -\end{verbatimx} - - -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ - -\section{SQL} \indexlangage{SQL}\indexoutil{SQL} \indexfr{SQL} - -Le langage SQL est devenu incontournable pour quiconque souhaite stocker, consulter de grandes quantit de donnes. Les paragraphes qui suivent ne feront que prsenter sommairement le langage SQL, il s'agit ici de l'utiliser via un programme \pythons plutt que de le matriser. - -\subsection{Les bases de donnes} - -Le langage SQL est li ce qu'on appelle les \emph{bases de donnes}.\indexfr{base de donnes} C'est simplement un ensemble de tableaux ou plutt \emph{table}.\indexfr{table} Une table est dfinie par un nombre de colonnes, chacune porte un nom et ne contient qu'un type donn d'information. Par exemple, lorsqu'on dcrit un lve dans le systme informatique d'une cole, on retiendra par exemple~: \indexfrr{SQL}{table} -\begin{footnotesize}\begin{center}\begin{tabular}{l|l|l} -information & nom & type \\ \hline -un numro & num & nombre entier \\ -son nom & nom & chane de caractres (30 maximum) \\ -son prnom & prenom & chane de caractres (30 maximum) \\ -sa date de naissance & date & date \\ -son adresse & adresse & chane de caractres (100 maximum) \\ -son genre & genre & boolen \\ -sa nationalit & codepays & un nombre entier \\ -sa classe & classe & nombre entier -\end{tabular}\end{center}\end{footnotesize} -% -Cette table, qu'on appelle \codes{ELEVE}, sera reprsente sous la forme d'un tableau. Le numro permet de dsigner chaque lve plus facilement dans le systme informatique que par son nom et son prnom, il permet aussi de distinguer portant mme nom et prnom. Ce numro porte souvent le nom d'\emph{index}. -\begin{footnotesize}\begin{center}\begin{tabular}{|l|l|l|l|l|l|l|l|} \hline -num & nom & prenom & date & adresse & genre & codepays & classe \\ \hline -1 & dupre & xavier & 11/08/1975 & ... paris & True & 33 & 19 \\ \hline -2 & dupre & gilles & 24/12/1946 & ... charleville & True & 33 & 56 \\ \hline -\end{tabular}\end{center}\end{footnotesize} -% -Le pays est entier, on aurait pu choisir une chane de caractres galement. Toutefois, il est possible de dfinir une seconde table qu'on appelle \codes{PAYS} avec la liste des pays et le numro qui leur sont attribus. -\begin{footnotesize}\begin{center}\begin{tabular}{|l|l|} \hline -pays & codepays \\ \hline -France & 33 \\ \hline -Royaume-Uni & 44 \\ \hline -\end{tabular}\end{center}\end{footnotesize} -% -Lorsqu'on cherche des lves d'une certaine nationalit sans connatre son code, il suffit de chercher d'abord le code dans la table \codes{PAYS} puis de chercher les lves ayant ce code dans la table \codes{ELEVE}. En langage SQL\footnote{Il n'est pas tenu compte des passages la ligne, ils apportent plus de lisibilit.}, la premire requte s'ecrit~: \indexfrr{SQL}{requte} -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -SELECT codepays -FROM PAYS -WHERE pays = 'France' -\end{verbatimx} -% -La seconde requte utilise les rsultats de la premire, en lanage SQL, cela donne~: -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -SELECT num,nom,prenom -FROM ELEVE -WHERE codepays IN ( - SELECT codepays - FROM PAYS - WHERE pays = 'France' - ) -\end{verbatimx} -% -A ces deux tables, on ajoute une table des matires enseignes~: -\begin{footnotesize}\begin{center}\begin{tabular}{l|l|l} -information & nom & type \\ \hline -numro & num & nombre entier \\ -matire & matiere & chane de caractres (30 maximum) \\ -niveau & niveau & nombre entier -\end{tabular}\end{center}\end{footnotesize} -% -Puis une table des notes attribues~: -\begin{footnotesize}\begin{center}\begin{tabular}{l|l|l} -information & nom & type \\ \hline -numro lve & nume & nombre entier \\ -numro matire & numm & nombre entier \\ -note & note & nombre rel -\end{tabular}\end{center}\end{footnotesize} -% -Si on relie les colonnes portant la mme information, on aboutit au graphe de la figure~\ref{graphe_figure_sql_}. Ces liens illustrent le concept de \emph{base de donnes relationnelle}.\indexfrr{base de donnes}{relationnelle} Il serait possible de reprsenter toutes ces donnes sous la forme d'un unique tableau mais il aurait beaucoup de colonnes et autant de lignes que de notes. Autrement dit, les mmes informations sont prsentes en de nombreux endroits. Pour viter la redondance d'un tel systme, il faut scinder ce tableau en autant de tables que ncessaire pour faire disparatre la la redondance. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=3cm, width=12cm]{\filextel{../python_cours/image/sql1}} - \\ \hline - \end{tabular}\end{center} - \caption{Graphe illustrant les bases de donnes relationnelles, - les champs relis entre eux ont le mme sens. Un numro d'lve - dsigne aussi bien un lve dans la table \codescaption{ELEVE} - que dans la table \codescaption{NOTE}. Si on connat le numro d'un lve, - on connat galement toutes les autres informations le concernant, c'est pourquoi, - dans la table \codescaption{NOTE}, on - inscrit que son numro. Toute autre information serait superflue.} - \label{graphe_figure_sql_} - \end{figure} - -Le langage SQL permet de recherche des informations dans cet ensemble de tables. Par exemple, la requte suivante permet de construire la liste des lves suivi de la moyenne de leurs note en franais~: -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -SELECT nom,prenom,AVG(note) FROM ELEVE,NOTE -WHERE num = nume and - numm IN ( SELECT num FROM MATIERES WHERE matiere = 'franais' ) -GROUP BY nume -\end{verbatimx} - - -Le chapitre suivant montrera comment crer ces diffrentes tables, y insrer des lignes (ou enregistrements), lancer des requtes. - -\subsection{Utiliser une base de donnes} \label{sql_sqlite3_parag} - -La faon la plus simple d'utiliser une base de donnes est d'utiliser l'application \textit{SQLite}\footnote{\httpstyle{http://www.sqlite.org/}}.\indexoutil{SQLite} C'est d'autant plus avantageux que ce module est fourni avec l'installation standard de \python. La base de donnes, qui est un ensemble de plusieurs tables, est en fait stocks dans un unique fichier. On lit et on crit dans ce fichier grce au module \codes{sqlite3}.\indexmoduleint{sqlite3} Et l'unique moyen d'crire, de lire, de consulter est d'utiliser des requtes~SQL. Par exemple, la cration de la table \codes{ELEVE} se fait grce la requte suivante~: -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -CREATE TABLE ELEVE ( - num integer primary key, - nom varchar (30), - prenom varchar (30), - date date, - adresse varchar (100), - codepays integer, - classe integer) -\end{verbatimx} -% -\indexsql{CREATE}\indexsql{TABLE} -Le mot-cl \codes{primary\; key}\indexsql{primary\; key} permet d'indiquer au langage SQL qu'il peut utiliser ce champ comme un index~: il n'y aura jamais deux lves avec des numros identiques. C'est aussi une cl qui est attribue automatiquement par le langage SQL. Si une table contient un tel champ, sa consultation est plus rapide. Il ne reste plus qu' excuter cette requte grce au module \codes{sqlite3}~: -% -\inputcode{../python_cours/programme/sql_1.py}{cration d'une table avec \codesindex{sqlite3}} -% -La premire instruction permet d'ouvrir une connexion la base de donnes, d'indiquer qu'on s'en sert. La seconde instruction permet de crer ce qu'on appelle un curseur.\indexfrr{SQL}{curseur} Cela permet d'avoir un accs la base qui autorise des accs simultans en nombre limit. La troisime instruction excute la requte proprement dite. -% -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -cur.execute ("CREATE TABLE NOTE (nume integer, numm integer, note double)") -cur.execute ("CREATE TABLE MATIERES (num integer, matiere varchar (30))") -cur.execute ("CREATE TABLE PAYS (codepays integer, pays varchar (30))") -\end{verbatimx} -% -Il faut maintenant insrer des valeurs dans chacune des tables~: -\inputcode{../python_cours/programme/sql_1.py}{insertion de valeurs dans une table \codesindex{sqlite3}} -% -Il ne faut pas oublier l'instruction \codes{cx.commit ()} qui met jour la base de donnes. Sans cette instruction, les tables ne sont pas modifies et pendant l'excution de cette instruction, toutes les autres requtes sont momentanment interrompues le temps que la modifications de la base soit effective. Le programme suivant permet de vrifier que les modifications ont bien t prises en compte~: -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -import sqlite3 as SQL -cx = SQL.connect("madatabase.db3") -cur = cx.cursor() -cur.execute("select * from ELEVE") -for row in cur.fetchall(): print row -\end{verbatimx} -Il affiche\footnote{Le symbol \codesnote{u} devant les chanes de caractres indique qu'elles sont codes au format unicode\indexfr{unicode}\indexfrr{SQL}{unicode} et que les accents sont pris en compte.}~: -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -(1, u'dupre', u'xavier', u'11/08/1975', u'---- paris', 33, 19) -(2, u'dupre', u'gilles', u'24/12/1946', u'---- charleville', 33, 56) -\end{verbatimx} -% -Il reste insrer d'autres valeurs dans ces tables\footnote{En langage SQL, le mot-cl \codesnote{UPDATE} sert modifier un enregistrement.\indexsql{UPDATE}}~:\indexsql{SELECT}\indexsql{INSERT}\indexsql{INTO}\indexsql{VALUES}\indexsql{FROM} -% -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -cur.execute ("INSERT INTO PAYS (codepays, pays) VALUES (33, 'France')") -cur.execute ("INSERT INTO PAYS (codepays, pays) VALUES (44, 'Royaume-Uni')") -cur.execute ("INSERT INTO MATIERES (matiere, num) VALUES ('franais', 1)") -cur.execute ("INSERT INTO MATIERES (matiere, num) VALUES ('mathmatiques', 2)") -cx.commit () -\end{verbatimx} -% -Il ne reste plus qu' ajouter des notes~: -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -note = [(1, 1, 12), (1, 1, 14), (1, 2, 16), (1, 2, 8), (1, 2, 12), \ - (2, 1, 8), (2, 1, 9), (2, 2, 11), (2, 2, 8), (2, 2, 12)] -for n in note : - req = "INSERT INTO NOTE (nume,numm,note) VALUES " + str (n) - cur.execute (req) -cx.commit () -\end{verbatimx} -% -Le programme suivant permet de dterminer la liste des prnoms des lves suivi de la moyenne de leurs notes~: \indexsql{GROUP \; BY}\indexsql{AVG} -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -req = """ -SELECT nom,prenom,AVG(note) FROM ELEVE,NOTE -WHERE num = nume and - numm IN ( SELECT num FROM MATIERES WHERE matiere = 'franais' ) -GROUP BY nume -""" -cur.execute (req) -for row in cur.fetchall(): print row -\end{verbatimx} -Le rsultat de la requte donne pour notre exemple~: -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -(u'dupre', u'xavier', 13.0) -(u'dupre', u'gilles', 8.5) -\end{verbatimx} -% -En ajoutant une condition avec le mot-cl \codes{HAVING}, il est possible de ne retourner que la liste des lves ayant la moyenne~: \indexsql{HAVING} -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -req = """ -SELECT nom,prenom,AVG(note) FROM ELEVE,NOTE -WHERE num = nume and - numm IN ( SELECT num FROM MATIERES WHERE matiere = 'franais' ) -GROUP BY nume -HAVING AVG(note) >= 10 -""" -cur.execute (req) -for row in cur.fetchall(): print row -\end{verbatimx} - - - -\subsection{Utiliser un serveur de base de donnes} - - -Le module \codes{sqlite3} propose en quelque sorte de stocker des informations de faon plus intelligente qu'un simple fichier texte puisqu'il met disposition des outils permettant de consulter rapidement ces informations sans avoir lire intgralement les donnes pour les mettre dans la mmoire de l'ordinateur au travers de listes par exemple. Toutefois, les informations sont localises dans un unique fichier et elles ne sont pas faciles partages travers un rseau. - -Un serveur de bases de donnes offre les mmes services au niveau du stockage et de la consultation des donnes mais il permet de partager ces informations avec quiconque a accs ce serveur. Le serveur de base de donnes organise la mise en commun de grandes volumes d'informations. Un serveur de bases de donnes est un serveur au mme titre que l'application \textit{Apache}~: c'est une application qui tourne en permanence, de prfrence sur un ordinateur entirement ddi ce service, et qui attend les requtes des utilisateurs provenant de tous les utilisateurs ayant la possiblit de se connecter ce serveur. - - -\subsubsection{Installer un serveur de base de donnes sous \textit{Windows}} \indexoutilz{MySQL}{installation} - -Les paragraphes qui suivent dcrivent l'installation de serveur \textit{MySQL}. Il est parfois plus simple d'utiliser l'application \textit{EasyPHP}\footnote{\httpstyle{http://www.easyphp.org/}}\indexoutil{EasyPHP} qui en simplifie l'installation lorsqu'elle est coupl avec le serveur \textit{Apache} (voir galement le paragraphe~\ref{apache_installation_par}). - -Il existe de nombreux serveurs de base de donnes. Les plus connus sont \textit{Microsoft SQL Server},\indexoutil{Microsoft SQL Server} \textit{Oracle},\indexoutil{Oracle} \textit{Sybase}.\indexoutil{Sybase} Parmi les serveurs gratuits, on trouve \textit{MySQL},\indexoutil{MySQL} ou encore \textit{PostGreSQL}.\indexoutil{PostGreSQL} Ces applications sont souvent regroupes sous le terme de \textit{SGBD}\indexfr{SGBD} ou encore \textit{Systme de gestions de base de donnes}. - -L'installation de \textit{MySQL}.\indexoutil{MySQL} n'est pas trs complique. Il faut dans un premier temps tlchercher \textit{MySQL}\footnote{\httpstyle{http://dev.mysql.com/downloads/mysql/5.0.html\#downloads}} puis suivre les instructions de la figure~\ref{mysql_installation_figure}. Il est tout de mme possible de changer les paramtres de la configuration sans avoir refaire l'installation, il suffit d'aller dans le sous-menu ajouter par \textit{MySQL} dans le menu \textit{Dmarrer / Tous les programmes}. - - \begin{figure}[H] - \begin{center}\begin{tabular}{|c|c|c|}\hline - \includegraphics[height=5cm, width=5.5cm]{\filextel{../python_cours/image/mysql1}} & - \includegraphics[height=5cm, width=5.5cm]{\filextel{../python_cours/image/mysql2}} & - \includegraphics[height=5cm, width=5.5cm]{\filextel{../python_cours/image/mysql3}} \\ \hline - \includegraphics[height=5cm, width=5.5cm]{\filextel{../python_cours/image/mysql4}} & - \includegraphics[height=5cm, width=5.5cm]{\filextel{../python_cours/image/mysql5}} & - \includegraphics[height=5cm, width=5.5cm]{\filextel{../python_cours/image/mysql6}} \\ \hline - \includegraphics[height=5cm, width=5.5cm]{\filextel{../python_cours/image/mysql7}} & - \includegraphics[height=5cm, width=5.5cm]{\filextel{../python_cours/image/mysql8}} & \\ \hline - \end{tabular}\end{center} - \caption{L'installation de \textit{MySQL} fait intervenir une petite dizaine d'crans qui se succdent. - Chacun d'eux propose quelques - options d'installation que l'utilisateur doit choisir. Voici les - choix pour une utilisation sur une machine de bureau qui n'est - pas exclusivement rserv \textit{MySQL} et qui autorise une dizaine - de connexion simultane. Cette base n'est donc pas - configure pour un usage intense. Les derniers crans font rfrence la scurit. - Il est conseill de dfinir un mot de passe - \textit{root} ou administrateur. C'est le seul utilisateur ayant tout pouvoir sur la gestion du systme.} - \label{mysql_installation_figure} - \end{figure} - -Il faut maintenant installer un second morceau qui est le pilote \textit{ODBC} pour \textit{MySQL}\footnote{Il est tlchargeable l'adresse \httpstyle{http://dev.mysql.com/doc/refman/5.0/fr/myodbc-windows-binary-installation.html}.}. Il n'y a cette fois-ci rien configurer et tout se passe presque sans intervention. Cette seconde tape est facultative mais elle rend l'criture de programmes plus facile et surtout indpendante du serveur de base de donnes choisie. - -Avant d'utiliser \pythons pour lancer des requtes, le serveur nouvellement install est entirement vide et il faut d'abord crer ce qu'on appelle une \emph{database}.\indexfr{database} C'est principalement un ensemble de tables. Pour cela, il faut cliquer sur l'intitul \textit{MySQL Command Line client} du menu \textit{Dmarrer / Tous les programmes / MySQL / MySQL Server 5.0}. Il vous est d'abord demand un mot de passe, celui renseign lors de l'installation. Ensuite il faut taper la ligne suivante~: \label{creation_database_paragraphe} -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -CREATE DATABASE datatest ; -\end{verbatimx} -L'instruction ne devrait pas retourner d'erreur et partir de ce moment, la database \codes{datatest} est cre. Il sera alors possible d'y connecter un pilote ODBC pour s'en servir dans un programme \python. - -Il reste une dernire installation effectuer, celle du module \codes{pywin32}\footnote{\httpstyle{https://sourceforge.net/projects/pywin32/}}\indexmoduleext{pywin32} qui permet d'utiliser une connexion ODBC. Son installation utilise un programme excutable et ne requiert aucune intervention. - - - -\subsubsection{Configurer une connexion ODBC sous \textit{Windows}} - -\indexfr{ODBC}\indexfr{Object Database Connectivity} -Il existe de nombreux modules \pythons qui permet de se connecter directement un serveur de base de donnes particulier comme le module \codes{MySQLdb}\footnote{\httpstyle{http://sourceforge.net/projects/mysql-python}}\indexmoduleext{MySQLdb} qui accde au serveur \textit{MySQL}. Mme si cet accs est le plus rapide, l'inconvnient de ce systme est qu'il faut utiliser un module diffrent pour chaque serveur de bases de donnes\footnote{On trouve l'adresse \httpstyle{http://www.pygresql.org/} le module pour le serveur \textit{PostGreSQL}.}. - -Il existe un moyen d'homogniser les accs aux serveurs en ajoutant une couche intermdiaire appele \textit{ODBC} ou \textit{Object Database Connectivity}. Grce ce systme, le code ncessaire l'utilisation d'un serveur ne dpend plus du systme de base de donnes utiliss. Celui-ci peut tre \textit{MySQL} ou \textit{Microsoft SQL Server} ou encore un fichier texte, \textit{Excel}, une base de donnes \textit{Access}. Il suffit pour cela de dclarer ce pilote ODBC au systme d'exploitation \textit{Windows}. Il faut pour cela aller dans le panneau de configuration, icne \textit{Outils d'administration} puis choisir \textit{Database ODBC}. On tombe alors sur une fentre du type de celle prsente la figure~\ref{ODBC_window_foigure}. La configuration du pilot ODBC suit les instructions de la figure~\ref{ODBC_window_foigure_config}. - - - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=4cm, width=5cm]{\filextel{../python_cours/image/odbc}} - \\ \hline - \end{tabular}\end{center} - \caption{Fentre grant les accs ODBC sous \textit{Windows}. - La fentre montre quatre connexions ODBC disponibles de types diffrents. - Il suffit de cliquer sur le bouton \textit{Add} pour ajouter une connexion ODBC et ouvrir - un accs une nouvelle source, - que ce soit un fichier texte, un fichier \textit{Excel}, un serveur,~...} - \label{ODBC_window_foigure} - \end{figure} - - - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|c|}\hline - \includegraphics[height=5cm, width=11cm]{\filextel{../python_cours/image/mysqlodbc}} & - \includegraphics[height=5cm, width=5.5cm]{\filextel{../python_cours/image/mysqlodbc2}} \\ \hline - \multicolumn{2}{|c|}{ \begin{minipage}{16cm} Concernant la connexion ODBC~: - \begin{itemize} -\item Son nom est \textit{mysqlperso}, il est possible de le changer. -\item Le server est \textit{localhost}, c'est la machine locale, si c'est une machine distante mais connecte au rseau - interne, il faut ici prciser son adresse~IP. -\item Le port est par dfaut 3306, dans un cas classique, ce paramtre est dj renseign. -\item Le nom d'utilisateur et le mot de passe sont un de ceux dfinis sur le serveur de base de donnes, - si aucun utilisateur n'a t ajout, alors, il faut choisir l'utilisateur \textit{root} et le mot de passe - renseign lors de l'installation (dans ce cas \textit{admin}). -\item Enfin, il faut indiquer un nom de database qui existe sur le serveur de base de donnes. (Pour la crer, voir le - paragraphe~\ref{creation_database_paragraphe} (page~\pageref{creation_database_paragraphe}). -\end{itemize}\end{minipage} } - \\ \hline - \end{tabular}\end{center} - \caption{La configuration d'une connexion ODBC se passe en - deux tapes, la premire consiste ajouter une connexion en cliquant sur - le bouton \textit{Add} de la premire fentre. La seconde fentre - permet de choisir le type de connexion, dans le cas de - \textit{MySQL}, il faut choisir \textit{MySQL ODBC 5.1 Driver}. - La troisime fentre dfinit les paramtres de la connexion~: - Le bouton \textit{Test} permet de s'assurer que ces paramtres sont bien valides. - } - \label{ODBC_window_foigure_config} - \end{figure} - -\subsubsection{Utilisation d'un serveur de base de donnes} - -En utilisant une connexion ODBC, les lignes crites au paragraphe~\ref{sql_sqlite3_parag} ne diffrent except celle qui ouvre la connexion ODBC qui s'effectue avec un module diffrent. Le module utliser devient \codes{odbc}.\indexmoduleint{odbc} La cration d'une table fait appel au script suivant~: -% -\inputcode{../python_cours/programme/odbc_1.py}{connexion ODBC, cration d'une table} -% -L'ajout de donnes diffre un peu de \codes{sqlite3} car le serveur SQL requiert une valeur par dfaut pour la colonne \codes{num} alors qu'elle tait renseign automatiquement par \codes{sqlite3}. Le langage SQL est en principe le mme d'un serveur SQL l'autre mais il arrive parfois que certains logiciels proposent des spcificits non comprhensibles par un autre SGBD. Par exemple, le format des dates par dfaut n'est pas le mme sur \textit{MySQL}~: -% -\inputcode{../python_cours/programme/odbc_2.py}{connexion ODBC, ajout de donnes} -% -Pour lancer une requte, le code reste le mme~: -% -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -import odbc -cx = odbc.odbc("mysqlperso") -cur = cx.cursor() -cur.execute ("SELECT * from ELEVE") -for row in cur.fetchall () : - print row -\end{verbatimx} -% -\begin{xremark}{SGBD et les dates} -La gestion des dates peut tre diffrente d'un SGBD l'autre, avec \textit{MySQL}, elles apparaissent sous forme d'objets. Pour pouvoir l'afficher, il faut remplacer la dernire du programme prcdent par~: -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} - print [ str (r) for r in row ] -\end{verbatimx} -\end{xremark} -% -Mise part la connexion, les autres requtes et le code \pythons les excutant extraits des exemples dvelopps au paragraphe~\ref{sql_sqlite3_parag} seront identiques avec \textit{MySQL}. - - -\subsubsection{ODBC et script CGI} - -\textbf{Problme de mot de passe} - -\indexfrr{ODBC}{mot de passe}\indexfrr{ODBC}{login}\indexfrr{ODBC}{password} - -Lorsqu'on cherche se connecter une connexion ODBC, celle-ci requiert parfois un login et un mot de passe. Par exemple, les deux lignes qui suivent permettent d'ouvrir une connexion ODBC vers un serveur de type \textit{SQL Server} de \textit{Microsoft}. \indexfr{\textit{Microsoft}}\indexoutil{Microsoft SQL Server} -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -import odbc -cx = odbc.odbc("odbc_sql_server") -\end{verbatimx} -% -L'excution du programme retourne le message suivant annonant l'impossibilit de l'ouverture de la connexion~: -% -\begin{verbatimx} -dbi.operation-error: [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user ''. -The user is not associated with a trusted SQL Server connection. in LOGIN -\end{verbatimx} -% -Dans le cas, il faut rpter le login et le mot de passe utilis lors de la configuration de la connexion ODBC comme ceci~: -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -import odbc -cx = odbc.odbc("odbc_sql_server/login/password") -\end{verbatimx} -Une autre syntaxe comme celle qui suit est galement correcte~: -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -cx = odbc.odbc("DSN=odbc_sql_server;UID=login;PWD=password") -\end{verbatimx} - -\textbf{Service \textit{Apache}} \indexfrr{service}{Windows}\indexfrr{Windows}{service}\indexoutilz{Apache}{service} \label{configuration_apache_sql_plus} -\indexoutilz{Apache}{installation} - -Il arrive aussi que la connexion ODBC ne fonctionne pas car la table ou le serveur SQL n'est pas trouv. Lorsqu'on excute le script CGI comme un programme \python, celui-ci fonctionne parfaitement. Ceci s'explique par le fait que le serveur \textit{Apache} fonctionne avec un nom d'utilisateur qui ne lui permet pas de crer une connexion ODBC. Il existe deux faons de rsoudre ce problme. La premire consiste configurer le service \textit{Apache} et le relancer avec le bon login et le bon mot de passe. La seconde option consiste ne plus lancer le serveur \textit{Apache} comme un service \textit{Windows} mais comme un programme depuis une fentre de commande. Il faut donc excuter les trois lignes qui suivent~: -\indexexemples{\textit{Apache}}{} -\begin{verbatimx} -cd c:\Program Files\Apache Software Foundation\Apache2.2\bin -httpd -k stop -httpd -\end{verbatimx} -La premire ligne permet de se placer dans le rpertoire d'\textit{Apache}. La seconde arrte l'excution du serveur \textit{Apache} en tant que service, la dernire ligne redmarre le serveur \textit{Apache} en tant que programme indpendant. En contrepartie, il ne faut pas fermer la fentre de commande \textit{Windows} moins de vouloir arrter le serveur \textit{Apache}. Cette solution fonctionne localement, il est possible que le serveur ne soit plus accessible depuis une autre machine connecte sur le mme rseau interne. - -Une autre option consiste donner au service \textit{Apache} l'accs au serveur de base de donnes. Pour cela, il faut associer au serveur \textit{Apache} un utilisateur et donner cet utilisateur les droits ncessaires une bonne utilisateur de \textit{Apache}. La premire consiste crer cet utilisateur (voir figure~\ref{user_creation_with_windows_nt}) puis lui confrer les bons droits. - - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=4cm, width=10cm]{\filextel{../python_cours/image/apant0}} \\ \hline - \includegraphics[height=6cm, width=10cm]{\filextel{../python_cours/image/apant1}} - \\ \hline - \end{tabular}\end{center} - \caption{Pour ajouter un utilisateur, il faut aller - dans le \textit{Panneau de Contrle}, choisir \textit{Outils d'administration} puis - choisir \textit{Computer Management}. La seconde image indique comment ajouter un utilisateur en cliquant - avec le bouton droit sur le rpertoire \textit{Users} ou \textit{Utilisateurs}.} - \label{user_creation_with_windows_nt} - \end{figure} - -L'tape suivante consiste donner cet utilisateur nouvellement cr les droits ncessaires la modification des rpertoires d'\textit{Apache} (voir la figure~\ref{user_creation_with_windows_nt_folder}). L'tape suivante est l'attribution de droits administrateur l'utiliseur \codes{apache} (figure~\ref{user_creation_with_windows_nt_folder_rights}). La dernire tape est la configuration du service \textit{Apache} ce qu'illustre la figure~\ref{user_creation_with_windows_nt_folder_service}. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|c|}\hline - \includegraphics[height=6cm, width=4.5cm]{\filextel{../python_cours/image/apant2}} & - \includegraphics[height=6cm, width=4.5cm]{\filextel{../python_cours/image/apant3}} - \\ \hline - \end{tabular}\end{center} - \caption{L'utilisateur \codescaption{apache} cr par les tapes - illustres la figure~\ref{user_creation_with_windows_nt} doit avoir les droits - d'accs en lecture et excution pour le rpertoire d'installation d'\textit{Apache}. Il doit aussi avoir les - droits en criture pour le rpertoire \textit{logs}. Si \textit{Apache} utilise des extensions comme \textit{SVN} ou - des rpertoires de pages ou de scripts situs ailleurs, il faudra galement ajouter l'utilisateur - \codescaption{apache} la liste - des utilisateurs autoriss lire ou crire ces emplacements.} - \label{user_creation_with_windows_nt_folder} - \end{figure} - - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=10cm, width=18cm]{\filextel{../python_cours/image/apant4}} - \\ \hline - \end{tabular}\end{center} - \caption{Il faut donner l'utilisateur \codescaption{apache} des droits d'administrateurs. Il faut pour cela aller dans le - \textit{Panneau de configuration}, sur \textit{Outils d'Administration} puis sur \textit{Local Secruity Policy}. - On termine par l'ajout de l'utilisateur \codescaption{apache} - au droit \textit{Act a part of the operating system}. } - \label{user_creation_with_windows_nt_folder_rights} - \end{figure} - - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=10cm, width=18cm]{\filextel{../python_cours/image/apant5}} - \\ \hline - \end{tabular}\end{center} - \caption{Il faut maintenant prciser au service - \textit{Apache} qu'il doit utiliser les droits de l'utilisateur \codescaption{apache}. - Il faudra redmarrer pour prendre en compte les modifications.} - \label{user_creation_with_windows_nt_folder_service} - \end{figure} - - -\subsubsection{Sans ODBC} \label{conexxion_directe_mysql} - -Il arrive que sur certains systmes, la configuration d'\textit{Apache} en tant que service soit difficile pour un non expert bien que cela soit rendu ncessaire par l'utilisation de pilotes ODBC dans de scripts CGI crits en \python. Il existe une alternative qui est de se connecter directement au serveur \textit{MySQL}. Il faut pour cela utiliser le module \codes{MySQLdb}\footnote{\httpstyle{http://sourceforge.net/projects/mysql-python}}.\indexmoduleext{MySQLdb} Le code permettant de lancer une requte diffre peu de celui utiliser pour une connexion ODBC comme le montre les deux exemples suivant. -% -\begin{center}\begin{tabular}{cc} -\begin{minipage}{8cm} -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -import odbc -cx = odbc.odbc("mysqlperso") - -cur = cx.cursor() -cur.execute ("SELECT * from ELEVE") -for row in cur.fetchall () : - print row -cur.close () - -\end{verbatimx} -\end{minipage} -& -\begin{minipage}{8cm} -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -import MySQLdb -cx = MySQLdb.connect('localhost','root', \ - 'admin', 'datatest') -cur = cx.cursor() -cur.execute ("select * from ELEVE" ) -for row in cur.fetchall() : - print row -cur.close() -cx.close() -\end{verbatimx} -\end{minipage} -\end{tabular}\end{center} -% -Il faut toutefois penser fermer la connexion vers le serveur \textit{MySQL}, tche que le pilote ODBC gre seul. Le serveur \textit{MySQL} ne peut supporter trop de connexions ouvertes au mme moment\footnote{Ceci dpend de la configuration du serveur et de la puissance de l'ordinateur sur lequel il est install.}. - -Si le serveur de base de donnes est diffrent de \textit{MySQL}, il suffit de taper \textit{python + } dans un moteur de recherche pour trouver le module qui permet de communiquer avec ce serveur. Par exemple, pour \textit{Oracle}, on trouve le module \codes{cx-oracle}\footnote{\httpstyle{http://cx-oracle.sourceforge.net/}}.\indexmoduleext{cx-oracle} La syntaxe permettant de lancer une requte est sensiblement la mme. Un serveur droge cette rgle, il s'agit de \textit{MSSQL Server} de \textit{Microsoft} qui utilise le module \codes{win32com}\footnote{\httpstyle{http://python.net/crew/mhammond/win32/Downloads.html}}\indexmoduleext{win32com} dont voici un exemple d'utilisation. -% -\indexexemples{\textit{SQL}}{} -\begin{verbatimx} -import win32com.client -connexion = win32com.client.gencache.EnsureDispatch('ADODB.Connection') -connexion.Open("Provider='SQLOLEDB';Data Source='localhost';Initial Catalog='datatest';User ID='root';Password='admin';") -recordset = connexion.Execute('select * from client')[0] -while not recordset.EOF: - for i in recordset.Fields : print i, - print "
    \n" - recordset.MoveNext() -connexion.Close() -\end{verbatimx} -% -ODBC fournit une interface de connexion qui ne change pas quelque soit le serveur SQL utilis, c'est tout l'avantage d'un tel systme. Accder directement au serveur est plus rapide mais plus contraignant si la base de donnes est transfre sur un serveur diffrent. C'est pourquoi il est recommand de regrouper le code qui a trait aux bases de donnes. Ceci peut tre fait manuellement ou en utilisant un module qui propose une unique interface quelque soit le serveur de base de donnes utilis. - -\codes{SQLObject}\footnote{\httpstyle{http://www.sqlobject.org/}}\indexmoduleext{SQLObject} s'appuie sur les classes pour reprsenter les tables d'une base de donnes. Une table est considre comme une liste d'instances d'un mme objet dont les attributs sont stocks dans la table. Cette conception objet remplace en partie le langage SQL et est bien adapt aux bases de donnes relationnelles\indexfr{base de donnes relationnelle} qui permettent de lier des attributs de plusieurs tables. - -\section{Modules divers} - -\subsection{PDF} - -De mme que \pythons propose des outils pour crire et lire des fichiers \textit{zip}, il existe des modules permettant de constuire des fichiers \textit{pdf}\indexfr{pdf} et d'extraire des informations depuis des documents de ce format. Le module \codes{reportLab}\footnote{\httpstyle{http://www.reportlab.org/rl\_toolkit.html}}\indexmoduleext{reportLab} permet de construire automatique des fichiers au format \textit{pdf}. Ceci vite par exemple l'utilisation d'application intermdiaire comme \textit{Latex} par exemple. \indexfrr{pdf}{\codes{reportLab}}\indexfrr{pdf}{crire} - -Un autre module permet d'extraire des informations textuelles depuis un fichier \textit{pdf} condition que celui-ci ne soit pas crypt~: \codes{pdftools}\footnote{\httpstyle{http://www.boddie.org.uk/david/Projects/Python/pdftools/}}\indexmoduleext{pdftools}. Le programme suivant permet d'extraire tout le texte d'un document \textit{pdf}. \indexfrr{pdf}{lire}\indexfrr{pdf}{\codes{pdftools}}\indexfrr{fichier}{pdf} -% -\inputcode{../python_cours/programme/extrpdf.py}{extraction du texte d'un fichier \textit{pdf}} - -Le module \codes{pyPDF}\footnote{\httpstyle{http://pybrary.net/pyPdf/}} propose des fonctionnalits quivalentes. Le module le plus rcemment mis jour est souvent le meilleur choix. - -\subsection{Tesseract} \indexoutil{Tesseract} - -\textit{Tesseract} est un outil gratuit de reconnaissance de l'criture imprime (OCR)\indexfr{OCR} qui est capable de transcrire le texte depuis une page imprime puis scanne. Il s'utilise depuis le module \codes{pytesser}\footnote{\httpstyle{http://code.google.com/p/pytesser/}}\indexmoduleext{pytesser} Il fonctionne assez simplement et il suffit d'excuter le programme \codes{pytesser.py} pour le faire fonctionner. - - -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ - -\section{Graphisme} \indexfr{graphisme} - -\subsection{GNUPlot} \indexoutil{GNUPlot} - -\textit{GNUPlot}\footnote{\httpstyle{http://www.gnuplot.info/}} est un logiciel permettant de tracer des graphes. Il a son propre langage de programmation et dispose d'une large panoplie de types de graphismes.\indexfr{graphe} Il existe la fois sous \textit{Windows} et \textit{Linux}. Le programme suivant construit un script GNUPlot et l'excute de faon construire automatiquement l'image du graphique. -% -\inputcode{../python_cours/programme/graphplot.py}{graphiques avec GNUPlot} - -\subsection{MatPlotLib} \indexoutil{MatPlotLib}\indexmoduleext{matplotlib} - -Ce module imite la syntaxe de \textit{Matlab} en ce qui concerne la cration de graphe. Il propose les mmes fonctionnalits. Le programme suivant montre comment tracer une srie financire. -% -\inputcode{../python_cours_exemple/programme/graphohlc.py}{graphiques avec MatPlotLib} - - - - - -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ -%------------------------------------------------------------------------------------------------------------------------------------ - -\section{Apache : serveur} \indexoutil{Apache} \indexoutilz{Apache}{installation} \label{apache_paragraphe_section} \label{apache_installation_par} - -Les paragraphes qui suivent dcrivent l'installation et la configuration du serveur \textit{Apache}. Celui est utilis par des applications comme\textit{SVN}, \textit{MoinMoin} ou tout simplement, il offre la possibilit d'crire des applications Internet comme des script CGI en langage \python. Il est parfois plus simple d'utiliser l'application \textit{EasyPHP}\footnote{\httpstyle{http://www.easyphp.org/}}\indexoutil{EasyPHP} qui en simplifie l'installation surtout s'il faut installer ensuite le serveur de base de donnes \textit{MySQL}. La suite vient avec l'installation d'\textit{Apache} version 2.2\footnote{Lors de l'criture du livre, la version tait 2.2.8 et tlchargeable l'adresse \httpstyle{http://httpd.apache.org/}.} - -\subsection{Installation} - - -\indexoutil{Apache} -L'installation commence par un premier cran qu'il faut remplir en suivant les instructions de la figure~\ref{fig_aoache_inst}. Pour vrifier que l'installation a fonctionn, il suffit d'ouvrir un navigateur comme \textit{Firefox}. Aprs avoir rentr \httpstyle{http://localhost/} dans la barre d'adresse, le message \textit{It works~!} apparat si \textit{Apache} fonctionne. - - \begin{figure}[ht] - \begin{center}\begin{tabular}{|c|}\hline - \includegraphics[height=6cm, width=7cm]{\filextel{../python_cours/image/apachein}} - \\ \hline - \end{tabular}\end{center} - \caption{Installation de \textit{Apache}, \codescaption{DomainName} est un nom de domaine, dans un rseau local, - cela correspond l'adresse IP de l'ordinateur. (crire \codescaption{ipconfig \; /all} en ligne de commande - pour l'obtenir. \codescaption{ServerName} est le nom du serveur, le plus souvent \codescaption{localhost} qui dsigne - l'ordinateur local. L'adresse email peut tre n'importe quel email.} - \label{fig_aoache_inst} - \end{figure} - -\begin{xremark}{changement de port pour \textit{Apache}} -Il est possible de le port par dfaut 80 soit dj utilis par d'autres services. Le port se rsume un numro, un emplacement, o le serveur \textit{Apache} va couter et envoyer des informations. Toute application qui veut envoyer des informations \textit{Apache} doit spcifier le nom de la machine sur laquelle est installe \textit{Apache} ainsi que le port sur lequel il coute. Si deux serveurs coutent le port~80, lequel va recevoir un message, il ne sera pas non plus possible de les distinguer puisqu'ils coutent la mme entre. Pour le changer, il faut aller dans le fichier \codes{httpd.conf} et changer la ligne \codes{Listen\;80} par~: \indexfr{port}\indexoutilz{Apache}{port} -\begin{verbatimx} -Listen 81 -\end{verbatimx} -Ensuite, dans l'exporateur internet, il faut prciser ce port qui n'est plus le port par dfaut 80 et entrer l'adresse suivante~: \httpstyle{http://localhost:81/} ou ajouter \codes{http://nom\_de\_machine:81} si le serveur \textit{Apache} est appele depuis une autre machine du rseau. -\end{xremark} - - -\subsection{Configuration de \textit{Apache} pour \textit{MoinMoin}} \label{configuration_apache_moinmoin} - - -Il reste configurer \textit{Apache} pour voluer de paire avec \textit{SVN}. Il y a quatre tapes~: -\begin{enumerate} -\item Copier les fichiers \codes{mod\_dav\_svn.so} et \codes{mod\_authz\_svn.so} depuis le rpertoire d'installation de \textit{SVN} (sous-rpertoire \textit{bin}) dans le rpertoire d'installation de \codes{Apache} (sous-rpertoire \textit{module}). -\item Ouvrir le fichier de configuration de \textit{Apache} depuis le menu \textit{Dmarrer} de \textit{Windows} et insrer les lignes suivantes~: -\indexexemples{\textit{Apache}}{} -\begin{verbatimx} -LoadModule dav_module modules/mod_dav.so -LoadModule dav_svn_module modules/mod_dav_svn.so -LoadModule authz_svn_module modules/mod_authz_svn.so - - - DAV svn - SVNListParentPath on - SVNParentPath "c:/svnrepository/" - SVNPathAuthz on - #AuthzSVNAccessFile "C:/Program Files/Apache Software Foundation/Apache2.2/bin/apachesvnauth - AuthName "Subversion Repositories" - AuthType Basic - AuthBasicProvider file - AuthUserFile "C:/Program Files/Apache Software Foundation/Apache2.2/bin/apachesvnpasswd" - require valid-user - -\end{verbatimx} -Il faut remplacer \codes{c:/svnrepository/} par le rpertoire du repository cr et \codes{C:/Program\; Files/Apache\; Software Foundation/Apache2.2} par le rpertoire d'installation de \textit{Apache}. -\item Il reste insrer des utilisateurs authoriss utiliser \codes{SVN}. Pour cela il faut ouvrir une fentre de commande \textit{Windows}~: -\begin{verbatimx} -cd C:\Program Files\Apache Software Foundation\Apache2.2\bin -htpasswd.exe -c apachesvnpasswd utilisateur -\end{verbatimx} -Il vous sera demand de rentrer un mot de passe pour chaque utilisateur. -\item Il reste redmarrer le serveur \codes{Apache} afin qu'il prenne en compte ces modifications. Ce peut tre fait depuis le sous-menu \textit{Apache} du menu \textit{Dmarrer / Tous les programmes}. -\end{enumerate} -% -Pour vrifier que cela fonctionne, il faut ouvrir un navigateur et crire \httpstyle{http://localhost/svn/}. L'explorateur vous demandera de vous identifier, il suffira de rentrer un des utilisateurs et son mot de passe dfinis en tape~3. - -\begin{xremark}{problme de chargement du module \codes{mod\_dav\_svn.so}} -Il arrive parfois que le serveur n'arrive pas redmarrer aprs avoir modifi le fichier \codes{httpd.conf} car le module \codes{mod\_dav\_svn.so} ne peut tre charg\footnote{Cette information est prsente dans le fichier \codesnote{logs/error.log} dans le rpertoire d'installation d'\textit{Apache}.}. Cette erreur peut survenir si la version de \textit{Windows} n'est pas rcente o sur laquelle n'a pas t installe la dernire ou les dernires mises jour de \textit{Windows}. -\end{xremark} - -D'autres prcisions concernant la configuration d'\textit{Apache} sont dcrites aux paragraphes~\ref{configuration_apache_sql_plus} et~\ref{configuration_apache_sql_plus}. \indexoutilz{Apache}{installation} - - -La configuration d'\textit{Apache} fait intervenir deux lments. Le premier est la dfinition d'alias.\indexoutilz{Apache}{alias} Il s'agit de dire \textit{Apache} que tous les adresses URL contenant la mme racine (ici \httpstyle{http://localhost/mywiki}) font partie du \textit{Wiki} et contiennent des scripts \python. Il faut ajouter les lignes suivantes dans le fichier \codes{httpd.conf}. -% -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} -ScriptAlias /mywiki "C:/Moin/mywiki/moin.cgi" -Alias /moin_static163 "C:/Python25/share/moin/htdocs" -\end{verbatimx} -% -La seconde tape est l'attribution de droits au rpertoire contenant plusieurs rpertoires essentiels au \codes{Wiki} mais qui sont situs en dehors du chemin \codes{DocumentRoot}. Toujours dans le fichier \codes{httpd.conf}, il faut ajouter les lignes en fin de fichier~: -\indexexemples{\textit{MoinMoin}}{} -\begin{verbatimx} - - Order deny,allow - Allow from all - - - Options FollowSymLinks - AllowOverride None - Order deny,allow - Allow from all - -\end{verbatimx} -% -Il ne faut pas oublier de redmarrer le serveur pour que ces modifications soient bien prises en compte. Avec cette configuration, il suffit que chaque script \pythons commence par une ligne indiquant l'emplacement de l'interprteur \python. -\begin{verbatimx} -#!c:/python25/python.exe -\end{verbatimx} -Ou sous Linux : -\begin{verbatimx} -#!/usr/bin/python -\end{verbatimx} -Cette premire ligne est appele par \textit{Apache} un \textit{shebang}.\indexfr{shebang} Si un script CGI doit tre excut sur des serverus \textit{Apache} installs sur deux systmes d'exploitation diffrent, cette ligne empche le passage de l'un l'autre. \textit{Apache} peut tre configurer de faon ce qu'il sache automatiquement quoi faire lors de l'excution d'un script CGI d'extension \codes{.py}. - -\begin{verbatimx} -ScriptInterpreterSource registry - # il faut galement une section - AllowOverride None # comme celle-ci dfinie - Options ExecCGI # pour le rpertoire contenant - Order allow,deny # le script CGI - Allow from all # - -AddType application/x-httpd-py .py -AddHandler cgi-script .py -Action application/x-httpd-py "C:/python25/python.exe" -\end{verbatimx} - -\begin{xremark}{\codes{Alias}, \textit{Apache} et \textit{MoinMoin}} -Les alias sous \textit{Apache} permettent de remplacer une chemin donn par un autre dans tous les hyperliens. Ici \codes{/moin\_static163/} sera remplac par \codes{C:/Python25/share/moin/htdocs/}. Un dernier dtail, pour une version ultrieure de \textit{MoinMoin}, il est possible que l'alias dfini pour \codes{moin\_static163} diffre, 163 est en effet la liste des chiffres du numro de version. Pour en tre sr, il suffit d'afficher le \textit{source} d'une page du \codes{Wiki} depuis l'navigateur. Toutefois, il est possible de modifier ce chemin depuis \textit{MoinMoin}. -\end{xremark} - -\begin{xremark}{\textit{Apache}, comprendre une erreur} -Dans le rpertoire d'installation de \textit{Apache}, on trouve le sous-rpertoire \codes{logs} et le fichier \codes{error.log} dans lequel figurent des informations concernant l'excution du serveur. Si une page HTML ou un script ne s'excute pas comme il le devrait, un message d'erreur est insr dans ce fichier si l'erreur se situe au niveau de \textit{Apache}. Les exceptions \pythons sont galement prsentes dans ce fichier lorsqu'un script CGI\footnote{Le rle des CGI est brivement expliqu au paragraphe~\ref{cgi_definition}.} provoque une erreur d'excution. -\end{xremark} - -D'autres remarques concernant des problmes ventuels survenant lors de l'installation d'\textit{Apache} sont dcrites au paragraphe~\ref{configuration_apache_sql_plus}. \indexoutilz{Apache}{installation} - -\subsection{Pour aller plus loin} - -Pour savoir quels ports sont disponibles lors de l'installation d'\textit{Apache} sous \textit{Windows}. Il suffit d'excuter la commande~: - -\begin{verbatimx} -netstat -ao -\end{verbatimx} - -Il est possible de configurer un second serveur \textit{Apache}, c'est--dire un nouveau service, un second port, un second fichier de configuration. - -\begin{verbatimx} -httpd -k uninstall -n ApacheSecond # on dsinstalle le service s'il existait -httpd -f "new_conf.conf" -n ApacheSecond -k install # on installe nouveau le service -httpd -n ApacheSecond -k start # on dmarre Apache -\end{verbatimx} - -Cette modification est parfois ncessaire car pour installer un serveur SVN, il existe deux solutions~: -\begin{enumerate} -\item La solution prsente prcdemment, qu'il est possible de simplifier en utilisant la distribution \textit{CollabNet}\footnote{\httpstyle{http://www.collab.net/}, cette distribution n'aime pas trop les login avec un symbol "-".} qui installe tout automatiquement except qu'il faut faire attention si un autre serveur \textit{Apache} existe (cette distribution utilise Python 2.5 et il vaut mieux ne pas mlanger les diffrentes versions de Python.) -\item Lancer le serveur SVN (svnserve.exe) disponible lors de l'installation de SVN. -\end{enumerate} - -Lors de l'installation du serveur \textit{Apache}, il est possible de rencontrer cette erreur~: - -\begin{verbatimx} -(OS 10048)Only one usage of each socket address (protocol/network address/port) is normally permitted. : make_sock: could not bind to address 0.0.0.0:8084 -no listening sockets available, shutting down -Unable to open logs -\end{verbatimx} - -J'ai rencontre cette erreur alors le fichier de configuration contenait deux fois l'instruction \codes{Listen} pour deux ports diffrents. Autre dtail, il est possible de restreindre l'accs au serveur en crant une rgle au niveau de Firewall de Windows. - - - - - -\subsection{Configuration pour des applications CGI} - - -La configuration du serveur \textit{Apache} pour l'excution de script CGI en langage \pythons passe toujours par la prcision des bons droits pour le rpertoire contenant le langage \pythons et celui contenant le script CGI. - -\begin{verbatimx} - - AllowOverride None - Options ExecCGI - Order allow,deny - Allow from all - - - AllowOverride None - Options FollowSymLinks ExecCGI - Order allow,deny - Allow from all - -\end{verbatimx} - -Il faut prciser ensuite que l'extension \textit{.py} est celle d'un script CGI et qu'il doit s'excuter avec l'interprteur \python~: - -\begin{verbatimx} - - TypesConfig conf/mime.types - AddType application/x-httpd-py .py - AddHandler cgi-script .py - -Action application/x-httpd-py "C:/python25/python.exe" -\end{verbatimx} - -Il ne reste plus qu' donner un alias au rpertoire contenant le script CGI~: - -\begin{verbatimx} -ScriptAlias /py/ "C:/script_cgi_python/" -\end{verbatimx} - -Par exemple, le fichier suivant nomm \codes{script.py} est plac dans le rpertoire prcdent. - -\begin{verbatimx} -header = """Content-type: text/html - - - - - - -""" - -footer = """""" - -print header -print "Script CGI
    \n" -print footer -\end{verbatimx} - -Pour l'excuter via un navigateur, il suffit alors de taper l'adresse~: - -\begin{verbatimx} -http://localhost:80/py/script.py -\end{verbatimx} - - - -\firstpassagedo{ - \begin{thebibliography}{99} - \input{python_cours_biblio.tex} - \end{thebibliography} -} - -\input{../../common/livre_table_end.tex}% -\input{../../common/livre_end.tex}% diff --git a/_todo/conseil_ecrire_programme.tex b/_todo/conseil_ecrire_programme.tex deleted file mode 100644 index 2ebc79b6..00000000 --- a/_todo/conseil_ecrire_programme.tex +++ /dev/null @@ -1,88 +0,0 @@ -%!TEX encoding = IsoLatin -\input{../../common/paper_begin.tex}% - - -\firstpassagedo{ -\title{Ecrire un programme plusieurs} -\author{Xavier Dupr \\ \httpstyle{http://www.xavierdupre.fr/}} -\maketitle -\begin{abstract} -\noindent Deux pages et quelques ides pour travailler plusieurs sur le mme projet de programmation. -\end{abstract} -} - - -\section{Trois conseils pour crire un programme} - -\subsection{Des petites fonctions} - -Pour plusieurs raisons~: -\begin{enumerate} -\item Il est plus facile de corriger un programme qui est constitu de petites fonctions plutt que de quelques grandes. Chaque fonction peut tre vrifie sparment. -\item Il est plus facile de rutiliser des petites fonctions. -\item Il est plus facile de rpartir le travail sur plusieurs personnes. -\end{enumerate} - -\begin{xremark}{variables globales} -Il vaut mieux viter les variables globales qui sont considres que comme des paramtres cachs. -\end{xremark} - - - -\subsection{Sparer les calculs, le chargement des donnes, l'interface graphique} - -Pour plusieurs raisons~: -\begin{enumerate} -\item Il est plus facile de vrifier un calcul s'il est dans une fonction indpendante plutt que cach dans le code d'une interface graphique. -\item C'est facile de faire un calcul une fois lorsqu'un utilisateur appuie sur un bouton, si on veut faire ce calcul cent fois, on ne peut pas lui demander d'appuyer cent fois sur le mme bouton. -\item Les calculs ou le chargement des donnes peuvent tre utiliss dans d'autres programmes. -\end{enumerate} - -\subsection{Utiliser des fonctions de tests} - -Ces fonctions peuvent tre excutes au dbut du programme pour vrifier que certaines parties du programme fonctionnent toujours mme aprs les avoir modifies. - -L'exemple suivant considre une fonction qui doit retourner une somme relle mme si les lments de la liste sont entiers. On crit la fonction qui vrifie cela. - -\begin{verbatimx} -def somme_double (liste) : - return 1.0 * sum(liste) - -def test_somme_double () : - y = somme_double([ 1 ]) / 2 - if y == 0 : raise Exception ("valeur > 0 attendue") - -if __name__ == "__main__" : - test_somme_double() -\end{verbatimx} - -Si plus tard, quelqu'un modifie la fonction \codes{somme\_double} en enlevant la multiplication parce qu'il considre cela inutile. La fonction de test provoquera une erreur. Elle est l pour rappeler que la fonction a t programme pour retourner un nombre rel et que quiconque l'utilise s'attend ce qu'elle retourne ce type de rsultat. - -\begin{verbatimx} -Traceback (most recent call last): - File "conseil.py", line 10, in - test_somme_double() - File "conseil.py", line 7, in test_somme_double - if y == 0 : raise Exception ("valeur > 0 attendue") -Exception: valeur > 0 attendue -\end{verbatimx} - -\section{Trucs et astuces} - - -\subsection{Partager du code} - -Il existe aujourd'hui des solutions qui permettent d'viter les envois de programme par email. Des outil comme \textit{DropBox}, \textit{SkyDrive}, \textit{GoogleDrive} permettent de partager un rpertoire. Un mme rpertoire peut tre partag sur plusieurs ordinateurs et plusieurs personnes. Une modification (y compris une suppression) sur l'une des rpliques sera propage sur tous les ordinateurs ds qu'ils sont connects Internet. - -Il est possible de coupler cette solution avec \textit{SVN} ou \textit{TortoiseSVN} qui sont des logiciels de suivis de source. On garde la fois la dernire version et l'historique des modifications\footnote{\httpstyle{http://mlevit.wordpress.com/2009/11/18/how-to-use-subversion-dropbox-to-create-an-effective-work-managementbackup-system/}}. - - -\subsection{Moteurs de recherche} - -Lorsqu'on ne comprend un message d'erreur, il est souvent utile de recopier le texte dans un moteur de recherche (Google, Bing, ...). Il est trs rare de ne pas russir trouver d'indices. - - - - - -\input{../../common/paper_end.tex}% diff --git a/_todo/exemple.tex b/_todo/exemple.tex deleted file mode 100644 index 89b8d48e..00000000 --- a/_todo/exemple.tex +++ /dev/null @@ -1,32 +0,0 @@ -\input{../../common/livre_begin.tex}% -\firstpassagedo{\input{python_cours_titre.tex}} -\input{../../common/livre_table_begin.tex}% -%\firstpassagedo{\input{python_cours_chapter.tex}} - - - - - - -%------------------------------------------------------------------------------------------------------------- -\chapter{Introduction} -%------------------------------------------------------------------------------------------------------------- - - - - - - - - - -\firstpassagedo{ - \begin{thebibliography}{99} - \input{python_cours_biblio.tex} - \end{thebibliography} -} - - - -\input{../../common/livre_table_end.tex}% -\input{../../common/livre_end.tex}% diff --git a/_todo/image/after.bmp b/_todo/image/after.bmp deleted file mode 100644 index d84bd638763c859d705359f3ea7610b82a3b87f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19398 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 diff --git a/_todo/image/apant0.png b/_todo/image/apant0.png deleted file mode 100644 index 911e9ee5d65d0feccf8a632645774fd8fb3faf0a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19294 zcmZ6zbwHEv_diUIaKL~8qX*I@B_KUIWu%lyN`rKlqq`gF5)e_kkp_|O6r@4Aq@MZy z)bIQJv)#4pI_F#`u5-@oUIhH5JRU9uE(!_?o}z+`1_}x~8uEAu`|oE)jBy3>3)MwK zUJB*Y52{_{35F$16^4RR6ZhoK1QU4Dg5t)Fg0g3f zf+C!bf^z)W<|L;b9Ld)rQPfq)qf1GZn5=@v~3)DF51hp zL?3D(^Dff(r4x54_7@F+I7mOS8hN-LwVD~Vt)4#%Xr8?%dVry_pkU^qfCJIs#&{%F zxgP5OIzhpeL}mFLikqyT+rk3>=j@;7bfqzso_2_x8k|pd*w#Mt{y+DKF_pSL3ve!v zYbKFB<}bG&L5K7D!Zc;0VLHY+!#^{2;ilin%Vo0W$6?1IyoR!6PDsF# zS9u--r+~A@n?$)m_jxzuF9*oUJH6T9dqy+29`{|{YuATPw_ldqe!G7X9{KuqKbxs{ zp^dWIZ{E@OAXxOg?nvX(f1Ww5<7yaHEV8=JQquU3mT>S%*z%l%=FNrGSx3WbZ>|Le z`6k!y6`7;OKwL_Z#kaj}W;L!Z)ugHa5z~xLkj7*4)~)|prOS26gs>wax|bS_I^q4n z@_B2i`t3x;hjaGo?g7wGg{%F>F~H(mN~xbF1Q$>1!wLfjp^Nv~G^W~F2W10H6VYNL zH3`%R)W7S4T!f(KT6thm?Y8~ywcYFMBAweYn>P~}daFLCtQ;~o@VZH(iy{M&Lz>o) z)c5{V_cIM?TY6co7c&8llWGg3G1f1`+%=3tTU-`|{%oWl=Bo{USghp|c0G8a9L)Nz2Jrx0ESJlmkinsT8BR1pJ zJ(ASl@`m<72ya1jpBEI&0P1_5o52_Yqp)PSSa}4o^!Mu7my}geT#F8G+!r_OrHI`* zuI_!afSI{ca|`$VAI!V4%YCMq`RP6;+2$#hS%*wnZB*-cw1(l@e|F!M99EyYS-1sc zP`Be03*8-tU*xJkiHY4aXE4`Lq>9x=7lD7&Sz=Ynr+)jZJm^0HMrDDr!av@(Yx;ea z-Mp@?@mn81&^`J>?K^k*g9+k#S1-%W-<7uriz6w(x^$_xdsKsPc)=oBExAWIH~Y)N zi78YRLwF*WZ~b(=?b+H&+Q^BNOZyuTiT@%M6A+ z`x1RSSdlZubO651qh|VKhg90FGL()B6LjQ)Piy39iB#1%-_^9at!t}^R1s9InGcIB z7h1tL%o@CAwjom;X9poIUhQ26y>IFS^wB4SO74?4e{5}BKDtRR+DuLao$vpa=q?wI zJP9{pn^rkkISKftOBRKqz7$0}0E>i0>y)XOkK^;5PIdmz&f~!>c)!JTuo3R!o-t<* zN3GO%?YkYt{Zm-MFfd+$hS%$2#hQmU`4HM~0&_Hf=0%@ay7x#;3V$!T3t%3HF6i(m zEM+)n;g=4wlIoeLo^2g;MDCbLe3XdcRv+O9%RAjR@NHfonLAzkx#b597*&8<*5GT$a3~Qlny`Qc7b2PoCJsCcF)s|aQ zqCYl*sgEE@`rDhEOT?R-3-0L3?9c>~KZ8dc3{5 z`z8)!4MFaubBu@Fs+^`0NTVcY;cinqrDPI7dQDwCOr>);gdK=*e?v{(CVc#$vv;49 zdPzQpFuNcaLA;W`?V!?9`?#dr(&enfBFXEC{b*NUpINZC>is=kRf307z`jRtXHun} zGB>mGLr%vL(FmMai*I$XnNFbRlByM-FlG%=Lm~UQwLiR2_?3zHbFqa!c@JL=iwJRk zNt;YlW&H^LsyIqKk>gvQETtzcMT_&zR+_{n^z{zumzoH*{D1uX-$m9AN<1RaqZ^uk zw0K;bMy<+GSOnjex0X1oh_F|)*M=GB3+OuV3L0m8yL*)>k@*Wh?kvq(B1_g3kYPvM zb^Ocf(TkVAUDH1NknY-;Sj`S$UXXKH*joCz`#dQwc1_J*e_DyEWKMX$GfHRUgMvu8 z8OK8rb;&T!d%S!@+(BaLqsrY*Ixz%F+&6SK zHPn7VOi(a!t2>YT;T-FNvlfrve{NjxGd=d$^xks`e0|MJ9di#i{*C+D!t|hbB4WVI zIj*}bR{uCH>1^_gbX(><|gSfFF7?^M0_FzYFvkG{OMgme5P|3FOfX?dW@dBMt zV-OSt7X^_zz+70-#J;xP8U*8FBbfj|Fo0+nlBmY;-ycZuxDwE~eo#Vw6==}eubaTj z!Tl?Y`7&2KI&-)mz%J^J`2wfbnUY_0j@4sN|EW!f+;}XTE4^_V4ap~KVTITK`0OJ=6j_1dXy;Om_`inCATrn0 z>^ipUY3hy(!{N{FbBQL37MvJc{oS6XiqynKX%`25J$dPrZi*4^s0>Kt(7>x{u5ypQ zm|O`iOF5yE?d?{9m=iJFa}%?C-3m)jRinZSYYpcz-eTn=3$V~P9e28sNh6_n-Hb}f zvQ`kdGa!4Lj4$5(QRCA59$$@@wPZbnCbSY#bmF2}=>;Q2g%cUa3#T!!WA1;Al-Fl^ z=Njw_*XKyLel1B)60M?Oj>gLA|Kc(u%lgLdt-G_gl(tgTV(MHOTc!?(7{=s4fhEj_ z0(5qY{j5iZ)E@SJMa2Txm(|Fu7CuTsFQ>y7rtv};G{PerKgP zCn6?F`r?+iwJxOv9rJcz?{ru#77`h(ru0(noNRmiV!r3BKi0X<~| zXY+jbg63TP7a{tqqI{p`&nceE%4K6G)yq;F{ds2LD__iDAXh{bQPjGy6P*~5Ib#~H z&lyHnPT-^lIv_^Q@Lw_7zK7LscPy=5>do8RU$mX&ggv<8|1(MuU#6^OJFwA~xHzSMs zkFow*e_@P{sUwGKJk~7a89n*WWd#I`^(p_tT8uISYnKd!sR_APWrtRgjs(<6W)0Kv z{g&1pg;%}TS&3W zQiea7RPb|ufdNTIbjT6AAXlQc_BxTo6BY4|%rFnRgH-Pfu}1nFr-riHbfk|6gz-50 zf$-3{VL^;Y+O<^PL>qCc{H1!J<*49)JGsB<0So3e*8iMkP@NV^6HEd49?iB0g{hZR z;O2d3R5|j9n>BPP@A+U%FLyo)D+-XUz zw!}%nRq|K!;@JUuGYZ*Prx9GETMBA5O;le51Tq>&-PWSt$2qBQkITF)se9jZU-&bg ztaOvO*HfFPjmf+28*X|aw41J4%*DKJE>2nO;fn4Vsn7Nj)Oc*dbh2Q{va8&5x4EJ0 z3>!E!hEwoS>aT)vDxm|a)K@B&3!e@7aZy`>Tf3u#<2v)Cd>mZ4q>)zD30=e>FMx#u zIIGYww<-I7qat|EJ<4!#t^Qg0Kv*okb<=m!P4P74;`J+c^=-m&D5(2iI;+P$K#Bj6 zV0t-g`Bb~d`wm5O$|f5RwT_fR_Xy<#woVHs*fue&e=qq1$PrM!!Wu zv~_;5Wr6LDU9v=4MZ@&q@??TD{m8oTLNs@{ZmG}ouK(fX(Vto|PsrFPjda1YoJ-lL zdNNGuDTf>TraNo1jiTCH|5+azA@4?v-!AWtrXTkNe%$7SnH>3y-4eRq=lMz4WD`&X zxV2%8)>x-olu5onOIO_Qgsye{OGxFAsY`>+edo$ry_q)Li`y5+@-RAcaXc0+a+}@_2mreV zV6>@^J(9b2V8!g49E$b!;i^ilq`j_*?g_M5Qm){>EIFGCpmN9oDs@~WrJT~?ef1r5XvFz_qPh%SsR=BVXyKs*~jn^IEIr3ehc^C)}UjOr9Y8)y> z^^H3Bfe=M3)Cr1Khz`~3id@zQ%pEzSE&%`xhbg#4`rlfzogxp|%=)8UQ^ zb#ie5d4G@VDJF)YJsFPAG?QLSkL)kdd7SBqzC=HPV2JAe4IQ0OLd2hLquq~FzBX`B z*@c#)IF%--%)3R+Deu7}68M~-!BuBPWOW)V*f3R>KR+&9$mwKYMBF^jv5g!1d?$wa zTOTaXQ7jUNkZe2@Lz>@Kjv;yR0Fs5jcz5?r5^J@dz|jN$$o;azF70ut%;+UEquWMI z2rT)2vi%Z*5yNtKM&){!A!R~GpZ}*f@1m(ilIb(QDg+$e3f;kgxfnKghi$Dn%Ns<# zz_71Y*{(V7&pW5Bc1l$3+g~5#`H_yBu9M&n zqbH**7pdqa=dy*6_Vj%Tjd!}~Iov<&ZW;0#4OA$%zaAAY_&xDkwNR> z^LV?XwL)1ZL}qOAej($>`w$pZ;E6!vK9&SJo9nHPV)&O*Rs$AVW{Q_#evr|S*LE7> zshyGr21mnLM?=M{N-1h2nwCpERyza+X^7vG@z4SZps<<=Rhfuy2Ds3R$289$R7)$D zEUbEY!vd;E0U_T1P7Z?LT=a#w*WWxO1gIE;E4F$m47gePZ1Z=$AIO37CMN+ZxR}93 z`N)X#ML@27rECyr>DPqpwcQ~tjQO%H_|E#1Q zw3)0nluW8>apsrN8x;H7z5a2*mAqU8;1%~X8WMFiW~jUU!W=3^yZ#{vzVqr&?Pa_4 zB^R}V-I+69&x<1j2vO2_Rw$r;x*sdZ)io;olr9$5WhKMt#5^Bl^D4=0WdhH5EUHwN z-^#kY@EtW4GL+W3=$>=m{Tyje$K~XK@7H|fg>NppZ+chw>f5aF7ugIl9tZUC@9Dit zBLEQgyM7XOW;^G{3!hVvmf}YUyez@bE$+xvmK?dfMHv=&O{C*Q}j>$k6(cN~)d4{5C&_Qk?WT7$_YOjwJ`|>h~sl#5^{+1wD z1pa7vPdlal?Za|Ea{0wkH6=;aJDmnJt##go?%M;zMzc!Wn29}}KHKHm=qFT3%V zY$N+aD>tM(V<#I%mk|CKfI8BAA>ZIf+rdFB2H`2J@Ms<@0gB{k{e!!oW$9J|LaV?# zxwYB%r5jG>3fa)Y=v~s3aTgH?A$xETCoc88Wxrux9R`Fy)^@^h?g;=7J;0EgHMQeR zHcIxN&74L=(d|H?s{VDhnLs3>mnxN*Y%j^ z+n{@5OY*m$2SLW~ZhT(v!&$SXRru&WwD_mf6@iEFG9z$QAuK(4Tm67}1HH84ulmjZe(Rfr!E19$`qq_UI61qT9X1V*uPN(ogXLq)Qx`I#sv@rW3G0#ZxB`ChIh~BmeNv_DCPN0OV2V zmP}Pq@y@h6+Gk418FtI@fdMHd^o>Gyf z>Wnl1vOr4EpR3mt=s-sG!7I|U?vW@*fP!SNV3rpzk0-~yYjVO+fOZ6!t zrl3SPu<<`7l?#1qVcro+E=4E)@~Poy)d}C_Pl+Ra|E-ty!lVF2T!sGTxM4;LnVW~o zcQm-KBxuPVTy<~1NEf@!kDG#$a_-H>(1DrNlyZkr|KV^O2T-15dVlmf6U{7yUb2!u zcTc_nOXQUWn?bJNP)FKRp74AEc4SG))CnNy@TQjalUWwn=RCCik%)?d4}=P0|5-Fg zrIULYdLknjtI{XMx-A$u=_?=1?6jbsiLWlKevQrSZY$5NhFnhZ!Gock4 z{Cfqn9W`idy9gFaS{r{H8~wOaih$YJDN@=;Qe{2?430xLPdt%q zoljo9i4e9x{Y=8R44Vi-4Wb4jfDf)s`R0s;(5V4L|tR$HefpZ+X5DW_R zF?U^ooe%<_fT1Xsp$EH2@dOAz4$g5Pd@n4H!Loa+{#S89>FE2KgWcmGo6BFV1CkpZ zP5Vc-7>Wt_9G_s2ZqLdX2lj`N6HoC-dfs0})|-?=wi(7qKkjhoD{;3I#tD{DZ7~LM z#)6jwd9v!}qgRFQg&#MvyVHvu^dPAC9lj7t`ux!-{dBtP>l&_Q~!V z(Rs(0;q*4(BOK;|-*Iw+SSuGluM>Du7i7E>)4{wMsr_t&3b$?h=p-y(zd?y9gaN!c z+&ktH#v%8G+ut5a2XTG4I56_m7PL+ODisn}_{ zA_uMmWuEEQ@q$##Ms^izYR*3W;eSr*?eNg5+sNau!4VCxAOEA0j7@d^4L;_vm?f6Y zz4M9OkQO8D_Wmkm>&?YUlnh|xtI=V#!+qtf&{17G@EdfDk+aHN1?SavM-MqEp@T}2 zX`%zQ!_aZNxVKHP(h7Bm(nFE)Omre&hd2$E#Ddlx<%svvf)~3J_WI_>NaHV4 zk!EyTa}a)fq;oT!A7cV0Ci)vPeS2$%!MyE!pyE=1a5V%Cj8}gCL`H33gh?cc5SqgX z+lYU`o)_SLzq3Dnsh42_3ZVJ$UeXuGdO_&AzWZ$#3wEs=3EJ3JTFj|z`T0k1``ywB z;~O2hj3u?#D}6Q*M0#0yS6a0{GLyo3gP|ZX0ySI3Ga*pbC&7#-S-*_Nh$ie!p}bL) zyG}K<+4dM7{VUT(kcR7d(35esr$S3Njnj8JIJr2F^Oqge3;WSMc~J8_T%PzVhlcxp z*uGg(8*}gq*F*<3JU^JuTVTcKII796mftthWh`3v*i4exBtNl1UOa{?8fDj|xciH7>4rWS&hb;6^O6a~0Ni#>I-T;ZK-^Yd_q^U8D$sBYdAV7FtX|L* z^h1ws^X}Sx-_<=g0$F8oV#^$z7D2~`hxuvt?MS0h;RBLylqerrwO3xz8Fi(=@r8_k6H|jD~Izn`8$C!kUED`RfmG8QzU{ z=3x|UdWN6mm`?B8+}!td%?=iXa}bA51mZhhh6k68@lO83)y0ah&M2!AR^Ja7{K4Wk^;b-bh!x*)-P1Q9;1zWo_Jca^Do z`Lbasz^-<%|LZ-0d@5Ft=PJi|-r6S~lRV8xbnVO|io>V}jbLAnp(O8GfFO>L(6cKE z```)!7A2)`iHXUQ)Hum5!ppJK%`ylpOe~#i7ZYEC;Rq(+x{q+J)K(*uqW0hu`TeL` z5XNtENU~%t6#60~Xjed>5>!7nY>qp8 zC0?nzm*r7!p@~J4NV` zKW@8^ltsx(7!$d9W%x{24GwB_$vR^3`4p{*yMmY8a_$=)|J)0cJRFsg^+mG?l|S_}3Whz!pjsL4AGZh0olxBEA`XQF zqasV$MdhOZ(I{gEN{HDeh!v-`Z(HWL*I&3UtUWQ%RjO7l4oG!hu?vGiUkVII!;(Ia zz3#YZQY@Fi5Hq=fR|k~Mu1s4YI<06bFv=Yqd8=Grxn!J0o)0asptZ>sJ>+%|8qTrx z1*LN&J$L>wv@$JTRib-*Kzmyr?Ylne+88dxB@nC36sa9?b(3+wo^)7ZFUs8^0}A}a z^j}LP2An|D9&2XX_Em=LEfoS(l)WT|<6ucy*Y6aDrF{sJ5((~Q&{TQRt8NcgW37+W zl$`ZPgy6hYk-lK=o!%_tW$4;K0a#(}Ll6u{X80uD69R5?%^%i${o@Eb>zW~rd0^|@ z)nn-yH`!p`P|E+;5P@1KS9BWYKQyqZqY-1W3hpR&S+i_v8{R~mE2`W7%_&vic61ONY*+Nkw40fIMwr{GoeNYa{jZuSvRKIDs$2XM1+i9=-|35NgrFj;mFy9)ieNN| zvN-OVV$Dsn!IY5-a?1S(*oq(7|F0>;+9~lD0PydoS7kBU2G-VVnhWQe8d3PxJI{;C zD763Hl?++}vycL+7$Z!_{?o_L>oi4D%PHqki~HZ_I1G^`+;3{A!v7nXLoSHkbZp=# z_U>}Paa`^3Qw_vqjP1WIq|bY}U?Rka%>M@&(Y9xavGKp|l(PmD0MLFE{UE9-;78A~ zWEQXtd7L^_@jcy-GjIsPxyN9P@wg&uI@ z5w<++{rE}36GGJ?=J2MzWp??8cB$8lT~5R9>`KgR`+=aiyNaj`hVgq85vm^Hp&ULL z<*UMLJ)@3a+ z7dF&yN|;eH&BXt7c{}@j^(xCUr&};(#w!Xk;By)txnp@$vMm;~kcPxEyz#1v12XpI z=`v5}@GWt2QimHT8s6%fh4K7byg?*zC>o*%=L`8#1`*LVL!ZVoV$0}aA)1Vdh~R8w z*`e)g&RY52Yg&L>e?N2GLYU5NBGbU1l_WKj{7Z{!_l1fNuC}Gih*x!mt8qn>oy#3y z1YsfTowY_INj4+3{k>X!75{2U}*K#&(gG z);da&1^7ght1VJ*Pfwk|b=9m3Ivg&Op468(EsOB}ul9zbJ%cc;KgpeTjs}!Z+Wh3R z_&RCt4dFG0A716`WpT3gm&P0t$Gz?MPCH!duJ;h=%G+q*e4l^Eqp(Rp6G8Y4oApDH zn9@4k3Fy!_wauCsqPK!esD;JLVamZcvjK#`k}+&kf$RKg`kyD6_`!hmVHY5YA0 zQ#W*lkyD?s-QgYd|E$-NW)ZV*VUfb(X`$sChfx=Vj2_Pa1sW{x8scFiSSVzQPn+2` z0g6AwiEN3CK~L!(CWFP-{nH?cgP|1(07TKsr_PWlI>~>UyeMFW>P{7h`176A{fY2( z+(`Ukh96qC;eeAMLcpQ_@#UM@y^dFiR~C;WI=9Yn5&Kz*+RWLJ!iJZS9%&&PC^ISG z1fCSm#70y;($o{*Q&_vL%_wU9O?i*z2(r~X5ugS~{}&%fsM2r{tfe|O)`;3Ofc@gZ z=(iEUPFKyJu&u6&!uvP)ADO39M0p_K|9Sy#N6g4rn9PgYjsx0O;k-Ix>#UMaw(4@K z$sa@exDczAS**RVfA_0Df5T;g{JM_iCgYpL$S~;;5DYJ3p2;_~PVltKN+A*Ffl&Ov z<8DR3cw9nNApDLv@V}UZf4Q&EA8^f)U0>^Q`~*7VF>j;ykmvut7bMFXPX@?f8h@J$ zeo7=2^zR=a9h#&#Zt|Z7qa*jgTsRa9^L;Mre>&ko>nw0Ibl6`f`NJ*l!++!r#RTC= zF>pv=9;f`roxxd<*S=*N`{RQ5Cgd&iBzZA~U)^)35%aYIF!R*JX92E1l(wDtciu`) z(kEpQ+I>}F-QmWf{?crtP5{=;LwhITev+>yPR5LU&Qb<(8Wr*@9+7R3s`jPE+-`CjL=cKX|b!c@xxF9r%%&=Kjqu6Y_^o29xbU2z-sF2}lmacr0VgJMx zLxbacXb0KtkR_kF-Gzy4kKBdCLYX{OCIuR^+P$ zt0R9qd`rA>D3S!t&dv8mU_jloOs-`F9yr`pVwgQ4$|aI2r%*hjmSjGIL?C=>o=}8J zO@;z!YS~po=RdT*z$`vHfG1_7<=+J7N-IAXWO-yd?ttD1Mh0-!t&Zxxp)-Z*7Ivbch zA(qH-VK2vUfq0+hgPhtwQtHW+&>tk{Ph+1BhE3#RuM5KOG`mj-pf$|dL6TBj%-8}6 zzb(rdHJs$BV$Uz89wLs))EEF6?WZ{FxXONVDmige^TDv#Z#D!Cogj&4dl}DP3ot34 zq<-jbB6dbN1apwvspTeln~+&0>Jz6u(O;*$AiyVPE)S4tzT=_e0Vxb@QdKpn7TxOM z`Em4gt1D7wIZgGiTQH6(UQQdud^IMQE&7o#4n1TgRr{pWxn3UeL{NVxAyfI-!|o4p zj1{N=cEh^n+-Acwa4L_$$ueA+;6)B9+w4{!;VMx<7t6?H`-tAHo{IsgrTF&td89(l zA+EuD!37#6kA;D`ILNpYD${ecU#A{+Os2w{0E@GgR}GfGrqpBn0fh<0(dUo;(Q*zJ z*Jk`weXOhU-AB?sCmjUc>;0^w(h|+rD_`Lse4oL*&fBgnj(2Q_5E7op%d@)9P3Da2 z5qA%|+$;@_3B!%XUwLt5nscWi<=4}Ey(C4S@hBS$#rI|>!8o6Ligl#-%nQS(^eRd> z)s*Z(u~#Fm?S^d8tug%;U(6#jVk2V#7TuDpq^~gnIG$QEKwQOv!^2jt*-xa1xwPO% z;*L)X9qQ@D$}XRS(40t+dgjE=5!-goNt}~(eMsC9XR}Rx5zzxJm-Q*^9p`TNAhTEb zL3Kv(P>J-^A`F)KSjNn{dn`bzl~Pgv8j5#yxS&t)!SEcyau zuV}<~9#<`r=Qmw@)72jj!~^v`aCoijDTG3l^~@9v&?JiWs`D92GX~~58_Jd0D~=5D zPN-p+6Uo4kIK3dU5+x4lL9wEmB8LyDr{D3v%qU=eL7)G7R{S1lq7V&?7>9;=#9RDh z;s4%SWv~QVjbXD+$Vfy7HP8B?L6sCDH;f_DUPH`p!#*gSw}w+ z$v73cY_!orPz<+<_!K`ll}>?|+2-G48&O|p z`SJWse_7u=^7gOo}6r|9v~hi9ly^G8NTaykyFkVw#W zJF*`~`Okx`R_5DXWU#^O2P_P1n~ed8{ze~5$jRNIrif`g<|L-&0uqwKO+!UAlCg9S&3el zD@t$FTRzr=f}m6`%x;A0Vcr#3k^FoIkP{64b$0l z54#vTeMjJ|(~;rO&zgPE65oF-l zzvhJr{8|9`TtXi?J6YCe=51}@`i;4UczolV)0~!oRSSmNni|-oNth!(rK1v7wGvhU z`}9j&bCq0;p#BgvOs&on{3m=-Xg?Dpt{a3f*Y{{={hgjh%{u#!Lvd1eUf~3qr)EwN z`IPE%0Ew7;r#j=F0u)j6$&4q86&4F&=d58g&(RqAf-3X#yxLTrsw6zjkZBfOG{JsG zKtkeXED7=U4BfE((tQdK7px;7EZBhav+K0@V0$QXWrqBGY*yUgVWkA*{w3!Gand;;TCqwqprE7^Pq*W?HJ6 zLSHI>Z%jAOJJjZBY5sAL_;W6;le}-YU`Y7RYW&9OS(!h@eCFQcdZH4?t!`gJ&Kr7k z&U%|svM~M0(!@|EpMFwR%bt^C4C!~GwqEiGmAH{=96${Nom-{~BOSi<*RN(S8Q>>r zYE;kYRQ-Hj!0vD2W zeDd3+^y)pUOGDuFYd>%f)#9_6QR>gqmjUnhzVS@R z7V8vzaM(pl;)+o4@woW%9goOByAUSI7_KJ3m<8S-Hh+dA`7Opq*hAo~C|#&61uC0~ zpQ{KN^472mjj_8KKg$H0J)6wqR#T7~?S4n9!I7LHZuB~$q`P_b4+pqNoSRlqP@xB! ziT0GpbUg2!u$|!mv^B~vdx`DPxa%2etaxHu?P`c9(PDV4<`Xf~)$|}?;hJuG8pRWC zH$#*(U+}w*L9Vpoy-!-{W9w1F+&4jNQW*ul#E9H$I! ze?3h*k*qf$`EzOBvo~*QA21%BuGRPI1_PnXQYHjpSh-3H!rmrP)@JjxW|gmmRSM8v z#p$G@y%cP-;L{)vzag>iSQcppE})4edhpkg%rhS98vdzQ5@5=aH5`+QR%%Xozu3)} zYAbh}uz>nR;G{yUP3QHGEg``ji+d}t#bVr7l*aM*7miT|vYBRZ$VPtJ;F~K}v&{JL z4+R8Is@NVleR2A(Ln!IcL*C*7RA=yb-zZNs!+InqQlwwKgJ3NHHzW-n>$JtnHGY6b z!pHq@iy+ddtUbJ?R`FtXW-tuSF$I~;SlB}794AV8VjSA1tG3M=J|{$P3e)XI7HzRx zXJ;PpS%x{p91H)VsPsjghW(zb)#`>RZ8>uR%(HY(2+WU%U4s{S4t90 zGRt$VP;ddR-@T;dz?M-9tEr{?qbSPY^?Z7AI|9Zwl720>Xs`T=F>z8O2j^RD|CThm z?V{4JHn%1qM-A~qLNh9mZB5TTh{%VZh4**C112R-wNoL?)J}21y>jS&$~=kk*Az_w z3^NYkMC47>X{Dq<0m$slYixo65j*co@E(|>b~NXSFGOSX@4^#^Z~F%&|4f7N67kJZ zA%``lWqr$iD{4M2q(c!@)k48_vPq&?zg;H{Xr7*kFw!N=R5|-x(M77xn%uR11Qc0UTP^lm$`&#Et+%8hf_}qq#Xe1DT1xy0p3;% z%4~cvC@Jm`Jq3ebOFHG#^L$x^m9WaNq_rXS^R%sZR8KG)(FPqFg>Z4fFjO1_eG7P2 z{L42f@?ePhjfnVgJ3U1$cpNGY6KLW2NrNwm3y5(+*v%#?JAiydKRk?ol*-_Xhb#w) zgrTvL44kfnH|I&V zI8+0b6fZJ`vPTpNIK67NWkZCal4}{g>hqd(VMgJH;r>!2QeM{ie`mo)mgv9=q#=L18{ zls(A?Al3+(BF5_kS@Vatp$CcWKDE=lU_biC(|L~jT?PT1C3^iTaWShm54KsS`)!aH zi8d_zT$cQo2g_9ze6iD4(BEdqPKRf->R(6`D1)uw09=M)Jf&#ZIz>qa0!^Ey;pGgi zfAYEQ(!!R#BdxJXO`#RFvU@k@srsH$du77}MX6of;GDSRZfB#z^He{M4f@x@8nO0=wcVH9r*U|Z7&-Ut9= zXR@wwLY}`dd>q0U_Q3G&rL4G&1@(%-xL#)GfQ1!XS`TB2?qyB%>pvYF0{V8^qfGr2 zhvl;$``w$Tj!d8O#BbtirKEv4XKFGR<|w!3`Na1GxUHz6O!tt|ap+>5%xpRdf`!Dp z#EQ9BCHmVV*tqBE0~>GTH5s4*TqrbAv+!pAC1KTE^`4rty(yl?c5h*0#skoSWf`u(Ts;YKa<;(CmI>BT|{*#84U2`22H@R9&^Qf zNs#axN|I;>dMB!qAs#OL>GjXl2&&j+13W%57DAqHQt|HmP8h7?-_c4m4E8WfjDqz) zzI;ctokgh?pf*PQiN)o5k&yAt?I>y+yG<`PO1H_g$?z5jP`_zA>{U~9EWH>^PUNN; zc4G#56!t-P2&LhTj^IOQ?xglBb+`2Jxb^t{$u`gl%;!;~19J zBs)B;xfMUO|GY)L`P%jdpRI$YxRN`p+vBl@vVlZcMwAVP=VZW)QY&7fATA!Y67bIEM0lqns(0=FLcvX$q%dK09 zX}BHrd;9hAnV)2MLU0dp(+eMwp1B%1F?T#3g)9T6&FqMm;bx#)z7W5WsbVlAP~*(` zpf-UHpa+q{AiKh0t^0=Iqk#|4AsYsPby_}RJd_WFrDwi^)Rb9i)m4u*Cw0~*3!C%kOoNSEoEai{}gDUUyI%RlKguJS{hF{KT^f~#ji&F#)qp^A~-0b+rC zoK`ut6=%g@_ubVBS6y)tddsBEG-*g8P{k7FQ=YD0JH`6i%!Yu|&)xdRJ@9Q3We<1R zxde3`H*nAY;_@*EgeU?f2w0haq06m$`N|sor74~bF_mrY3EQsj3`=(iW?#c8##7;8 z9A`w21pmCiXv)?Rg=Qg4fBUd8X)>bl{@cju(K`xW-3qg1$1k6Q(PTBDT-1Ga&lWrn z?^z>k7S~(71EVF%K(!VN(TX8Zl1Wmy27G zLe&f&mCexZ&x>|OaEwET@b-K&OvkG06?vY!(*xdWk*XuO5@UL#ZR{7Ug`Uh!Qf=S)Swx$pEk506(i7WUAfu z8>5_P9|Cl$SVt1NucEPQRMzbgva*s*IODfB!(v0V?vQ9pWk6(IiZ_32F?1% zxIVSPU6zP9HfCO66q?sBKnTQ@5FJspM8Rsj!K*4zs>q`WXm|p!?p8R1CWcI9Km`YW z^A>A|%nWsyepb#896lrwKvp=xZ-O{n5GsXLAExxTX*emsTL3-gUKuinA>Nr#`<{6& zPT35bBz^vomXrHRI-KVRKUogxo&=@bJkR71RCo!8K8^DGC~e_Z2unOvFnn!mNBZ-l0Ea>KH;q5N z?DuW#oD~C|e+wL*H5^afn%cerklF7#J9iAArp_oimp|~_q3(}mo7a{m|3IxN{0|en z+ms|d0zm$WvAOv`EwaY(2`r8R7Y)GqgsM_aA}YW|o&Xuj->E~hmY_)l;(zXUcH+GE zedpS-KQh~U=R*{%YFc?qXNZ3RYRU+nT$WL;NA>9lQSeK&X1y8NM;E?KXkIchF?(fP zN88QyFdtVDV0gRE-szpL>JUHJM00nWcj5#WvnE2J?y#R(_3^CR%a$~+nf@Vz_&yr- zLJraMERLU*N&KzjiN4_8%5ay)9RouQNQ> z8G>btGoFH<30(b|M&D?j{u>R=VhXPN_R6O|7;+`tYl<61wJArHJW=tDPEufzphBj#hk9I@!K;x6y?K8l{uUmRYM2G?l=d(qdtvP% zk0uH>(KdW5wdefjbwk(u+fR|`pRiTgoDdCTCW>F#ls%R`Q_r%jHB`{Z5+HM{Sl^}3 zI!J0e7GN+joiCPEjSY<211;vep;N)0;gPUJCi+5MakQZ#tCgeV`8-KP%~GsIDSTw;cJlw>R>zf8jP4=v*9Al4OM4z#Lioxp5^O}QgC zTL6+F?LxjYO=Ai?ienC+O9!u1kI@E30@bvOUzimEA}p#;Lf-cbzs>=FZSmrioC`uM zv#Yum^x{{w4aoT}V$j>v?KKve-HbJE!*4m7+>PN%Gc{DdksgvunYc2%aP3vz44+;f zJ1j1$JGHU@*WrOS=PawjyaAauUl;U=Lb=}>9qr_EV#OD1sn*rg7<(gvf>!?iWY5Wz zf-1$w*g@R`?-+h$uh=>x4cps9QoGNOZKo)L%lg(=Ok`QO4$v`MGb^4@X;qmM!<+!ICgWlMD@8Ch`AMIKAdU* z`xB>|VIikOJ1ReLRgk3t7i3$Q2NPJ3$JrIH%&#DeOKh(Dxs%$P1H;|_%} zH`DBAuLdNm6@T$)hl5()=Hp~<{ud_t!SB5h!k6w%-&HJ?CR7<1M5M~!_Y5X6@ZbJ_+lGy;z;)R;WHF;Z=)}zuT0R}1I3A03fN4I zMWiro#8YAbmDcJxjbtv;+~xNtgt-S~i_Ha6zZTvP5WcIMGpA?p$bN1T?+w#$}n?&LygtS;P0&v65`8dv@vfHde-m|U}RH?%io%|H$EvY*c#P^d7>{i({Jx39> z`45_Wk?Aph9ac|g$n_`%XI{FMf2W&Y45;H)GH($jR;be|#pJY0CSa`eWgj%uLi(Ya+xKr~fm=+iMF!H?sc9?XEf#~Cm^9PLF8b2nz@-x`={Y2W+#q8NpelGVJ<2l&; zz~xYG-70=pyz%rUKb8ue{Vc3cHfH>9U5f=SiP=M0t$ek<&@!b*MM;Ba8qhy1L0yQ< zh7q@1{dqrGAie~DMq&Fyj=8gdH|&R_7Yc%vX!1ttS~QQ##$K-ZE?qfYH#G>AxOWV{)9p{zBx73o4Oua+lih`Da6YIxgtuUF|OFb@3& zJ)%9aSyy?yG$FbCfJmT<%jVr zL{>(2kj|Xto52IwKhIGL>La^vPgg+uMzMi z7`HMSO>g-&ZKNdwbXD<0RTxa%F*!gDAt0z(&Y*sdb#VGou3L zElU`Le?p6ME_t;rGAUeYM$NYz=IK~r$eOV9W4XLUTiB0l%cw`HrI1DB8(Fv&ou-aU zR@BI-Qwbj65FBXvB%nqh*X<9whOJ@3o?$olNc!Y9NE6`#R$d<-ueKyW7@VUqom6Vb z?PdDk%e2yPj_7hL;Bjz@3>EDLykCNDtu((nd~hrDSf*Z@5=py9{vAWWB<+$LKyc*J zqUAFeh#K+#<7wLIXgz+689TETgra?azkJ5IVD-@CcYZs5$2}lE+b13aMs9ktR(kAGvIhFCba!1EMuzsCkTQu#qtF$s?Dj;4H=HVXh8qJ0M7?7 z__N#~|Ee;4YzLz{mC|n|UXCAj5ASw%FE%&dl#l<6&J7aDz&_!n%@9g9DQ0?b%msrm zDMsog%MBt78q&NNl_7CYSol9+P>~4$eIo_3x&@;iC;$Z(t3YPapuxp{@Y4&v*QgK! zHGUq}z8@Sv?hykWeB0i++T8rSQGQ!?i3X`qqD_BRBRA@d7!LxOh)SFkQ-Q`3J<@h* zWuiNA2a-4%#L0&?Cfmco@TuRq?zS&m-d&T5$>};i6YgjR*A4|@DX`cZ_qw$%t*y6i z!=KZ5<30u-*M3gj&b-=bG>8@r;_C(p+ti+mM-0~ux;hSq?cljeMZ};916^#;yx8HJ zLkkAEGz6PsDliibGF(e^fk|$LqCsIOXdDetFJnfJv0DVNS-@6w{S6}579VW4pcmYRN1b|GQ8dsC&j`z(3pYt z|FsVWDkj9F?^WVx5HZk89Ee<;-x)o%I0kt)RiDaTBNmiM#u;KzaeOd(vTy}by5RyI zZi={w&X2n&llO}7H`7;S#2WrQxFKboE{CTltyn5)&j{;-9muqwYA*&;ZCX&4`eRo^ zWg5!`=F(g&=`za=>R%jCOsGZ)K(DtCf89U)?eOT2Bch+pb1+btoxR#+CK`0>x^57Q z1`URzfgcvy?qAkM56$5N&4so4*L8aQkV^lmE~ZP1e}pk#$oFv9DDL4H#5N>j)2|Xd z@rJ}2q?#A*n9+ee6^M18T^3`lcXx56E(0{7gYMxSrC$#Sn<8+i`WaoI9}z3qsj>*HnK3Qc(|)nA_4})3Gjcg|gFBMStwK zv_Hwh(SKL}tg3~r8-zHJqlU|CmL?k1dm45hh7%Hc=#Md|LB+qT)1;VpQ*WI$I0lJy z!m&oAABHKSJCw}S8YIM#YO_?u+tM;qo-P?}<*$I_9d^0QEZ$ulh)OCh!?ZA#=QZikTb4qe0$q2HArI+9BtUK^AmNk3lN*NOWiqZ#Z^9E1La^ zGC_|-At^B^{ph4oNF%kNw&MWZzjv8MgIt^?Y*tl)G|?cB){mw#o*D~((oETK)H|!S zKGvHbo2|2%brkL3A|VSi7Jo{yB4E%`07o%9>3)-4BFk9e6E*hW?w&1w_dD`IWauTm zpElK?_1~&=={vv`js-*ZZmaZT@25RN;~syC6w@?DcVXjRkS{}bWtl z3>BD(2F1(`VhrSu9~l!?4jR!!So^#!Eut6;T(khB)(|-<#t)Gy#H3g;0VSVaEfL(f zch!PHe1=8bkhUWma&c)ZfI(~sSz%Bbk<}23iZyXDD65lbj|Q0l%YOOA;za?2GRh6g z(5IrRrBfhrG>C_S7z2q&(xWqvpg4EaZNTMxg){$XtPpbAwnkDB0|oiGg^0h=*|0JscpU zN<>RF&cuzS3Z;g4+{kXfybzPV=aXnq%-kRr2kJg~DhJUctCTlQ)dGVO`)M3FR|PV^ z7o$Qb00kDJK=!#o41yCPjU00000NkvXXu0mjfUTkBl diff --git a/_todo/image/apant1.png b/_todo/image/apant1.png deleted file mode 100644 index 695e704b99b6e37b772e5e585a8be18061dfe7c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34969 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 diff --git a/_todo/image/apant2.png b/_todo/image/apant2.png deleted file mode 100644 index 608e1fbb5c662bb33ead65e7c7dd4fb82ac24470..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41428 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 z zE^oUls|RWIa}=O7T?uhpDw7cD`nr4j7Ynu*mk*tXtG4Aor1I2r$>Hm{zx6YoZWlzH=A^DX& zF~d+4b1!hGZ+h?v!64B5GdCRk_d;hkxVFg6!a}Y>HXZ9qa

    Di@&Mr<~0*EB?5J; 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�$I_*}*Kz&DLnD|3Rb~ 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 Ja@7g_{{ZQlSTq0t diff --git a/_todo/image/apant4.PNG b/_todo/image/apant4.PNG deleted file mode 100644 index 54a88b7c3bed459ae7f9e165ede6d0ca46d9a750..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 84112 zcmaI8cRXBO*FKJrqJ|LBgG6s32%m$o>9)f8`^bv)A5x?X|A!T5F$3Ee$0SLRvx`92^oAWqEBJ9Q+*| zoJ%jS;sO7o=`AD#{DW`zNc|BGPDMP?=@SARobzrK`A51wW}81H3#^qe+eBMCW;)be zt3=)8^j5T8aK^1xDx?sJmB}Nz+MHO{2VFTnu`d!nMOZaaVkzlpV(oJ|t?!4%gz?I0 z3F6=lfj41_yl>>Jy1e$ScPI4>k{<{yiq}g5hR7e3L!qA1wG*#in#Y_oBCE zx1&F&f7IcLLb=sPn%q)9ymDL}{QPyx|M_%19@SIwfP3Q<=u(mox9mx#sKvX$FqHb@ z^MG0x?{v|r0lH(NEB`ae|21Edv-~bFC~Lt~(=5e!DPh}HC6a+H)J*uLPMeZxc|QHS zEL=o?J=aQ4W#2@qV^EVUUo+(5e6~|J`k2R*!pbP1)|eShtF~`iVfDROpd_V-;HL)8 zzej}^BacdS=c^Pu>ZFl+G!NJp7$$-y{2TzpjIEh08AeN6!9{U^ycBA9ji+q^~ zl8@R+*i3ay_>$6rS3dmWnQCqtrqRZ9ap!&&YCmKqeTv6`0AY9; zO7LMesd?7|E)r}Nz2|~Lx-kr;ir+vdjh!rVy_!K!#oBXo9izJSZv}+@%O{8tGAK{D z$)EekW4a>?6|dfe8FvuC=ZZFE&MQ zy|BL9jbVc!Ep3t z-#zzG%nHnA7-o2cdez8P^4RF_F%Y>jQ({H0L*vl;k)iV%Wk>fFKXUyVi&n;_d(XOj zTx+X0ku1ydweVIq4mwjaouM;8+z|2bXZkorYNNXZ_8z%*oh2qW!VzBGUxi^e8{5b# zD?9U4*qYR=eq5J#Uo*%@wbX_sg7k0KnWnNwA-n6lpTF;rosgbUq)$v5K{tOzwTu+_g*aBSHK^WI?rAveE35FI5ts67s?p9hY`Ka~dI(ioCUF5nem3f(; zP|zuxLY3Xk8k~1K-Qk*f8l)()+p(-9bwdBja#7w1dOM2(Z6;k-l~}ddURR_UN!D4| zXFWeM?IDh6@#vQlW;f_;^mRoU4bKgv^X6}}Y2-iPBUr%y`rjD#-{TE${B;}%iFz$H zY;%SSHC7yL7HkBVjkzC#Itv<^;;%?QtS+b{&2A4cpM+55lxKJac^k&F(un>F8C?}U zr3+OxMP_O!Ss(yKJRkS!R!T2v13xms10zh-4zcOjG4C*063~aq-N}s=(M9(Y2dhEa z;u8K_?d!|?Fu4)jXU#`Tu(&n;thZLAidSm+W7w}`>ox8Pzj~1Rq$Sr+DmP#P{Xk3S zqI;HG5P(bDDQ_lqz9H7l@hu-WGVAY+d~=UC*=cEy7F<=MpHUdkjgV|q>_FVC@*A5PZ%>28*ck73td`PehcLQuwYDtgE^J|>f~uc{ zNp-s4df8}LI=vou143WGc`;`hmj7pq1qU${C$NLM{RfA|I8;KwK4pc%9uC#Sh=+aU z2!jaA>3Lz=!`uDn7gn*{3$oE^N5xBUh!ID|)hmrxIXR*sG|;88AK@&5&qs_z@*3Li zw62Yw;kSlAd-ix??IlJ2ebF+}{;~g03o;E?1McMqtu4F0Us-dkh9}SW;tSFbmkD4ipf)vH4_bABA&5{>_HI0p-lWuBE+~WiM zqI=>@yVG-N?>qNW;wFz(gGj6cy**EMVOC@1ewp|Ri4pn&D&eOPa}JH}^atvJ%T>bY z()Z7@OD`ULi}!>`lW`EOm>5z)m5m0-;ZW zY{A^-VNZ^^&%|%#v7Ruhi963DlVDaftx~qNnQYHr%U*~RAqrf>ZVZU>1hf9N84m;h z_5C+^y00PEbSCfkzcaC&!MxXDM~oTRg@XLQyUD4VNzc6!k5X_ok`zt6jn-a$ZCiBd ztKp8x;>>f^M;BfU1R&vG$7U2nXWsvw+P5!B!>r%vlAcZe%y1WSk+Q8T4nj7=C9w0Y zFAe6^W68qnNf|v~>F3OH4?)$b=`UZ>D=1YhL9-NcG5c-kW-p0@o?t|x#X=#Xb7nN& zcgFB1_1hjqWkKZp@3u)BP5f7`2{Vs-r;N_O>uei+(WKS{~x~>cn7@MInC?);uQCTf2{xx<*G66+sUca z^qHAbsa8MC$FV9t;^d5R0W6DML9X_{UKp~*(Yi>0zz!>;+~c8$ndYgszxNneSQ$;i zU`S)0kp>BfC@K8nW&y7x&cT7-1WCwCY^<@<-1!%B>!ZR!KZmp-|2=p;*B3j?Fq=x_ zPYsie*jLBFy^-%C>$}~Xne@+YP#2P2Ty@)g9C!^G@nzs;IsXC9|4llV+P zGZT~kE$_s%o42%w_CDr(zBr}~Hx7a!9CEE-FP!fhtA1^Er_oDrlhl~g2XQ6Q)U)0B zfRa7A$$e8|kNX!N1m>8H1NXX**f*PTe#D&xIe|K~C%8wvWtG0+!R;A@$71vMUa$a5 zmj4k6%g`^bi%l;RNLNU~YY-=5FibAD0Xb{IBQnMdbB({)ex|8J`&B{B+b+MpP58IB zm~sLJ$3l2tkAS8korEGIc8uC?S}74{_SUSA84m06&#E~ovH_a;LvLl+14?_|8H zf-8Wv2SH6A6Cp8EWcfo#mBQ^|4QNOyjyt z(5tzzsD^>m^OYVUjS;b@5!pn;+P?CCJA#EW!9!5v)RlYj8j=1?q&3GnYlr9tdG}Zr6)ey>56|%&uVUxjD?Ud2`CR`oO)3&V)h!uLz=*%}vmXTo7^q2>SmJ^ z)b`VU`rB*l%YOMSbiA^3JOpCkzxLSm&rJ-m;rJqmJ=hmEQ6m`HfTVu%(<1uw_rF77 zYaL-7$Uj~a3JkX)d>ZF3&FX#ekIF>|1P*Vx$G2tu?NTx!^;|dz0`y=twiJ8FK1%&J zwJ^XH-~|l)`#|AP!i(^1KqrB7S8)0G2he`t5o%{bLX-1=OaJCQ_GPWRSI0{}MM8{S zL__g0T&?O}-~Ae=u!kp?{uP|GveWQ7DCKX)+(NNUrD6R8PHev~hHs!;N>yhTwlim% zFd$zIX<>kr(mD7Zw#?Fn|C`NbSKv|UUpK#Q!$SvM=|JM=X$F0mq}WdhTCF9Ck}xW^ z$)1^`$(9^mxfJt%M1*C+>pH{XKb~_~O&Ur-5Y2&sxx7Wz(7X3}S0=?Tcji&vdBnZr zs$SQDBu45gA9Hs0lVtxN>@>udP#5$Br|=_&Al(75;{IISyOzyYI(` zN47aemuvoic&dGFD-1B?h2e{daXz;vyl@dH(^G1VNM(LLzFr05CQ5GnuWxR5=hal_ zT>`h0#Qja-Ebs^)o*XT&kxk^qS*|fZV~=#qnwvgdaQ#Kj?{xX-yIz5d5S@#^>42(} z)odbTUWsY6R;FdZzIlGa@4zfjir4@4WspLZJmy--^IVHB>mVUwEB&OhJy-XO!`g2*l0CE|AC*8 zb$&I1hG@9KaH>^94a9AT%6n@KMF^9`A@E1z><^X+oWdL%quls=)>_r1Ska0Z73sJJ88yED#` z22rB8mT|`tevof>85$(=?s)Ih4Yw0&(UVlsBBxTlAU^CzSnnu z=tNTEH(a)v!$J{yk9{24##%~yJcYMqM*vYt$fa^Z+T1;ED6r7Z$Rl&#b+-$hFa6L7 z=3@~04(~pnTvZb51z6SkjSy*rS(vtJ)1^H%Klh+>ec31ikpJuGt-yeqqFZ`!SOx6i z`rLuYybZ0@kr}?C5w50@S}BG zquAl+N_3@fO?!Q}?dB_KsuE`@1dbY}0D9R9Y%mfnak@9VWMqFZMLhOx)-YK63Bi zv(;ADS#jJE)G4f_PbE*-GsoXhPr4<+1cy^`wdm?@%(7{a9Z}~Ja}d|%UbPSvLvh&9}&sru+P5wM)IzuW66ES(p#Q~3p-!J^KV*@ z;d;Qgxg|Sbtoi z>DjAb5sWm-6m6MKT3O!rI_UyYAj&Ae9E9#HT7g|v%{_SuhJu3%eVc*}DB{q3fZr!8)%o|Ml9@;VXuGmvymuO8NU07`_s~u^^(|@Y@3EEmZ zTgjWr^C?h?u2H(G&(@UfVr+yz2Tmr5nGb3^e~D{V9uAhf2DbBLu>+y3jm4V7#zC_B z`RfZ&kf9Efl@Hw*aQYkDH&(Tj%7eHV*ED@&o9g#4RcFLWO$~ZIt=};}Z>D;`+f=g% zi|jyJ=2x?fPkU||Tj?$J>dT8;TtZM~e4yoqhCUJJbg5+HGg1vI3j%{#$wo7OfoqN9`Dv_r|6lbI9S*>SY*oCa!iceKAd#@3?OpMlN z%1|apYk&AdV}MnB>;eluxQEVsrhml8r0&ch$a^uVI5f3BPaXM6AT#MPcrDN6Q zl=uq#NRqis_B@@dHeX@9+PAoPQzzkykfPe}4X6og<{39|r!uUjYhqo}g7OC^jf*tB zwYVrv``QEDhd(ZQnmq1{+_C<~%Y$F+h3Urt#g0ySSdu$Z08LxGZ)D%AQ&y59K;J1) z!g#A}S|c3-+k9yF2EvMdA(tZ7%I4cX+KeZQ4LIxE|-Ze+>U$y`+3 z+LW`=*i32r-H)|TNi{;}LNw3imQk+vZJcVl7Z-x|3>f!viH%G_ZL`hCyY}0Y&D;)1i8&yXBM60*{(Z2^9y z8rbi)r^gP}{=o;MCMaEzMjvQw$E1t}d+)nKUA|;7mepoL`j$B z&tSb89Pw+5od%GJ(cu@Tc0;T6OTpJMUNIKM!{*ADbphk9RDfr3CqAW2?mU{*VWC2s z=?#)08H^q2&k#zk5fMzX!*3(C&-Uj;(!Ei#ulC{wkS2PLXF|n{5u2@$}S3lZ09}Mb;WGqu0lypWz2<;*zovQhnA#6eQ^PjT@M9 zZC8vwA9`Ix@B%o6BQt5J85!!4n#4*dYne`Zme> z9~_pH49$ox2X#7|8SMKzr%B9}194_tl)qI7fb;)m*xAasmS8#fFV##)!s$dlLhVmE zrf(e%GnXY2jlvT~iTs^;NnnmP;dHw!UC;tr$J{bu*cG>Z)QzFzv1$O{M&z#%SX zj;aiug6Oa!&HqcRG5RsRkS1KwNkt86tW%33ya0Xs4MWmX=~zZKR{oLACYp-mZ$VKr zR-D&T?Y@E}`d%7a`++A>{_+tPx*QK5cCc}n7M<{^)c)_aQQpB;A#gTjbwbBo# z^SCB+g!Bgz(GW4ECm1&4BH_=mB>!T%hRJx)Ct%dDMw#ru{bqh!(x(~fi#G1f0@&uK$Zza82R+XHVcdba0Ql7W}E8+YTAO)K6_|VSg=KMn$<7kR2|1G%~JF|kO7+I&x ztpuF>NfPn?M(HT6RvU~6TSIS`q!n0XWY-cLTiMY7i!UWJci~5aZH*;!48m*KjvFd? zrphL0H`(mdo-RcCM6c_Y41{+0VQf4|3J5N~6dnp#B6WJ;H(%OT({FdeSoI$EP0vgE zLx64-BY$N{MCy5_l$%(xVZnRB4&+TbrQrz&MRLS|ru>(OuV~?3H@*1@ul?!yzZ`JY z3sZK!vpA_a0XbaQp9m6Vj;!TH%xsf}lU=(iQH5T|#>IgeFclm@DaD|n>}9o1ID zms#|Ipy=jC!)j5^{pY#jtWLX5Lr7P-Ef2WJp3tM(>?H>%CsRWoljg^Z z>QzVurQu~XMIFVkl<)rH2DQ0#z*%`0hKalQ=hv#C51RL!Y-*Oqs`kxoO+{9AmHOXV zDvWwPblP+Ogo@_V7vCvsc&6-t$%IhxYl~zgYN*=X6Gl{DpJ~R=JB+WLhY7l=o3^pW z<`mppm)-ST_(qRFm3J;B%Gu;%2K-!ST?HyHey5SUc$e#rtYoyS`5O zCH+-dlKv+#mY-fOW@o?#svJ{Fh-;R)jh%&u3DL0iDJ7rOw5b)#JTY-J_~vE$zav7@d$#^Nu&Xj~zt9f^VY19aA#cH6f>@_4I07 z{)TW4YS2_Rg!zIh+1g473V|G+$i+o}h5(fiunbBkj>bOH?R+m|l0RyV=SjYem(8mb zD-vXKC7N_to^24xOI3b-uv#ywUfWpSou`(B&~|ByH|ABh+x14wQX~rK!3SimKPhZ}KIaSfxM?%iO%`j1b`~{a8jk?u5n$5!A z-<6_9V8`{}m&ua0dD(RJ_oAXFNnWe>Xl&$7mvVj1eiMOraeoA<;G}4Z50&VMqGv3i zlg6O4xNl>hZQ}=Fb5)V_%D5h8Q z5e*J~jz!(*D>6XrkDL07z#7tSM-W^bW%rjCIL~c;zBUf-4iNc>Z27rdyC(upgKSzF zIBvO8j9kxF4mkj&&jpZI8W03mHupt$T-Z+W#}SoNbildF z7USdgCv$Jz@zA7Rhb*iYHxGvZ(Tn68?n*ll4LT=ry3wiT(3wW^_Je3T;|s_Y8+!rX z2CBcGxU6FV@a-x2#P_iB@j8b_tH5Y7xR+LTUVkg{#Y}V0)jy{QfRqp$0jyHcNd$r^ z`S%k+V_WM3RFB48&i9Rr^BLkC+mNgJ7vm8Qe#1gNT zpDQlXX9re*?3@OpW%@sa(L6kPiCTWqMv3ouhT^wK1Gl!Bf~+Uefv??tHtocOX_cX8a$*ccf zmOL&2KJ?aMc-i^cVsEXc`}9PR|L$f!G!=5#cV=}ra54~?wqQSSe;0Tl1bn+v zJA(zUASDm|*Vhtw{&cTaZJ-Q9dc~i+7c#y9Nq#tfxs@dnCFPPB7xwX$mmJ?)Z9;15 z)Ws&1$3LvO^8^?KvA%KCsqvshwW7#x7fglfirsd-ao>L=w>KKY;6lIi-;=#iCQSh9 zYJwJWtMBkK1e_?|L~YFm5ZS%#-bE~R^~bn=Mwcy)R9gkXBwNObk+{VJmf(-z_AM%$ zss+J2{OW9Ihin@s0%)?);zn@71#6=X0Bf!9<8$a_OQHq8diZQdW(cL(zJXMSin!5p z1yCGts6#2-q=vygyfPb>PH`C`ZoSE=Z0Fv%VTSe7);UyJiz%`f^dejUzXd~3!6Z4! zgh*=)#$w_Udf5=F1M+|EQ`{eu|Gq~_4#Cuu4B|d~S2Jk~wvS)B7i0fR`E*@jRAZi; zEt1yt7T{%6yI?2@B@UX6h6J~d(!L#;Pg8JnhrWd^y$nH-((|&v4MH_un zO>+wW2*JeevivSXL@Hgh)9Pnw{=SCTUho zLd-}O|F2#@7~o`ga+v|ob%GzftfoQ7$ca`NPoFNm2MqQC6EzrPAgrN_jrV7LjojmB zDiwH&k}8S1#Eqa`o|oJ`I^Z#-G=EMUhw#46e;2hCg{0g#Sn3L%1SrFNLf7VK@gsk$ zr51AbP9(d8ll}ZXm(>kk#XGLhTq{vOH}tYI7CAm@Ghxk`7WiglxGGbBWc%A&R?a^I zRY(d@R#g|I#e2m$oC%o(Pkm+RDR~H4e@CDE@aCgQ5kRd~b89*^orE<1C?v1_Ic-%W z$#A21PH*a~r_#l0GgRxphGySDU{7aJxR^WWWBnh;KUJ|vN~vqJt~yTaUSO9B&pwrG zb%)iOEH3qhZ#T0B(_$!2y^Of}XF4ti|IfCzB6DW%^dfb(!tO_Rp~N;EG>#~;9WVHR8Suv{igLk% zz`xPfm{U?pPm16n1x-V7vNciJGkM2XPMScg1_k8>D<8G2;+ga{(nq zY|+$`n1GX5x=8FjC}N<=>G}m{{*~Jzf0Z8h`9)Fg78t}!Fe865WS`E+^)G-4WH^@JwSVY{OR*^e=bYQLIC@a z4;!Ou)Q6O>0)l_tpw?C{k(*GVMAYkCnS#&+>EBsB+l9d1j9$oTj)wW!Kb~%nz`2KA za48jWsS&%RMyMFlh7K2cjAVNuas1 zf43Ke*l@Rk(xnRt(96)!gnGjJ7U1|q7!T6ilww%Bl(@Ejl686!a0tE=v6q-fA(222 zLdFjQ*`42OYk?VldiGqO7-i+SYjx&JU5<(Fgq5-RbiW_G~7u;tVVtft)% zo!nw1c!Bq;_RNgHzL)L=iLl>#P%}xT!~<-QZGNx-7QjXHxV#crm2L~nd(tC2v(hbi z4MOZSDLq&lx?^_LNO%t1{V`3p+?j>GGxYP@=>;1iW@PFcyIGljv)tEI?p>*ZNjC=S zy={ZGCq-UJb5Z1zAu?ukt`mgesSvmw)Bk)y>n&l%RGalFBZ*#(Ffp(fg>;V3Pp(W# zX`LNe7I4=V|0k3a=K|&&VB<1yc$p%k8G<1zahGrK23sm6Nk5l!zUEFKjqk&)SW5(W%e~h`2=a)gS95rsB`0a7F?k={`1MLMEzNJq={4u=UwnX-T?WeV-AKR* z%`7&rKxN;G)b|6rT!qn!o5<2nW2${DU$x75Y%t1Oc}B)x7nG&T*wTiOrLiAn^(CF% z+r}8imOP5_kk6~dDz0A!f=)e0LY301Jx16Ldfm>g98GukOwL#Xc$oSpQZ!X9(ha~% z<+=nfAui@l1omt2jHOG64C<@>2qbV)Of}PihxO%)U%U445}<~Qt@s<4@08x?C)>_A zdYFFsE9LzxNJ(Zxj|Mke;@iYGA|r(8kGhScN^I-Z8U#^rkr5(aY^m#L|7NOeOLu)F zl+KZKsq}kP?l=&V`!#R}ki-?gY@G+j9JY#Owmn9vp0 znXIuSX=J@`Xh18n%HECR4)EJNLPHP~w`89RlrD;+R3J+r{se6Hr09KFIb{X`QxUP% z(p1{huP*^`AjB2a#45JocnQIabth*87IKpF`Xp=LRQRe?_Y~2ZA>WcJC3znTd3;5k zVI;lLBlxu^tC4YJ|5j2?D=@iYbzA`_d-`XtCvL3q6}XC6=-^utbW&QTUZ zd$Fg4wV>0pCg7x2l;ojfl|3e8-NM{0T}H;he!#n zzHx6Pu56h?4F_TRP424R3p})eg&t@FoS7dKq9yw~_WkPGlDd>4SW+F~K@!%t!#`4R z_iFX^*{o}%zfi_-EuMMcPOx9w2lq$E|76Bt5UwpiT8@{H$4f(1 zEl=c>!7|)`IcyoAoKjeAO^_cH6x81Tg5_|SglQ-4KK>#aQ#_jM2 zRS)5#{8HZyTv~Y3!EtMuaph{LfDIwi4r3k2H!L_!o9@(!tlrVzaS|L*A-K+yrTe~t z3-l7g&-953)L5$e+~Y!~L?D7U$vq!TqwiQRY#l6mZ67vedVRNLcX^-p@dYH`iy&1i z(-x#wGnwG7@FcnTP!0sGzs|IKx@bmqh$u6cz15e&8us=Oyo^f`FXU8-L)_eJaTVuJ zAS0jzWa>wXttXHx(Bas$abwx-hl{M}Og6>|FN~5%t|Eddz6Ys|zUo5e)f_fdAc@va z3#o25f3Wxm9ty#w?6Jg57>kT)`Pe0f{U7u^OQ2WzSss^OzDAO3_tn;+MBHtrXz zwObU5D8(H=F=OFY(&!k7mYk_F({y1;cJdVisp;8y7lWUHq~xp2p0FF6Q(k~Gx6MOt zp+|@UXP<1j?yHIi_~}^)AjatAIVGG1Dr|k7gvrE`Ate@xWm_Fz=$VLuLuG{<`zkbs zjVY*OPBN8do}{Y?mJB;C2A6KH>M=IsVEI*L_@Ao>8?Hpf(tNeq?S5=xVm<&EVXlnoDU;=|_Bl+!4D8c%;pX_pE3TTX!W5sLhcfB)t( z1`__>f0g`mZ!?-LaU>^yYPqqm`H{-JQLSeAGeW11N7MBj!#=@9+ibNJHY3r*do#@b zyI)yw#a-6(u61R-<2C+>GviXWL{^=A8fF(76NBF*N4mkeHXu3zoBz5n^y*#t4!ci* z?(CB!y(DG2L4(;b_vf-Hvn9OS-TkYvF2+F9nn+db{w+rVgeMl+FE-v?QdsK}>s`0Q z96D7Lc5LL54>XvkD|3`x6*}~(pu3yVj_iHOi`bVkeRsFV;<2=FNmT%39=BMaAYH5) zPCT=EnqktT8q*saB=7Zhz1Frudq84IrmOQ|;(BVW);D7BGj4Nk6SxWO>rYSRka(fO zU&HhY-z2R>IL;94q<@+^m(MIYiuc*LNt80}4*>{A~T%(jku=6?PibOXwsyLyP{7bixU-B$!jjh3uDTK>+a zeHmJJo!@COv6u)JuB5;y|OKEiS%ya_5b8k_SyG{)lad()kS)_ z*^pekG6B&JdxJimj#AqoF`d&gWvR6rRA0figw-!yx!#Ap;g*^2IwPp_O$wc-`OR!= zu?inVgisern!R-27W4KHO;NV|;4pH`|7YSO)sV}e4Q*$CM73YgOv(34pQn80+jS(T zJ!~Q#juhiYd0)>BkLm4>F>dtnbz7&RrBdkX11BurW}|$dYs3qVyZt^a^1D_m$8ccq z25EP4taO}aVou?dy3yhDL5zQT_X**4#uAME{@Z=8Nb!cTeT8E)u{?>D(?RCUHG!o= zuaup@{;3TxS;Uvt!+>N07oM`SW24*~hi2Z}Kj%e${9t8!mFsURTboZMI3oX@X`r{e zZ}g>`|D{?hmD#KM$vxz4>Sza%oD=S|9$fTg7biehbVQECK-8k`W@Hn~@;F%o<_J9o zky~T&#Gr*C4N35BTiJq=!22-(tD7$Ywc zeBmo`z1F=)h4<`BLcW}a_IU1{5k0??iXURxYgK{Iln^FLUxQ!A0H?|MJhb_Cv_oXE|X-IBx4kz>XP9 z7Cd*4{~jLJy8;aWS!Jke>zvZujC7U^RAu7oeO`YlV)*(b!>zkYD`I)-ao?J9W0fm} zgn0e34+5BOAN6u3G`Y&ws#y1DY~C-{&p@Xuj1Z@EG$hXCv`loTCmOsQju10qsI_oj zNf4tyyd3SLh|@atXes(;Jt8q&w$ihnfYj4ou4YlWVxNIAsAExDe_nH}M|jsul;{Rm zi==#Jc`skl9)xcD9?N71L~ck~0Q)pI`~W0jVw8x!Mc9#6gE>Z>CFDPl%3om&XLMT} zVp{t^7gU`&u!H+HrHoEg`_8t7G6gb|WR@_DYom~sN!AFgpa>D~9{$exPGuF6@4j-s z+J2Tizethe^Q{s_-$9v>u1h8}2YWN?UX;g|cV;I>Fmg__4L26dOL(IElC=2q)o!)i zkYmV5e_m_neq*9-PM1IyCX?7_4 yd)rwF=lcBmY0r$W7cN{3w35~^|bsl}Pq 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 diff --git a/_todo/image/arbo.bmp b/_todo/image/arbo.bmp deleted file mode 100644 index e5ef94a99eee9ea07d76d8a40aabfe101200b835..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95194 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 PHY{v*G&^3428#a!5`O8I diff --git a/_todo/image/arbo.png b/_todo/image/arbo.png deleted file mode 100644 index fcadfafbf00df178e8dde8d25ac543f88ff909e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7862 zcmcJUcUY5K+U^6WAW9Pf5dlF5qzg!qASi-@G%2BnPJmFQgeFBrK#B+`5UN5TBs3w^ zgeD4Xq$-3Gq)9WOw-EXX`0Kn&|rGC#iFl%|-JUCy8 zHOlTu&IDJr>?5F-mDz1+3ha`p0?51;ZXh?v4?=G#f8}<#b$_&quM; zdOaU|Gx*CZixwjDL+MpI3}e0-t`cZbAXkeQwhcT1SZ5 z6N4b~z=}Jjg(6pF5?{GjaPhDcx-*6mqp_(HHgU#WUiAimiO!&@+|Z!t_pV6SB%2vJ z8JL9A4R;78r_jN{J;{8Od_Li}S#@0E_zi%yb==^(lk#o%#)>J*oAVt}_A|sdsVEiO zj6^qH{ANN$MTyX|IcIj&Q$xjp3oKp@)T__G)6`w~i`;GHu z8RF;_g7OT*g%k2UFGhIOHin3f3pfhhId>>Ny|&yEei-c1>ep;si4lb-b#qvI-gN2o zt8l}u>G9-x=L4>6u0LxgeSDB(9{6pg4rYTMxdbIP38vM=q(`aT0dbYW2QfB*Pe|*n z^_%>D)bU$HYtmQpK5MIEQt*#gJVz%jAzdr)^EY-RfC- z3?8n%b-GrpYhy(SFqy!zL-$YQd7|sTD_97FKb8_>^kj%w{124wCYK}c28Y&qD_5;y6RljNq6iU6u-huQ=JA-D_Gh! z*_gqxiyG^ZwmrR(z0B=q2#9Zfmsr(YwbWHX4TFoh!Icgn_U8q32r3?**ZO^G6w0z_ z-LDz08i3xxQBd;s!F6mF3rCW3ZP3LOM;3uo_|D4~$LZ+>1tctAul*h^k`-0!+R+6O z64d`ymLq5%pfC;SDN9H|DXGM{-j?NNOmo_eN}YCQLn*kukW+^6UG3^7)EnM0X+jIV z#0?Z%LM*Ct7j${bJ*05r+Sz=>=EWo3N)E+H&1|uiei)Jv6oK<<$$~T8sU8LF?ta%P zNjB!qjpzUN z&HelO1IH3~24x(Mk3u*Ly=jtyk(csgsyGOg+Y!B zTMECPV$vXt3A`Yu!9-IwRBaGR^B9S+baA+{Q`AepJx(`MCidX4E=sfUAqW)iY&F^# zLLv!+Jrp;jEkc(&c{u%4ifr65)Y)+{#tjJ*;}Oc>l{dPaC^cK4sP$dMPcWMF%aU&5 zL1rPm;l(5WZ49{G-p}9(_|t>mj19c+H(7&+zxPCz(f?A5KkSZxU@KbgZ5cj$JS=z4 z$on25EX7f-y^~%QGzCvcr2dyLS_)yOt6j8v3*jJM-^k0uW} zR_!ZcosAe z>8WHEcPVvPX##zS7RH~Jb|Z+n1>mBtbxK7z1n@LJwE<1{wZ&WRds2zuD^hEM+`P9Sf1r_vf3-s=RW`F1FZwZ0;jT?Z)!>ICcE; zDRzbN8y=4oSPaQyofVWzJ#)tE=JT?5g|a>H6Q2%ACVF;2l8w65_C6xy_Chk#11&BT zP?5VA`T6(-bwpUfDCc1+oT+@X zlX5G_1DU^MM`<2$@vllfhh8GQU0EP{2RF%5+Lgf#z5)5w4$_>3M@4zA8Mv{vs~Vq} z?lA}q`b&Tnj$M94lNI1K!l8A;@yPdSj1XJWI);wh7fgOFJc?HXh7zofPQpkaMR?x}vG)M~HmJ^d*1LRXKXY_OkYiuR5f`z<0XRCT7}D*Nf!D%;gk~H^i_uzz z$c~FMF9@XG8x|N1_s@3+o!}v#Q4je>hmpynjP03V5SYIWxgEtS1fqMN7MxZoo>_QS zAVxEOeZznLL!qesri>6gru&_HVs0)6NER5vyp|F(2n2!fXWR@fnm(7~4@)Vzg=u<| zF;5ue>d7L5p9-Nmm|3ptc>BZ^b9(}MH=QA|-EYU8AB<~OA(qL0_$tXml z74Y`*T}CDg&lG;|UKiP9LnL&#w8_{TA3k$^B`L3Yo)lMvYsT=gnlrXbWciJx{DJI! z#;3Hts2%SE-wt?5x40TA{j+7x-YL^y++EJ3y%3?*TcBk+6HsLv3)si)8chTZ-Enzg zXJ$TuZu2NVrf08Y89`d>NrI}IeWPU-QE6t{?2P@%rr@~GYt@g=-Oy&KHl5oSmXFr@bg=2Ud;N>t%Cd| zonK3~@fuKh1#E+wrS(3opdpp3P{P0(;da(m#PWdrc@_!h5NZz!=T3@!=oSKFIXmS4 zJ3M)rKZ(_RB01jY=4W!P}Iv-B=74|g5> zy17mlyz_CLc$Y%ek{BC`LhEE+^GQ@ty50FqFpT5@n)@>=W`;I-Ift6(3svkw8;)aKZlA?a?U=}8d+RwCCskan z|D@q`xF4dADDM}ILBswThes^K#r2>-42Ohbaau51wfyRx0P9aNgy zjBS?vsFZi3PJrvlVpCVrXhgxK{Y0659R<#3)}j$FNLYv+lq)ILCgo{-P6|sH!;mZw ze_Y;;SjV$*2FId;94)uSbv&*b(qy&pjMP*hZW?@S_u;5zX4s;7U@Bz&Zx8%;ukb%r z>mNMx-$+VPGe^&0cze8O*Ya)P*g&Cqq@935b zRj!-^UG;+%2YICG=t8+!Vd(+$-X)D8h<~kf$N)MZoX(?m)0i$8T zRlGTRI}6?WnlVyIBB%9#Y8{2~2}2Ikl&l=0;m4aU74Jo3xky{cL&mYKxwQQH)|q?DECq6s+AGG0E_*n8v}mP-IWTPMHl+M% zS@u{*$|MMTFf>Q+_mLD$sog1w$e*}F6cI!dV4u2|Y*~ur-sT3x$h!=yUceNVixHnQ znWj!h+KI}yH`$a37^m2O=5jJ8%juvMB~ePJ@P%kK27j<~2#S6zC^hC~zqR>*CD3)O z386IuswyiG@0xw!|8TFP9KQ_-aNfgs-k=XblEcIq~FME>TD~-=+yJv3s-69zHmnVXC0j1gWAkc;90+IdOX)KmH^(Si- z3fwi%LXi$*jGsosT>lc;e@l1!rx^L8-5o@TmRrC9!Tz_8%7-h=p&MOOMiW+(8^dF9 zs&PBimFMS?9vcJCK0jbuF#6VSYlFK{zGZdZd!|ISNLP08N4?fQ!g(yH0;?6e_gX@C zrd$Ctp4*lXW2|fuUjcp>JSTU2VfiSjt<_lZ2fxmJq<+=-BvXdujz@V*H;hZ-oDHd# z&*N@kZc#9#)W^U~_GLTreIM^Oy&y+lKp0}x^|n;K{CAxltk9}>`u4Ei7CP#^l^ z&?Dkrgid=dhZsKacShaWZ}}=D*GX?wxRwOV@woe4ODD(G=j%Dkcd}z=AOl=|gx7>? zhR=A3m*j!p-FFhHF$28d!(-6qVJ1W#hD+W;p@Rb4VJPGMsPWF1pkX0sV%26KozS(d z>*L?ws>&baHZDUKMXo5O506(#GV*kd{t>y&h z1stQkss8E&a<6Oun~^6qY$PoBcWwMdH`#QXO+%OXD*zJ-)}qX8Npt+X^0M$b zSB87rBa>~X!dR1HL){vC-!)6{tM$KYmSQam$u_Xxh~bQm|4E?lC! zhmT@k!~MtagV^CZPG#K=uaPBhZ>3E4m+mlWum3q zP0KJ=mo0i7GPHyQhat+K;pojE?5@PxN!B3JRe3n@OvAwH{LoX1Zlw%&yql^#zn|EarO ztQaD1psTN&0XVp$PO>t%7yyzGL|cIH>qg(@1pmrvq8y`(uOzLk%^t~Sm!c?{F@vuL z)@Mw;fbA1Rx?b1$mY-&Z+7K_|MuzZMKb-lv+=_-mqfYuFk$cGJV2sBc4$RDJn|ZyN zMI|FCU1m90qxgz!XP1n5a1a!ujCVZUIk(rj@s@gWF=jAi(0@D%1#e_6jQdLn_-+4m z9IVZzY^eJCa|G?YKFyh<9hX}EMwPz)Gfv?>75A~4wQ;hDG4bWxWF#Odn5)AsOh`;N z?y=}l!GxGmacHh_kE2Y%d#uZsXS}8@eFBEzeTdIR1bTPLZDt#p+9cbcQIb8ecgZR8q{p);A`@ZO8g?E*$VS^H5Gi&sJ<~uX0 z>i8+LqWYgVE~>n+{>P{|UAxU+)gEV;eArHWWp05kTbvdzlscm>+H@BPm6v4;YE^Ez zCkP8*XYOAjjHIJyFzKnXDIdJeQ@vb9P4@x<=+?$nu6Sn@p`CRfWteA*Z|Y6PqM>N0 zxN=q)Juf6MrQHpzZJz364&_3QCmpS?OkTIVC&jV$=FCs`h=ZrDLMFQThr=`M-*%H6 z2lcu9slT=LMrWBlcvx_w<%pPO>6q8sK@sG9?#BWWK!_+yoDHVJr9ZgilE#;AJ~&c! z!pN=T=%gcA`Ytv*+d-o=+XkxbE>pe6d~M2NXOuv5x-@B$nq5)Bm_gu{?&fd3M6do` zh*ZzT%RuzkqVRLRsK6>%vFZdm+kjXj_T>q#_37hskEqwUvP;`iRK@Up2-z9L>thMt zvkp~zgcJqwUr!%5k3hPLR9|SG_ACfcxT>GorlVb{$w512V9JVW$wote& zCjU~>k=U|0y#|~Fb28Fs&_6W5S1rD6eQbYO_1u5$sRULD`&CBFP`h$Q%ohro#`Z+b z!2#eA^6x_uhi>UIe7F&d`J|MYtX;S%BOBkfi=%Sj#2-2ELap;9DhKXwk1Z?XBW4Yy zO=Tw2JNxXPgec??m!bn_JM|E{zq$<$!`;AG9QO9*HLH<{?#JPZN2=3PzCXxbJN2|YDmTBu z4M8A}<{~t^uLop^oIZc}w)893GcH{&)a&n{xF^-#q+ReIgQB|Oe&F+=YH?gur`9H& zlQ}x7X5D#Z!eqHq-;t2h^kXmOvh-Sq|HEJ{{hPC{X7NOM@s6Wi8r$$2p^YGXeid|Z82^d8ExaPU1bfM0O#2RAwb6alncL<~s3SrEC;y`U7MUr#TZodJWI>~a zTnIbE+wqo&<1g4_T;xAblRrYAu z0lz{yx~$Rr5xSI#)Lxc)kr?b7s^t}IQf>{d>eluIPkO92t5WU@Q$5}9g#-b9PH{vk z>R?<00ChE*-+QLpN3WF0_dL>R5MNHo@mOdh32hVSBu??5cOQLo$;w;5dBi6N1d>>& zg}99OXQ+zKL&D*;xXuCZI@RKy;p_3U`0B6F%S5!w! zo*emYoFh)DuYDkNgcKkj9zN4-`z)us35O5Jb@BBR05``Mu}Aj=gdqY#V%Iaoq^}HC zIMi8CtbmDfwuJo^n1f&SNZ4{G=d%R6ZNmKVj99`hVJ3K)n(uGkmd0anJ&cqGrV4=& zc|PdgbMuRem6N`Pg_AVsIQx2%jH#8EW&3C-3VHeCQ|n!4?AW96v9t^iXP>PRmVjpR zJ0o&!J~OqZg!s)ZvbMGt7Thd*sQ#P6?-r6rl{=G`i|7P7Mv`9JVdz?5&-Ib?J>t{=7~g<_Kpebo zXyu|ac9J1!kE;1)Wa>YbJ?Kt?@p-j4PGv>vWo&FtH%oHP4Os%cp4QZcP_}Be8oC;u z?3pe7c%4Me5N8T#rf}E2gn>!To%>()JVFc77y(8pyqAS{u5PY~0Dg(9(Ei-oSEs(m z-3io76epD#xrxZ-D;*mb0d*g!ga5u0{O5|c%b&1(pm*V35jS-s8la`2r(ULJ`}}_a Drce7N diff --git a/_todo/image/bbette.bmp b/_todo/image/bbette.bmp deleted file mode 100644 index 7c071f86c623f0c795284e5adc7b243d857f8432..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 174894 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 blOX>C1o8))G?r2O00000NkvXXu0mjfwe%{? diff --git a/_todo/image/bind.bmp b/_todo/image/bind.bmp deleted file mode 100644 index b20926210791f4e979ae010702bf0e61877c6b4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22170 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 VB^dzl=o6!^t8Nche}D)G{|nh29R>gZ diff --git a/_todo/image/bind.png b/_todo/image/bind.png deleted file mode 100644 index dea0117ee2c640d53d78861880276bbb9ce888af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4601 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 diff --git a/_todo/image/bouton.bmp b/_todo/image/bouton.bmp deleted file mode 100644 index 8778ec6d3020a83e8d535f5b7ade441faac35f48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5046 zcmeH~%?ScA5QSq6Uc?Hlz^mZhF1(8!*oGZ=@N6xfy$OO?fj)MY$B;iG8{I@UWJ5BU zdHFIM2wAR9W7Cv5+8MqDzA3(unV>ah*UmSCwmDyKHP&ZSu!kDq!R+#{H`|J;%MZ)` zaIB&t&tCq^{ZamLLWT$a9)Hu2{~nW%r4#e-y&AN!z5mn=@{xs7Rut_(WuKi~{8~`@ zzp;FSADTK>GJI=sckSwUeX^V%DC-iUjrd?nqEdWhYtp9kTgn;5=5KLS}? zS+T$&G)24D$7^Irq?5=WQRsJS;2-keB?JF`e(;1WyhidbkK*!M{r)YVHbRI?}h5u#)Ahv%mZ1i3<`xI z!R&q_5SX~`(Mt`pg!yk1Unq*lVfZo83_3R~~Da|$s$91nY#SIWEB^YL3TK`2uT z2*RX39sX4Pe7VMhaIanR{p~(I<~KUPk`VSZnv&Bl}UiWX#0Kfd|eZ1WO0000~!Dm?iA;$`}u`s>lK)wUpFHWA)H^-crcfMAP>4o5iC#bFR%f2+gX zT0w!9&$thy5C1%!bsK~DXY{jtPKW*>uBNL%4{{;`0*50ch9lWl{vBm&fWI!Ec1!Wc z93?W)63VUo(;jC@Neuy;Xm6l{=hrIRIMKhXrU!5pDPo!3`nSpo2?g=~Lki!;2meF;Qz|grKPlBq&uy+hJ|Ta+H~7aVa2DP9{isaZ?YWRNvshVam diff --git a/_todo/image/bouton2.png b/_todo/image/bouton2.png deleted file mode 100644 index f3b5dd54ca67afc1f559e93e80d995f29ba791be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 367 zcmV-#0g(QQP)PG8c~^8EVKjfufW{jI$_oI(~pJ>@fi(x*-mNM?Ktq zB#EGziEQkfmp70tV!$2z_*{={6I?U09mqzLA%fK$tPETcNNl>t?>Af;$;;EkCpOYj z4yks~I%80wyvLK2@rV#(4naU>*uygx11#`J6~Sc=F1tv}wOCan3t}puiU?LKXj0w} zI2d*PzyU01QA+%LMd@aoB)@fvD+_kPs7uQ$Cztc48^X#|crQw{>~H z|Btg{;obf)clonLzed}jEzxFff!?`QF`mB^-TnC*vbiCX1Gj(XcRZaFTez4p{jw~( zTyMz?TGZzEcz?nQ)T8NQcI-NP5`2Eh2X3~yVKm5f{U=8)d k6)D+M<9tSFkEVBU`TY`_LGWJ8Q?Zg?vYVw=E8KFTNyxCjd_rMq`- zr;C#a0POB7DoCZXJ8%I;tnmv0!eZ+5bV^Y{Dss$10M7V@fKMMD)66|609SG%;64Th z2Kwg`WWY3lb`t|e-A5T1UhX@v{~(RrfeVn}z61LYIylIV2@wILJLAYM5TBzwhxY5YALfCK-G&K+gel1jU9~_X8QOL_%WV(-xj6z=CqBMWd zIv~jjKeT*6BP|d>p#4X;Rz7CS9s&k?`8Vo5%D`ZEAA$Tk;Jr+I?i&ofOnl|bU;u+X d{S9{a0RVoXb^uP!^~?YO002ovPDHLkV1h)khduxR diff --git a/_todo/image/can.bmp b/_todo/image/can.bmp deleted file mode 100644 index 6cfc5fad34de96ae47bcfc6fdf779d5c5d1ae3f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 122022 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 JCQ9ked;y@&og4rF diff --git a/_todo/image/check.png b/_todo/image/check.png deleted file mode 100644 index 0abe40318eef56f57a2f29eb3d243aee7d183553..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 331 zcmeAS@N?(olHy`uVBq!ia0vp^zCbL(!2~4TU#Z^!Qq09po*^6@9Je3(KVV>BWcGA% z42fucdfkxgkbwx>1N%q3EbAY5y3Dcu!e;AslJm&j<_?P$%@!4mbLZ-CJz{+%pyOy# zS-Y{e^^{O`afQ&&8Xh+_u-4o zt5)lOotm*T`Fh)2hP2N|*Drhi*y-g%Wy9j*t5q#udz`srXcoA8pR<={+1skEU$$&J z5h*XU$xl2?^yQ%@kB;@rpHB5i=GlAglh>09qpvnP`|~S3q?J%r7={Vu%dv8v`nj_7 z+-@F$!_Kz^CURI!Hc93`G#O}fj1a?$XaDWl4+}osxc+-|+1iF+l~2#Tj9+$rX8mrH W?Pj!k!gXNiFnGH9xvXt5M#xn~2MV1akGiH*yXmA7#eJ(^#|3V^W2TBZp3V7+lHnx;%3y5H z;GXNG8A2QvkU*!*`Wz7;xyZ+6?Q%o7i~?7xg5WqqgvdY$Z4!zMa!Ku%!GyG1c)e&qC8Izb^6S#`?);srW!uv+h3{2&K+$Dj8&bFg%mwr!s9 t)1Y;Ht4`f!7bH|VVWi>%gSBA4OO>AMv{V+IGOX9;~xl$KQrZfJ>O8ejUTIQph of_2!HkDi17-33iC{E=eB3(E}Pu(g}xy#N3J07*qoM6N<$f(qKI*#H0l diff --git a/_todo/image/cmds.PNG b/_todo/image/cmds.PNG deleted file mode 100644 index 065aeece9d8ab3871f1855fd27ff6369f0c9f2da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25823 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 diff --git a/_todo/image/combo1.png b/_todo/image/combo1.png deleted file mode 100644 index 24e5b40532c788aabb1012375abb8f25a4c540e6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6869 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 P00000NkvXXu0mjf+Y(uB diff --git a/_todo/image/combo2.png b/_todo/image/combo2.png deleted file mode 100644 index 468b7de16294df7cda41a2f00bb1eb0f61dbbf89..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7276 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 diff --git a/_todo/image/comm1.png b/_todo/image/comm1.png deleted file mode 100644 index cf951ab8c11f4cf1e4aa4017407941d66cdfc548..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4419 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 JPDHLkV1kr`z)S!D diff --git a/_todo/image/comm2.bmp b/_todo/image/comm2.bmp deleted file mode 100644 index 59c1aab77b69059d13edc076ec0f928a884f9162..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22094 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 YLy7E5Ex=n+x69tz@s4H02?)af1Cp#3@&Et; diff --git a/_todo/image/comm2.png b/_todo/image/comm2.png deleted file mode 100644 index c0b063934533e25e87d0eeb15f76c9254bf2d89c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4509 zcmV;O5n}F%P)P_CCjt*yP5s;~Te8TM!YbKtZLb<=KQ%A<+bA zN}7U#3wa=-1_1>Gskot_rVpUJgk!LcNE99k38jSs38g%u0O3oEsvuElc-XPy_;Kxf z&OLixs~`4x-Fwb``Cdo}{(I|q@7XhJ*8FGfH8X4G%GA^pr}1#WjZK}p_eCNW(9i&| z(tS}ju|mV*EHUA%SgT2i8DlVzdm^G)onrRXi;6$>vN~L^g*4}FRsZLq#7D{u;0>k2 z0}&!Y01EAK>j+A9aO!!t&#P)a_1Ay*VxZjdSlO^{W79O60P8HS$$Et*>k@!<0A^u& zb6)V(aaYLq#d79$ zw|+w`QegzBIy9QhCK?eBWreTJA^?=V(tcruez_2PR_^TJF?M>1&G{`gkvv3URn2)@ z^$LoW##5eH9coYAxpC_GUGpE5oBG-d**u}`>CiM(RN+`H#}rPCLkd^8O4X_XoY6|P zAp+EibqdfB(S(RbR_Sw25!vf0mo=qiui8+nCduIQk=Z0c#RgK!!Ko&KrAS1iuz+ep zdfgH;&Y+HVr|YYo0K{3EGWC_0PhD^`^Bqn&%=!s!&2%4K6K6E%Y@#V*NEpC4AcBRu zs`@jCU~-gb2WFAxI?7)ZR@LDZhOSTVdi@*#vSyTy0-7>e0on?v2kmuIeUlWB6g2^{ ze#8n@V5Y;5zt08Gr+(^l&*Pj4n5OD^tVTiXKvRK~HD~R5!H6jay5@n0lbmzt4O4M- z9+!uw+hE*Sk(H!q*160AI#6@S6D0*SMu4c~-mveL&}MS$)Q4JAuf2cB>JRQ`^E#2X zHr9_-NqRadVP2x9EGn85GP$RHKJ^d3Mqza4Gt0NX>@kxQ<7Z+E;i?ZmwC|ffWLcGv z4?VQ+>z$AxYGLxu=QQ5_7h5LJTA`2|?%(%sM?zG5KmwgMu~on72|BT#P3MjjEJjjb zh;D!$R-qH>FO!aEwhCvj zpWge%2~ytupB-T5bDO6wMDy;iRFHQ*r}4pyThsgg>A~Yia=WEfM`O_7F^1>?O$kun z0Z1wPPVCIiY&!ez-?bOc+WqMVy6x&1jHmh`SgDs(Q@ftX?tp{inP;_VR z()(u(K-8M^uBGRpkF;;;aSc3%-n!$>d#cH^#95|Wdb~vy@IiAXW>Q9#kTfNHqVn3V zIN46q)6-}0lh6P2)6c!?0HC-1`l^JydOx6doOk3sZ?;<}#kxE*olYKCU*WyxOp2Nk zC^2YC8ol~TJMGvyd3<{MKyk*C_kHKw7yTDL5De{U%n=^EZ|e1S{+N_aW0?1P&=QsU z*TgRG5_`M@X52hn%&M*)j?HMJpe)2$DICsHSTRPdU=7ybj97yatPy7@EQMwNgEPaP zVYNc)kK@EKDH~FjSSPL!=WqqasIg+L7>jXYEMhRW&SP9Lb8!FU*#$sZ0OZYmt%f|8 z7MKz%q!Mo_E!kkuq|#r_f=8C21%Mx=1EkdXIW*;u^Br(V+zWV9urfqR};EV!n_*J)z3pYvnbBLvOjfPMrMk=SY#9 zNb%P`b#I;c(~Hh0C(#TUt%t)BATi{bYINQ2@o-3>b{xGf}?kC^^-p!@T(m2#g4RP{R#X)OMsZ-li8|Dx zR=o`9TTSl7gDm`i=R5mQn&5leEY1&cH8mD3hWK{nR!nE=F<;>x-Y;!RuJE2sOC zt$-8M%AY?}r)=2%&h_88v7cerl^d^m{<=%w^sO)a;|J`KA7N#|tA`NjczhrxvZB

    @AB03=wOA##J-@Tz=1lyJ9+iWOJYWRPPcn z$Dy{L``Y^E8(;j(r#^YzTi^G+f4%9h>IpAMTOT{7>VXbD))GFdHK>Rx2pB}Wydg*i z5zXYRWKt58SPxXzjS7LqgaFCT6#`HK8bXfVSc|BrBB){VLtpHxJo(A*9sIM$qpCTh zNKPaqM}S-+89Mlq#yqRn^%RcbzECG(jR?*u&A4kLfGw~^b>qf5OZ>=Yx3e8Twizjq zLJEsoOrziC;r9Q=d1nF_K4pV{?C+=T=VRT{7gT{N;3F|>cgzyOAQo|m11GiL(4MvW zEJ^1$oM9pKO@5pZV7?Gn)MISN996TbZvVjN>ZTpM^4ayxwvXK_24hr+lA}a# zYO60x3ZZPWp#(4u=2(3<=3n3hTLL(zf~>hShn9nJ=x z`GP&~xbDK2zUcfbE;zXB$4l)0X+PK(wF)>3BLDLCb)z|-^fw(;6wSR6IAsalWwsd= zLOq93t=*1Fw{^7;Aj@1KbffJWy@pDiLqN>-_utXw{WTYW9(vX9ZQJv0S-)x9tv`D3 z#gk|zB}qy9lM89UoVjh!>RruyN$m1o@67^YCGIK#tYBxt&IwNf;%t%oh6Q86eH&|oRJ z`sVoQtBckH*O@DZx_Z-NUiMMB^9_v~U%layTW2Z9Sn)jgNXO%>j;?WPB$b-J3`r#> zVj^{;cy_Fi&tKnMq{jI|T!|>4!E4n~=YaOtzp(zGT8p%fhKh7DLX~h=6Fanj|NqIi*ZaR2TzPW(KSr{ zU+IN?bln~K5QLGWGZ?$NEvm{a~ zaDq$BI$O?m&vsZlbPA!&BS9byDjF4ZRpcuWkllATcHh0yy~YHt7h5C1?z`RYyO(zw zFw#BKSbN$WQHw}`-Cwi2zuF=WIn`nEVk9Vq;2e>zdzlw0m4cxY1#_uC-r_NE=pjlg zBDELEMYC>=^wyFSrDTjD4Y`w? zsY9E!zs-sff_6`DmQ5I(_82$Jmi3-iH(+f-FVxvzm-R9Z{7ro)GPqeCbet<&CRSB< z8o#~Kg&q2xmpCuOaJaU=dg(N2pTO0DgjSDwrBV6KPv3Il@UfrmU3#T+*4D=_ndeso zuYcVYZ+q(-my>hLgsE8NRIar~z%%KxauonQL*l@&0CI9uNisMke5 zwXq1kz0xA5(RYXs&tc%x;57BWa7f?m&2ZXj{QRN)dEv0tpCOw3-{ZJ>$)|?e z(CTlq-}3&aTBi&fV?Y1Al+jY76)p01Y=&WvF}8}um0y0mP6vH z+3XtmnZfzjhha54&-pI&{XQ(_zZ|T}{D+Q?4~Ngz68(XTp1lkYWeaIPT59=k7q4{r zLQc8VO0hN$XIPv5{aEf6$-l_sA~Kg>=|bGCRQc6G`bPeU^Yv?s(V6ALjKTS)M?3Y8 z2)gHBT;%eR8N+$BVJKuU95jBE#Bd(*81ePGLgrVzEqNN$qwGiwM^@r*UjMo))>fro z74-h9g?YnlJUF}QoHKV^b4>jibxKt&^taXT{`sl*ONaMfzPx;`!yNxf|7i~Oq1DO{ zdee%&bF`b3dS`hS3MmiHLk;d0%ryA2dMTq~>urO6x{T%=^^6PG*ncI*TT&G8U`oGSR6P+Ur&-s_7*>ajNN}r5m(s|7rQGHBBqh&|co>%PDs2`QO vl(yr_fQ3xzp8o7npAXYIxs39sv1a&xBf5a;%tBW$00000NkvXXu0mjfq_N+- diff --git a/_todo/image/config.bmp b/_todo/image/config.bmp deleted file mode 100644 index b00415008f1f25fcb428a32b98a3f24e6dafb52f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 332742 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 XnsM9d!(>gQ00000NkvXXu0mjfnhBMS diff --git a/_todo/image/essai.bmp b/_todo/image/essai.bmp deleted file mode 100644 index 3ea10074574930e4004336e7b159fdc5deccaf39..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 707058 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 diff --git a/_todo/image/essai.png b/_todo/image/essai.png deleted file mode 100644 index 8073b6315bfaa15311d7e4b45d4c76cd40b50043..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18796 zcmb5W1yGw^*ESlgxEHqq#fugS#fvwkxI3j3m*NBo6e$#IDK5b^IK?GM3k3=kcPs9e zAOXUkKF@sTKj(YT{4$f7Omg4%-fOSD_H`{wqO~+si3#Wl0002-OEo1O001)>0Kj;U zhl&2?4Uq^K{f6bK@KO&C4{u>ja}@x11bC_RLeDSjaLGT5(a>5Dxl&dRp^Kw-VhM;H z`&nmePNC+!N|C8-6IL(ps`lmseoM`=6ft|RWnPG zQsWTY)K76H@RAY#iGO(Q0o}`K$yYNTBRA__sgC94PUWpoXzF!P=9eDiISLMiho`_k7d1udwaI*L<%1AjC#j!oR2f{!Tkf0%2Hv|3VA|zQKL-!`R^d zP18m)GDTpQ9N>k#xWJT8z~OUe{B5JpJlo(TucS2je$kQ7umpmd%C6KnAjHjCQ!pt3 z^QUg#Hkg^8OeSG#LDKpt6Ydem3HWA6tgQE(zl>`=Z~*#o0R?aIdp~d+b3iMS%7_3d zd4oU%0fxNhq%HtXkSC3oXI3+(pv2GaGPTF6h5Hl~{w;Y=zgR^2eJi2zFTWn`9@^N>h#=S5y`bHrU@6iy`+Jx;( zy`u||E-S2P3^S)Knn?ay()KMPX}s)0wTgSsK%6$XZN zO&_D8JhVh687#&<7m|l?4NcBRnNGG6m^!y#EPTn&Q;_wzf*cP^Qn>36e0G~%3|L^P zWHw8#{VdgYe7(&c54DmaBY9V{rtyPX`%|W$q$@^lMl(TZ;Y{AXFsKaU6BE}Yt*e6h z261nYI1IFz-Im49wOD2>=G6N>`LIXGN(zum=`cOU)R5L7tm`ukXSttz&9^qdWK$nU zoxc%(oP=>5Io#oUcQkn#AS>j55S0bd*)-mi9IUmbb$0;_o&&f8r~%TN^YupuzshW# z8WVyEj2hNGHT5Cm6&StL%{#$QES%xS9>#J2cuI)QW@cMHGRFZB0tM)C`tNx?r3p=` z8d_FhbL3HRqtU*Uxk-WXlU7lrM6c`a%|09?aaMhaZ`kuyiy*#4nzZp_U1jl*#PdTY zx!^#aVAK>T>au<%Q0Sw=^3`Ji;)l2DQTq=wDQ@*w5Xqx#>EZ(sXVaJXqxukB?&kP2 z>CO2;0qC5A@7_l3dOvAO3TjYBPT~f9YdK58h&9n~%~<_)iw>V3cvY|qxn9!&mHzs2}4!03}Htw@h~Miu}B)9BLXW8*d3yy z1(fGe>=6yOElrG0jONObq≦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 A_W%F@ diff --git a/_todo/image/fenpers.png b/_todo/image/fenpers.png deleted file mode 100644 index afbf42c67e8f09b2618f0881472d4fcacf5df642..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11028 zcmV+vE9=yWP)pF0drDELIAGL9O(c600d`2O+f$vv5yP zfP?@5`Tzg`fam}Kbua(`>RI+y?e7jT@qQ9J+uDt$>rK~#8N?VSg76i2%6b>|$olOB`5i!$_vNinEBqhF|ntus= z=R4mSJ$m%>&p-dY?|rX*`}S?xwDCK6^5mK|Yi7)t(Z7HHef#$P?`9_d)e__%|M*8n zM#euIN#1||{YHxEpPRF%HC9v>;+ZfY31@xy(Xo^%Q(t`X#kq6mE?l^9?b@||Teog~ z68)uDmG;vZt2?I+@R9o+Ky=NM2o;Q&(m? zgbv@neYR-g2Moz1>^x?Ar35Rplv3@%QfC+h2C%)Rk+?KG^BsBP2IB7p3io8ij@X z`s=Tc9zE)cHabomD6|nYgc0ysw{G3~_3Miq@}4Ag48M{f_OK9Tsciwpi@d)w= zJ6sgZK?({A^wi0`)k_;H(iL!mIik%RID&1KL+DR)=71dp%n^2A&IG&9KKl&mY!GvX za1wJHrlvl*P*b~oBk8^E8z1a|Zg{w3!=oKVk9QP3;riu{qOZ7qy{jIjU{IWb6F=vX zAga%HY`DMuy?fg>+}*a}4%dg}C&u()%ux;QK6WB+`(C)$DO0BSrKYCt+`03{jT;t# z11Jzc19}Lx4I4IW+_-VmrcH1Vo4IV^Li;!f!LJB|kN}b>1b={!$P+e?uybYV8U$Ru zvITh>02QzLmuQMO26o(cXQ3&7Jqx+NouXy6 zMa%9LEqlQA5!cU)mOUw2_C?V$L_$4C2=?F2ouwQ>7=(mA<|jUM#DfSC?d_svH`c#> zW8K@=)-AvPap}m|2${L%JNI;7zG29aA%5Tg{`dd-*T1^S9JS#@>ka0OY#Y!a)Iim) zUAy+|*@N!Lhg|kcfd3w7ffLMm4xG%K zY~e)fO}21$yIuTw>((tWcjwL>v`>y1$;VudA3uKL#0hlTKH-8P0tHc^iAb`uv!6V9 zf_+)sVUDmCQd?WQZp`3^6(=vR%D=KI|0>s;T<@&PuU(aYe^vg2Rr#N-&VRHz|MBYl z&sXQK$;`%u{*ObHef;`_heY^?tMeZ~SLNU1QQhXz-oS-cE`nZOx#-@J;$aasnK@Kq z*S*Kvwr$IpgPkLbV%~coBc}idR$#6`8vr8I4jed8TwHwU(4oVJ50{pfqEjLSf8rp1 zLI4BboDlp(%w4^DRldP! zAK4Ug@ZdpY98ywJBFaZ8qAORfpi2i2E0^1mBS!>tdiP59563^MD@e~fLz3 z{oJBi7xI~YS}^N!f&FTM{YHWPRzdEag50}>x%UclKP$|A$TVm5^cjc>NXUXCIR2uR?oIpc1G@)@_E4DXU4E4@hfb_J%u&~Y zdZ}=K<08|Xf1G2ylO+8=-^9iqw z3kmlMQzzW3tG=p?U4t5Mo&ZPW5p!^Aq7_T+S6OgpB7O`uW`S zv$^Rt>=Nmxv(w8n)35E^Jg{45g}JcPH`w?bnETt`{w8WyF?ATX)hk+EaDs5DC{q+4 z0)QLP28_THz=GF+g%=H%nwqke34ZY_O3{eHLHq=tf?x=YI}G5j?y zL9IG-_iET(^#nL!%pjQA4ahY;c}G) zbE95-R$(sW^c^R2s9n8#H3W_h0t?tA+_>~7fCD|SVSowEWEvXSo#p43y$ACgmoJ}q zx36E{cTb=LkNz5dLI4yi0;7Ecn+NRRfKc4H`@yj=bug=RGl(XgXw|tI9BCBbP^t2O z2)w84Oa*WPJJ`7%J$k@oO`JGM=%h($asynn&E*{g_%V~2GiPRIW@bUr^-4@kL`x3) zvLGY|P$7DV#qsRy99hwKoA-m~F05a*J=A|ksQ)gT{~nwFhhhE)!aA0OcP#7G;aKku zCnGwPM|3zH(V;q`Lrp}7a}h5ueszGj7R5{##c}+4mWQm0=ui>C&OP3{!_i(H%ECJ! z!u??#5&51lb|GBu^uk#YFZ?(3W2o*(f~xK_<}hS}sRvQJvYivm;UM`|_&az#90wMF zg95-m!om@7=#c>_fCbPF*!}!w9lUw-=B-<&HzfNdy;p$|84Nq)C-mwO3}z373xfyj zKrQS9d03b_IBu9a>PZlD@T~w&&z#bdlbNH|o4$XlZ@`g-knM-72AlvcCnrbj6LY(F z@0~n(ima%r&rJmZX3osc%*@Hk%FWKULwD}n-KTHT>B_2{oLQu~xwE0}L}jTqmeacm$W$5o)XT-B0!5#M_j%!ytgnCpJ# zCzu4&m_rjyj~#eIWkZNLR6qP34x+sU$4bBf6ySo^8#-cenrK6Sr)$@)70(tkf&DgB zS8wX)hkwvaIWz~ylZ(o)!{z}ySUWgk@QPL-JS-Y6aMrM(u%l=)3inFP5q6^Y3R7p& zb#Mio+%hA&d?h$5d_H2nGMag=hj;hec|=FM9) zcYgl71qJ&)EFLgmP)*JG`3nnW&6t*J9u)#CT(m^i{Ra*${L#N(-o0i2@I+|w$i$M7 ziDjb_KN_8QY;@v@(TOKtPpo)7u`(sGIwj#;N<4JQ*wNxDOUI7BloF4ve1w7_JhWnL zV)^TdCr2k9=Mk1cN3l!bLdBz#Yl>FJ{`VKb9JSfV!*)IUxyBr((PEH-*m0TO>4ZZoaJZ<`+WeFIc?r&82TH zdTUYs+XaQo3m2~_E;%xI$cXdjKgIsyB`alJvUHXEy7aAg4jn$auv>@g`*)Y74KIUE z9{$nf;m0NqKanx~WXACFDZ?tK4y&Fz?CkWR=iV54amLU~T(7v+%Z@Mz53S*+BN9Y~ z2#@o~aS2@L*o@TbZJP%9zx3e21JO?ab6w7Vp)rRsVVZp+4=cKgGIKZ+Y*BlTn1iDE zg)N3Wgl|RXz>GN#oy;6M9Pq8^z{0np8v);np#=C=(Vo*YM-#6ybB6r}{j|M)I@NIC z*A;NWyb*9{;0yAQh4JIZVp;(&i{2((l)p@9e!+5RLE#G0!o@40izr0A-5-g8rref&v5Xy==y`;TR&9nVTT zku~XL)}->R)Qa5Hs@&9Sd+IrR>V?^3!7k@bxRjTA zaW;zqil`7_MNaCetkjeC$rbZ6(TLo-{H=L|2Y@*-bq<^YE`Fsk_m{u?1-=ZeG-|fX zqhbO(f(%50OSwM_%Y;9v(~1rO^&x;A#x|)B0UL1pb|v}{$s0~ryqDzXXaDf(RXA46 zbE6LdcP#o47*ED<3Ct%Ni@;jgU9!x|>Jl<_)SgqAQ~C|=H{j&?d&R5jful|(VTW=< zb2c;+eP z_S{7`bwy;i$CoeO+`r@Y{vCJrZ?ENg@8I_P2e&^cX8NdP8}xC>w$HgfIb5IeULZH zle-ZDJ5YjsH2-0!VC?`94VQqYvqx4XGKZSD=Gd_{ef$zv9|dPSGufdTTdSzY3JXUq zIRK}0TFJ5EqVn9AFmkec)%R89IeTTu*KnG_kT!W7PIjhs#xNY%;cmqJgURdY=xFpO z^nyWSLkS8B3JwlNa}dZvY&Kg=Ol)jyoCS@Gi&r$Q^S=%4sOd2Oe;d~6-$!)%!HCZP zG4eo~T1$CU2=DLp!I?L4kWXKWQ6+oLmdOpi{ZyLTGZ z&3|Oqjw1qJ86Nn`uz;6`{^*B;JHIrj(+{BOL7i5N7y!G23Z;2-Vd?^|{6b^yPk;Io zOp7pew5CWNj3vV0UTG=<`!o+h$I9+cn9{*W8*CoUEz;mH5X4ppO+|oC1Ouix z1t;QkF(53^mj{HE9;=v&pe7wLr|+ohX|o2LXv4|0vGFuX042%<-EfQz@!_F*1Pu%! zm}7;Yt96$P#!(??eOnOtG7se^jU=d6d08YagbTRxD~-87{_&5rvIzC9?@YkXQSX(O zme7=|nEs*(el)@W4O(Mjz7;Uhe5;sG6qBv^33d@_LSUSN6LC5sA(u)$Xa#z?>!7S+ zBIe9TM)bpPH0rBNHn{4giUu4p2HGGrj4P8TY@s}iBIYV6a(UQ~u8x!-dAL201>^;} zLuP3Nm3nWoh-I_N`dM1?Bi7Q=(pPgqJ-QMUzPS)giqO(s`6sbYDM6aMT>G`g+#mk% z2eF`yuv0n{BL6aWw3dmMme4{bv9tt6m8J_}z{Ct7_UWKlQ3BLxIg_xmv~rj%9Ii!+ zgiU~>*$A?8N=H@cF}Uh3P>;dYG=tnrRe%F??qesDr(b@Dv>~-fKXQTWp#4DDi9v&g zVn+k`^@<60v|_EHqA*9Z^YS{}F4upnG57o5{~pi~cI08H?#UC=fS$-dd02VAU#!`r zRdiy(Cau;4h_qBrtlY!|1})nZ%jU?ql6ez77y+Eph7&D0dD$G9I>Tn1Wq)c29H9oG z87o1aaI?xViafBVtVWR+8w>1&sl(0Y3OicPD2r_88f5UA0y{%esbLpzM3zmxSfoxYE6da2B59F2Eglx@(P>GrepNc%4RU{3ws2x(L{FP+=k!a= z#X@so>b3gGxWX&vl5@w1ddS02`~!K>HQQ2#wKTsD{OgR8D0UYp>mjo+ogGH0h zq?hVGaE859J#f~rbLD5LVJAGS(y+6Po#%eGp&r&%c#z%o&R;aMkBqq<=h+#STIT}~1FHL4q1#n6)RracQG?T}aCQ+|N>fLT=c}*tNvwogTifxBp9H?w7y(rNSJUI%;N#E~KzP)YMSm6J0H0QTbDh zEh~|T=`8ulE>}L(1USXc={u_Rj=;GZ^%cET*{gy!tmc)mbJe_)rz`61&mxi3ht>Bd z^&>2$;d@-DXh-WIr zj(JG8pWSpTp!^IKJ;_H;k{Svppv?t6ptGpmFlpWM=b4!?#9!jV8n6qY7n&>RgnQNkiS&LR?&RPuKIm^eK zb>E8H*E^Nu=2cn`b6rRYOo2WuQGx96H?CAnFnN-%O^*3NCBvsxT;81xWx|JZT1 z=fE5$K!spYjgL9%L-?4pcJm0|im^6%M#{9%mL{)&y*hwyTC#G{&WIn?W0DUqHhRf(aY5enuotst-Pa54uE zLhsHX!Sd8bv2zVgC>5^dv#633QlC0=ma`)=BFEq+a~5t_!&9s!Ubb`S8;B_`>^Paj z8}{fGUD!gfIJw0!=Ze=B%A8CRW2(fjEGzxMtB?XQ$uS+_*Oiefo0)BoXq{= z7r($0F?jxp4C0vF z$@-rZ+i7AT-DJ+B-3f|dzl1Hrj+41x{pwfrt~e6B`^m=~iqie6wQT21m@{m@H^|QE z@p9kon43M5{3>=1%SY%%wj@sG@Esg^krtYF-e=CR=}>PODekrT_*M_IV+fq^S#I78 z_4?L&4Wxw_6y`7_BCip2GKX;V1Ta123s>7%%+=fIraQ*)t`a{Pwipa+rKy?oT6ScY zCugeZ`Vb~npg37kUnXrt(VjzBL0|CB^y4xgIC zyTHVoW3hwB`hCo`KIR(Awqlb^g zbOUyr%mG93z&)Na^l)vuCuwc;bA9c(MlVu#BBWyP)Tt95MRU9=fIS!CWDbMC^oc>* z;#F1%?M~E681&(BvF0Y8JP*;_@*>)E%`jm~l2Gja{{DC@Qasv>9WeLov(GZ$3g*~X zRvjN*#X38Lw!oZty1lvWSjY=bX>Pe_ap?g?cy5&*ug7Ef&^pYCuleG^eK6OtV@GTC zgw^5vMU@G<8j#`6*&=Cqf%Eo5&v0(0N}?sxsj&S^G|Kj-gb&hz5-#efoc z`Q?|1IaoOUrsTSIj+r>ei;4Bjd2_0cYRmgqd|DT6#dH#Li`cs=nPYV_*SE`|EwNskbDA;w!TPNZ!ElLld`@GI_aTTmWlUIJ&LuLbEG9Et04Ohg)33WSv1hJ$ z)nC+|BXXK$AL=T3&AB35P})EdXO6v+ACalbT8S><+B1NT|thIEt z?oWx+qTD5d14UOZJLg;R8f1+*d>fsOl}G|Rr>tda3Oi?kIS-TJ$^d)P?raft|FjYbiZI77 zzj52SPMDYzA9C=JIpH_WeXIAGQyjWU@}5>DwX*9f%;Dwk&UM0Aq$$57%+R+gO?9#v zN+-aCwt71pN^!gITkGvZh@=|!9z-|Uq(jrnQ1DuIT-rIzL*T(z`T!4ohX-TA*48q4 zEi)!I(oIL{W-#yPs5M=&9_IK5YZ!9aU~OkBX3l5NyoNO~Cx0eR^Q|wu@B$vpVL!a} z7ActXt!46B#kArJ3FZWL8gp&hv;}k8vO0|2EnbW<72mp&R*ZtzvL-V}*a_y^;N@Rz zGK}UZ3Jby9%f9tvykx#sz%dJDd&HRVMxXQ3Rtc8Yk8Uoc1CpLO;jG~Y_!z0YTM4tC12!xagZ^WqM3);QCjWv%+e9R-T$c?f}>bDglv z9I$)p%n9<8Qm|Z4Pmwt}3vv}&&P$79&M_Rq=DF%HN5dzyMIXY@&egkw&Tt*Cyfji- zHHqRgS>@5BzSYZl(ceXl%bduL;#-vhcPH0!42BCL-Kj+J{yFjP2=T0;_MS~K$IqY7 zVe_r#?Kyp;q243);^>ZHw_HzdzT93W!!W^mbVSDGTg%Y3DYua2yy)$mtE4JP(g)Mq zU{|M@)URR2DR=0Jg1LoU7A#nRt@Bw!j0rQR>v#?kK3LyxHK_wKS7K{ebMBn3R8^DO zIi-!|PVx*3*Hy-wE-&sgXILZ3ZDV2}<%<1PL8fpm)6K(Fin$9*@s3h5{d6E}H;Jm|J zy}q^H_Jf5OWacn~dj9JP77%*jypOqt7IK5be;b&?iZ};zuxZTPIqe*n%gV~i&dRdq<^o3eV4t09FhmVJ z!TZcLFo7Ngr`&1GaSI1=GKcrifw`G8XJ%z)WoKv4vfDXxzO_sq6?(lVe;b&iK7^w= z$2t+tek-?gnOT{cuy(n*xd^8pE2*~-y%4~1J^9v^c%gRWOHfT=^n>+VHJOXy66g3F zF_$@WW@ct4OdWhMjR`lykF8jK2B+2Jh5D_{Fgr?;XdVL0p;t?%jLijW?!Ghfbe1 zeR@?@RZDpnnCIoMUYTjFr&% z9DgrUo3^#JwUfD|O`bey(xi%tik9;JIcxP{?W|T{cp4X}dSe4~G!G%LbH0}e%mKAY zX=!ZBnQJNUpOaUoi6W?Xp`Nk=OuryZS!AX!Ts^h=i@I|}PBZy#I-+0nR&ND2!vKOg zft~aHb6{@b#EGe?lTuStCrq4JUS5tB0nIQE=5?!gSuKcoMaZNyX|7MWm^t?UbeO`$b232?5wq&tMUW9Ph2jOSOBnIr7#^dTm~$icsI zDKBr4eTaIUnrNk&`&L)XnOGXnt(ww+Q(AR$3(s>DycPp7N9*Uv+Bx4phxS|=7wSf! z57C0gN|dHLRgcmMFriJ~(l=pFaiB^gPmW3-((qjK+rTg{UL(fy3xPSTixZFFIGMxy z=P*7ud2+foT#}Xs=J5VG&oB9HjzMn}-E5G#8LUN=Eioq+rqkMV)}F(+m%v;`1{)1d zPiN$vK7HCZ_vK-wT3}AG%^oJ8Ih;<++3nf`5l-gXw`FHq3H^<)` z>a3-w0nB0jFP?S~*g4-n2j-?uor>u%2uvNA^Q~oS>GjWTJ>3zpB!? zb0-fJ<jveuHwFUPy^_w9zTAZJvz+=@HwA{_~esMfEo!#Oz{2S z($Z4&UNIqY${`3N%SkTy5y4;=u@nV@MNoXBisL5=Rf+HHY&wJ>b~Kj)~wD zhwv!aMnr44!;(RY#5nd#ih1(5;winRghQzIAyoLN1=NrrfvO)Xe-ZQg_3N<| zn4Y$QXw0Rgq%7XK@9m-ullc%G4GX7Ez=Xtv@#Dsi8#gXxY|7ZNV_$d3m@#8ULq?6l z2FDNpLwe}#@-7H-&BA2Tju6&EVLfBkHKyS}HX_KyF&fP#efi9=o84JT$ylXs_^)aO{Nhov`3A zTTmFb(9oVXTae8b%(kIHp`qA;hK4Z>v4w^3Ke6RI_)|N=4u*w6L%E6_`ZF{v+!ihr zX@K?)@69xfX+(Gg(_RtU!SLR_Y`vi3PyB=ck-a0KQ4vwmkZ`A!tOgAlG?>efAwz}^9ZFjv!}uObl>{XW8Odc77skMt*HQkc6jTwhe+SGQv6H0xTpz z28#&eNg6{5d;RsX$S&OrNEK2vY}ingV{*TKU=Fns!IWrkMBtNWD$0HF_Ru?VWybT}y8kaH- zwM$hCjz^7ToB`{RoNq!6!tV)|BJ3alsvp?!^-zpFHoWX`)-=?Nzu8aRvN1cx=65F$ zVa$}0!QxlNzYePEfIfOO(xVCPGL|IgpFCm1hM`=*Tt8;#5@TcHA|s+0bEtdRA#T_R z5nE4NNVgEKp}}2)L%IhCb!8gdJvbN#!4tv9@Cpg;hJ(Q&-GYMxgGhq|gK-u+5rIJ= zREv%8(2?#T3`(LCSaZZ#8iK-@#SQ5d9?T7!t#|Lx-pup{0Z?GdY%u<0hB=rahyW2b zZWO^^I5T@}+Y1_nohYVJ&}e9{=;+=tF}(p_TwGLKLUeq5bV6cGLSkH>K5>1L5|fhp zaO`kL0y{3iP8d9H^9Bn9*$$52D2c-;3P71@bifG~QTQMP6^BYhg<{s8ua09YGEwz- zP4$G$dpf zp@VtyUSn2y5UejOE>3~na(GDwABkgngZwF*U1Q4$7;o^}FlCzQVprt0TKH~mx}2b6 zmnDTC;%Q;K{7?2T-3dq@QZ-=Ut9|?S#f=^f_u4xW1_LI9xj$}oz#L7dII!d7Y4Kp6h-61XIF3P~-9xd@DGbFv zu!BRlb+>W)0U5{(XJCc&f@-$}&?Ki%bOy69y@Fx+B7i0|GAt4ZauXOC5f%}F9oWmT zNYbbKj+FnG+*a!<=e;|zvS(}4~^ zH3S_22fYSP2M-xEcbG&@ zM!dHgrl;KtF9fGf?Yw3ioUTuOCD2$U@WT&EUmBZ+DX;c{am?BF`GFr^Gl9+p-k6T@ zkpTm2ZQHiR8zmsmHeBe$=bl6S#?nSRtcAlBjIZ;IcI{`L!5%hDa7f;%FLjQzP4fBxC$p@@@j*}klFTvMc$?NdmW2Be?T!*?iEy5!YO zEsH_q+GT~9{@^S^v%=P@$HhP2eFjDLTu4&VxP(ssBRVB-N}refZ2uokTu-(k%JRMd O0000EYf#{5dws1+pZ{`kes1nsVToQhp1{|P%Z%Mu z{;lh{GN*W+jCW5V)5*^fwOL-8EgwAI-F_4x>RDjGaeHf!&{Ut*tCJ_Dt9WtqZ`aWM zqG9)CugRo00h6>;Rb$ldO*)wSXoc@VMp>`E)BakrcP_o~yQsX)zopr0B)Lby#N3J diff --git a/_todo/image/frame.bmp b/_todo/image/frame.bmp deleted file mode 100644 index ceb61c47da9367d9ae82e6347da8eef2d77b863d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36990 zcmeI3L5|Zv5Jk-`I07d?V#|sRw_uOB0B2y!4OnmpjxlR?NJxki48{ELRaC_td+cg= zCf{fhDX@vj$0g3Rl;A3seG$4k4uu-BcvUfJu}^xUq~^yW1GFgRWAb;toZAP3}t z9FPNYKn}TJD%KD;yAq;;@3NwKc^dIBb7|Yqrh-5GxMB;k)-AzW@5I zv$F$+w>Y%VARx4>arpVm*Sb%=DrX0bd2whCh{McAPemNUZE@I>y1bV-6o;9L{)#vh zhyAI`JBmYbn5pQmh(mGMpSrxGI24DOivEf?6o>t(%R7ogahR#-uZTl&*q^$*<8^W9 z{{(*RuQ>9(dqw|_?cL}fUl)g-J!8@jFUDe-7N;t|9y^NF-v@xU-=))w695eP?~688cybg$Q}x9=9DzwVf1)ZGWm~+Z>{U>^_44 z35OQ=9K>rCUyTK~mufqiIkcaC>FnmfMGgZ+HsnD_JUKSYA>xG!%ldq7vAxtP4(%t1 zIy*aH4FWm#Odvx4loM2|Fklg`B3e{(PEf+IvG8JXlv>Uqw^ne71DQj68`fnun!{BJ zlK)ou|4|8rVi?i^B;+)&W368j6q^!<^k?wkEQi(anSjl0bTMIWVbH~4Fl5-FIK-c* zls0IukJT=365krQ?ox1bVqMovRRZRA5=Z3riIR;;{4ga%eqWPbxEWXbCkK?|=w2r-Agj)`7p*|{9#*ImV79}ca*I0%3Z zeSCHpmNfFuPC>LQisvo7?)Soyps-p+APzflSkbsuHA&#ARXvl%;Wcu&maDb-Jqg5K z;_zBHBufmI(}E?BSh#$PjhW)`S~%R;=)sqZLvc6)qT)~-iof3w*_4Pc| z^Kb-=#i2M9ht&=&|6T@-x*p|#Jr8g8uzS}zjsrK#p>A9b$N@PZ2jqYpkOOi+4wwUf E08_{OYXATM diff --git a/_todo/image/frame.png b/_todo/image/frame.png deleted file mode 100644 index b63fe7160f4c3f978f8fc6ae64db0afee12e241f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 738 zcmV<80v-K{P)a&s??)U`*KrN~$+hdWl*{F^0CM}3y8}Q`5JZR|h>$S* zI4sM2-9W>{=I*oVjo){7nYw|R)3dYOT^QOdSbF&NVBmhh^Zxpny9=r8eg4ucWR3_4 z1Q8MlA|wz*NFa!iFxDXM&lldoy5~lmh;+sp#J86RcMumT*8&ubHHcM2Y6pbh&`zp4 zfUPpLDybd^Z+g{?`oX)J-SDcpNAVu3vngyYLlBGl6TCY1;$_?wtkbipCa;=T=t9}2 zDQqH75Dn{2_>B6|%aLZ(SlOf|7sPeP8>9Xfhb~6J)N~gs3PWSkrcjk=dp6bQ-Jf-Pg$U)xho{QYU5}XbGBDZszD~#X=8JcYo}|EKU;+E{h5HdnVJ@Ao z3`uvSGQ2cPJ>OED8HGfDv8j)U5Fz*W4cc^W_H>rmn?~LP6~pdGg@gF>*Oh%5Qnz-F*B&$}AxXa11BW1lbfBXI; zu0x3M@9&dc!5d@JEwi%hNU>NM2RHXJrgTQhCJ#DHQ!G}-!CMD3H+%Y&7|jMthTM@N zh@;Wm!?Y{drx-8sMrwm6dMjnS@iqhzF`8F5Z-^iw#@3fgELI?aAVLB`gam>J2?P-m z2qGj9L`WcrkU$V2p>=2F{Nl3n!X#i@!a=;gxgEG4n7D8dclduRKofIBNFa!iKoB7z zJV*R<|2%L%P<7h!1u;9U_9aYNdxE;@{&&)e{pOIu91#)-A|wz*NFa!iKoB9}KPEP> UufwBY6aWAK07*qoM6N<$f;zQY5C8xG diff --git a/_todo/image/graphviz.png b/_todo/image/graphviz.png deleted file mode 100644 index 63b55984bc74d5c90af3159f3853c55fcf609a4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 138751 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 MmCc+>maaSg2a-?#+W-In diff --git a/_todo/image/grid1.bmp b/_todo/image/grid1.bmp deleted file mode 100644 index 5f0d3c2b8c5af9f708aec4daed50c609fbcdfd7d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29194 zcmeHPJ95-e5ELmV;0R=79Dtl#kW=P1+<<_y5D^fQQAHKS31HAbSNr+tvuo6nc3P#C z=goim^*)!&YrlH^^xZICFXQ<&Zmy{juUpSttGoB=$;~x2;&tnpYjyWtJ-NB2M!ar4bFJ>)t0y2;GBo<|pQ?gXTMIl|_H(HQBXq}sHPd2=xl#i?+!}p1Ig&uw zgKJd$&-YUvWzob_A`nTSfdErC^Fy~a8l>7(Kqo0+iHWw;U@k6wT{)y0+vb%(o@tp) z*$Fg_kV`1hHZ%}mg21ut#(J*KK1d=HP#pqF&uh}kK5H~co&twFGF2oz*tr%1;TpU9 z`-4O%yVJut9oVfgWjJy+{*At=HI)iEHxe*Tw%4@5R&JPO_DQ*`2_-I`C6rkj&&A}( zld<=+@k$_b3p`4cUSr~rHU3RnEICh34Gq#llMaZ*a#LZk4LG2&t_I2!u$+m)TpZF3 zgpxfo945*JQ6oePxX@H+Sne(}3T_Y@eK$6p5fZ{fx76SXhjfl5YdGO{a#J*y+{U6N zozo3{A}Xyj10pB{NU;0 z7*a9k?QL7X!v+$^K8h4F3&=3)9cY-bdX+J=`2#fr#UtmAo;ni}qH=^&Ldo@DVea$8 z{d0f(pY8R^DnDLMXSdes!*$_|ALlO7V_2$?C7=jKGgGge(_i1qUK?-yp!M|Q+(TRT z&Pu&9EBJHbe(7r*=k7jS_Ufw6;%jah&mM);?Ej_|vV6(DOLaMaFG@U<$gf=$-DbFE zXLq6g`;dIiv`m5`5SWbMLQtI;{B=(rWY$Eb5WpGxO~?tCNz8ex9`qTm0<-qra)i-c#CHwby$l>dMtmU(r*l z6el?=F11SML}F#PRp^7gYuw*V&`!>i%3Q^=`qsv|$-CDo)~EMQ%q$)aS>YIozi&Y>0chHC*_0-KVDHW8b~@u38u|Q;vIsjSH{R zw7s`3f9~GLw`bqp`uf@>>y(s!Z+!6Xn_G8$%RIb To)moqCItphS3j3^P6dymeDZq!7SL6ig$41&>H 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

    hZ`*R`vyZ1l1wFWH#~&8k0zjm}l2~gq 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%0Aw$#o>Gi;hEjc4~qfR4BtXAR2v?Ki;G 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 diff --git a/_todo/image/label2.png b/_todo/image/label2.png deleted file mode 100644 index 4865cd00d6c4c7fa238959d097b063c876345bf3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 478 zcmV<40U`d0P)pF19L)2R0s$N+u={(0004jNkl z*6fgw5GN=>fneFOTj)ovJylk1a2mhN#BJH!uIC1avkWAtXwEXwIGYcq^RixK!CwXd z)#2_F3+jHib>G^y4F~mfJUDKT`z0vUG;Oa3pgJTAsDL`)9Yxy1=6P%=o252fs*+M4 zhcG`=nop^nP&+#mNJdY3N$UovqdmZNGVAQn2P#!3puXYJLO&;nxmnIsK1s98&d5up zzh;j#LUqtQE*sr2TR`QCEa_wVV5u*OE-OIOiWX4nPg*El5OhStYz^H9wO^J*3apxO zsc*@cimWOxDP^f$7M6}{0A>|aM5tPJ4DD)lrlC3clj=%hHZGwWaZvq!_tangv!@5n zW50&$mU)F!sx(rqW?_39wMw=uWCWwLQJqzHQ!ThQL<$lPs%BZ9&I9Ub&#B8<7Jv$< z>wBL#-)q7}DK$;ocMJDDb$!zN>yBgn^I9L&Pyuzor}9Y+2f=9up4$aN US+2dDu>b%707*qoM6N<$f>wvgYybcN diff --git a/_todo/image/ligne.png b/_todo/image/ligne.png deleted file mode 100644 index 6f1011e69ec0c948ea983afffdf71dc8e0621be9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 106313 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

    sedwY$L(b(8{$L)8#^2#f_cfFlTrCrx;Zk{%K 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%0DotsM~!m-LILCk0bZ`b$b6-;s5U~ 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�PhZZV&NeB1m&$(UctUc4%OjpUxxeEAdC8X4N#v?O_1 z(?c`z-taPO^a3>Y+uZ9_-vcCzhUybIpQU1{)^yvizBaDx?VO_O8ffj}YPsJ#h<+Nf zsuHTd(2~bN?ydQRRip0S`46v}HrQ$w{Svzh-SA|cq!h2y>X3XxGV0AF|Em>XMCYy; zrMA8J@aT*PNGFkx+8b^utRh7b&)>oc*xR6v{-&(11)P z2_~Y`jEfg^d8>W`q0u=obQjcd&C@r*j51E7`ka0~9w}6bXRv&1t^LVQg&;9AiVc=- ztF{(^c_LwWi}Je8gd+ZRok>!h8^U(A_Bg@sG%-u}&pw3xJiEPp;vIEnG(L9EFo2;Y z6OyuNEwU~usIL*=D3TToyZc9oW!81)4JQRtQ4s~M@*k;Yu0Ew5MlRu~R$`~&V{x}z zKMJEK-+u|Y<VA?kr}+Bxs}i^Y!N{(h;Nwb?%V zwV!$;@3ZS{*r1JNyOLR}4&=|P-YW~ZVoHdxPi}e=V~Nc}_59EH>M_P1>DrC=(H=Fg zi3PlebW)37xT@-`Kv?$JsRrSje z{bN+m#^El`TjF&T6XnFzlVZ}8yoziIS{J;B5$^kqp;5E)=M0}e>1!!lUgdbQv6^LX zLY*6qt?c*X6y?VMaqbcNSzZ^BrKh|*dWu>oLHN#D^pWFkvm6U`-e`;mX-LbIRzdjf z34ft`j@5>i+ZK^syE4c1r)P$UR3d`elhS04t{~G%INVw(MJb5j$b0Isf9cbnHOKh! z;dGJI%s;goIXwjpu!H4$3b4e0k_?301K&n^zI?SUpKXq({Ez5A=}q1mpt`QXct1CH zKPQ-;HaJyV(U{N>YaULcEzH$}>8tY& zUg*jo|Cq4#Wc)R)O)!khbmNctOahcrfMP77sQD~Z%hp19D_K;t#(1(&m>(lCq{i{I zuA)wj`xoR`{Pa52X07je>NRcbuJRtQ7!!tt1yHIeP{=uIqN2EJzS#a(*6rS(h9Vyp zPGaAPf9h`}Vu7Gs1yeJRhi9^1I2}IgQ%h(R6LUH;e~dOvd-!!(T&+o}|FiD|+m>QZ z^}hO|c(;AVcQFD1s1WJWy|gNSb@~@=7(tovHZz;iAk!WhKl!0Hr(&w>Gm~;}@zwEN zLK6(BNd)}uY~dzmZz$TZfW`%dwrk1fu_Wy+rvJkX2y$`&XZ4c_!&x=;O+b> zn_KA54pU}yPY?*Wr#B`g16g?G@AeFdendyNn20Fat^B2g}jzWwm zA+>iV;i8|imru=;q>88I=`P_O%`al9DRP=;^DQvF9FFljHB_acn{v8`fwL>JPZ*8i zviz|J8}2XW>^}&Y36Vq|hPB=@H%7#J^zG$Ac*)%L)n{gk%Qj*AOW|T7UQG#^-RPF& zV{;e>L(^Utp?}|s0#1v#=UE4D5WfW*53R~mxfnsFb(*5Yp@jT_DN4!Yjc2Rk_iw#) z2`-F?D`fpG)w<-#ns&oQRW^!Ptn)2eK`J}DnTGf|4bF2SeBy@VhzFaSGp;T>i_0N_ z7-MksW%*%+%kF4ZlMG{^RnGXVuI|EZ|U$gxYJbNEb^JFg5Ee& zDItemF&VZmqcdrwa+B^NW?HJRWgNl=_&!s)KO~Y_;C!s|a8Y9?NJD5z*Ggi0SS$V>=U8Oz<7WemnR5>z2X&$GkX_4zNzmTb@T#@kBw)I6Mz>}@s{`{Dx<`%P522CX-| zU29nC+w{^$Zpyc_$|zp7ja@EDmZPGaI@q{c;?uz^yH@qR%}PsOpaGrw?hz+5vx2FO z*5>io&;>?$)io!I`R@VP*Q|M*)_krA4VyOk!G~7|XqBbgu=XR$pSigHn-wQs%twO&a(fOIe_QBzu z1-1ecdh^H6#XNQeL{Q(@Uz+yZrgxZv#)Jm0B-clG9jy9}{Y zqi#ux=F0_ngwjvCd>0y(`{Q2px|Sxz{fe`>;t!^5Lv7j7GB+LWIzt*8C@?-^oQ>K-cxOY39Nhh}vdZkdyc#`ybS>AB z*o*$0uDd=p$@t0FTCmRV(qpA>-q@mksd7?FAb3)=MpN8Tgms%eO!E=9=6BZ=x?m`; z7d$m=@p?E#{`Mwc{MTK=$JB!2Rr7ge2`be1(BI7L`vafGa)WxMWOCQ|*6{Zi22RUG z@0oBGDV#RQ-KEofP3z3BZBE2~-iNLnvSD8n zzQqt1*0yU*ao~RNUOYd2Ele|$qkg@1K32|aDz*HiBiJN!Bc6dhGP5hC$7Y}V_O;?o zN0l_WWSKqXjAWZn2zqYFC%W6i-um~Ju6YTnxzWqsjB6hvql^ z6Tt1dYV9kDZ0O^Txvhd=6Y<+&DVEosg-RhXG1A3abVYWoo=GA;e<=CvfLNT*EuY@9 zVr$e>%L*>5a)v1X(cGUG8%RXDHESbfD|}MoCswulVR?0iY?!*~>ui{j8*|oN%m(UK z#(iO-#M$ROT_U(%VoxYgy< zhZZPC%9PPZw8f|t5E_iY2)H}Tox4$4-#OB-U`nq(HkSEe2HzblWb&N5yf}WF31nOl z$8}V1eER1h8^E$iY7+6F4-WKIwUb)CVMQa2Kh2{JKRjQZ-Txh{RNE4FM$LxDd=O-O z^w?WGpP|VoSVn%bVQr}o*>Puw{#x~Y8Up$KT&Q<-Wuyn=y`*UVIQ(;YwlwOvfxNTl zL>L{E?qpfNeNx8K0B^z1E|0K1fq|Dfaoo+-1v@3~juRRhtzW0Ol<)Y_)7%RR*VDqG z^_(9l$Hoy1}#gK@;XFb&A*L3v#Dn3b70_|36LqYxm!_T$jlPUH6An5vBt|xL-9b5<0ryp zUnP%-?c2x6nx^m+H=d=>1L|xofiKr6Q>7P}OC0Whzbil z?#E4*vAS9qN0HOVnk%E%{-dB~wjho|gJ`abaA=jb5&heb#D3M`bAF`kcY= z&GCl|H5D?un^gUgCW25EV5bI8rU=vsxtm0K^wYw#lydVjLn117q|Kkpd)$pRWH_Cf z;0}CiqsPeV>5>ArkHET7gTkwnu3dLCs5+Sl6j^U7XCZcOW*|rtA!_n&cS8Cz2>H(z z?W|Q6zRM6Gi_{UHs2F_tRicO}>Fj$7do5g+HN=`mbKi-t${RU8h+?o$d2Osabmr$6 zZ!{|s0HX3sSKCN+?8W=`4CMH0@CC6Vz`^||he?GL1PIL|GetQ#L*bknAV-*nv* zH+t96M1Y@K@b=65)&%QVMRIc9g{`b(xzSc-s*Xl$jjJbVBaTNc(~D&MySt_xIzN@9 zp09rHqmXaHj?UiQ{gK9!Q{ZJdVWcGOUL39U(`s;Cgkn#|iH}w%f;(32tt5*YZmLkZ0wA*n>4tq+@qi2)1)+X{^nLgl=E&Z_uwn9w}RI*p+dV@HXrzz z`CS8sYF`)iD>DwfFi7f?$iVrjR6hJi^0c|GZPCQ+CfoMjqCQkL+6ki0-8Ufd%&uqB zrLn+2%4+NT3kJ`SeO5QS-B;JUe%s%#n~Z7Cr5C&beVx*^D-kZ$`=K%{Nn}qxWwSdc z=ts#oI*O>uBkh4oB)2?qWbM_*Wa|Zx&v*MWJJlz?jF%3^_Eh)oY_fgql9J}9EBE{Q zplPaune}SL@up)@Zk%7>RK2vlRaquR)zh+Q!7Jt_%U0jewM89DGX}9bcxu4ATdiuWOk=St=2JeYVeJ5x3ef#pZ7L@OYa;&u4=GX z>fce?N|rV>%BpJ6(VP}aVA@v}-{d*1kK}WwxygBeul(_aF5~(*aXG%CL{NmZnL1J0 zkI7Xd%Zlz)L5MLhTL-9_L%^9R^3L(c@u-cvf}^foo~qlbU(hZ9BhUrmf; z7@)7ty8kp%Q<<#tdS9Q6;~=T$SW1YWM(%)l=d`?x+DWimy|vENx<)E@rxP#BLAWGM z#p?d2DXwI{_t#8?=YFrzR>$8cQW{cel5P?pJmFsNm(BqX_+8W3hMIKJas1{ z?Q5~QqDqkzOuS@CwWXzAh^e_6cTDx{xv<~)R{P|D-to7Pn1IjE^G-JngX_Gu9GvW! zeYXSStp;E2cXvDap;}PX4*7<{sA5!5$Uqx5t~=;h%oy@*uhPZGXfK}VFnok*6&^PX z>H1?6R#Rl5I{377HY|a!Uij9Uz^BJVH#Z&(sVU;UW?$g@1%Cz-dl@WO2{F*hNbUWk zS2cvE@el0|8nD7Aqm=q9pJtp*sowliW*<=X$6maQj{F(n@}ZvVhJ?8vQvR9-rFH++ z_ijJ$XBztyl=?Akg_dX=Yg#Isd-+7iSy3EtSkT{dh!~Chl7$6-Z`v_=htx6?UBm1G}EBo7}>o^;>Nn0zLi@TS4s_Y zNgD3)A77NHZg<*Fo(^X0iR`-R+ST9pITMh;rOQ%8u)e9`WXO`n?iab0!OjOo>xh(m zXR%yCnoiYuDGovSHFDF(s2bkqc{3Kb8+C?0F%g~>h*GJX)@~`md*P9 zR$Ux(jt4X~)K=VnFyxj!9Mb~FgFxVIe!?r)d0n@D<08+mD5oRx_qUS11UDm$XpZML zot0BXyn&nPhPw5kR?b__PocVvUQJVVr%_mqbMS3M4g<_ueXpdwP>s{{Cvl`1A+ehd zmqI9^ONu*VP7{IY+T+s2qps)(c&0pyRYIgydkRKeZTDU#t$Uwkon@d5trIdrts7$V z{A`Ac#9;f8=gQCnWv0SOFGo)m!nvworn+1SnkaHjA%ozK&`)iTq`tnAXq>Ybkw|CA z7~A^wD@JCa>6G@g@8d(C{Es2nzYi;uHR^QW=&;1nGjG?yl_DwAf-boV)d*=Kk{Z3y zPvMRSb_<_U#*VJJuKEo3Y$t~;@gllKa2rA*Amas7tIl;L>3#FRF#U@GD?I8*w1a%R5K|a>tquU z8>zzuhL6KyH5RX_yT?4UW7{9!HB~<7vU{zaV-ZQQp5c6FDOml73Yqp#&Cdk>B`LI2 z`f)=EH#7M}SEDe*apdbRywMR&{CfJq!P5GU3OS6|;{@^PNh&Sh=U60dF_U45ZAx0` zb<0$UbFQh=k^d6-vgYw{wt`*0ft1?WA@t$F@2)icm&h+gro7CW5e{cv#KJXLPo1x1 z!qO`bc%u@d<)=)j*9vibdw*uuiN=4QC5*aP!)r4T|2@2J2C;IGrO>sBm3Zv~YkyPCI9iL&%qlIFBnz2_V~)=qHbq{W>DE8V=ec$*xX)>tmuU_t# zDzW=#r<2*TzAW3)Be{*+%AN!@YbiyG9^Uu+rJS2U$CR!xQSDNS+Y)z=v$v{{M(Z)B z)}}u_=0jXiGKGa~YP;T`IP@lmZLQUk&v(j+vjAErRfXZQ!{K4S6*B{x7(DnvJag)Y z2x;u7`|mYa)6Aen)7X#fD;Ugj=;1#_^5}n&5H@0Y}_mHc#vLY;zf8h6MpG5>je4iZxkDy$3eZfHQ*=6H% zKaJyCPW{b*pk6^$Hq>-7g^N=*2Ipa(rHrgZYIf`>r`+AXlZMvJr9(@fyUU)XY9A4Z z`SWI@nUl5+M}z3s)@V~R`k~Yjx0zda^3R}tn$}G_)9H<<&GoG<_E+fr>k`|8XQxu5 zRAB=tV(W|I={wCiUM(kWTi-ccb*=a8IryFYE7e3=W!i0i;O8wxJapz$CD*O8j7j^H zzjlIu(>3FR5;==x;VUyOx0i#BSiy4r%jm^{oe4W@g}oQtntGeM=`*oW(*p!EEd++P z%aT03oSKTy-Bu@aeB{iBCBAa>z2eCzq3zu=j#7LXO2J&{W`kpwFs3>V^_-ZW91~S( z`!2}bK$5Dz#a_C!RXX$e<%?5Lo5z+gZUG}>Xe$zZ*Yxcd1#_P9N^VLk;jDWLLD`mo z1&_-j;R^lW8KJ3)F0#&TXytInqA#_xZ!B9NSd`d=%3>+43To66aE;5)B`HLl6%}y} zlyu$Zk@kpdI_?nJsNZvM(2gbWQnByVh3>`??KCMRew~SY_A;PtP%T6~Mejs6$l=I< zj)u+AeNw3K+tvozHR{N6MR%7hrj4k2=158+fJ%pUfKEip}~m-_}Af5K5|KH#$uSs z1%qVv^!-1ol(i@RZRZYK802}KJ!DbiS3VLsArX?JJsUk%aCRsl(vKx(<~@>xpfXN9 zcp3ldVcSzId*86+Pf6#+ORAyKJ^fbY(FSaAY#CF$j|(-V^G$qfnX)@RAvo0J@iCq1 z=#GhLAD-RMqaI4e16S@YY!)6gvsy0NKYLbZpc(NN z@A{E4$}nxm(%c%41VnCu-5H%aGwuAlkx%%1<|oNJeR1>D_L-!3e};>gCd;+1=Fkef z3YvMc@T;PY7;`;hmZ-YK zeM8=GCF4(xyAN_k71#If@-nef;Y$s-gg>~n#do>v6tH|5b2?tg@?qf`&-?Q&K8IIQ zCP9Q0Dnof$HPmd z_Zu2h_0hK7cQ&0JX1R0nEC*+91b4odlC$x+%K!LM>%!@KKOE%02JkYM6evZD7cCSiUL;Vgg`!1@OL3>T1S{^exKrGUG`IzK3GNWwA!q^w z`Eu?(-~F+Z?ES2jy`Gs_YuAW&3D#~&!!w`5<9}j@<*Fq#xHBv7so%|}e6CqP|^^H}Pm18+Ew%*YOAAbj=5t0&I zOt|s=eH5xFmnt?I{-sjD&B-rut&!yZkkleC8Ej*#@Bn$bhk*T%yO7-6-{oRXYi&66 zzVDe7##Zk-A1$K!5;Q|(3EMB0Mu}y(o3~%xd&r)i^n}M#il4>}&WB>=Yjhj++8;ujGaH#Ux7-j@G6E z%d20D^F@5zTF$zOoOVT;in^(sM`X>~!+y?-3>F1R%FgJ6oK5jf^6_-hRxZ!#vPy~D zynASe-&iGFMy@!gd|(^=sH{Ae!lmEfxZ2{d+;Fno2n~38X!V4xp)MIBz}13TJmBGK z8UjG9;PbTo*dF|ytLQB^%;SF^tzC4Vm^5z$JaK1tlJ~wG6ORAltvLM8Y#?r6N7g{) zi?P43{c0Pd;wg%^kE9Qs7B;^Fpyf{#C1`+y~mz{DZ>cncz1;kPl8Ko9^kx~OEc#mi1iqT{7{yS?#jF^}VqPQem5*+eZ2hs0%x+Y%(% zWbUOiBkHNqjh`JDJz9>)Pc3O{$2NTzCLbm6b{SibXy>Ai+biN>CoX5no@--|JlO8rKo2K&W}osj_o>Wul@ zIgocP#2@}H3D*ZnGn02z)#`Y)KlulN$LRj5>(04Lm=W3Z@}NH*jHO9vY256Bo%54z zL-)el_viAa>bp&88H^WrXHOjW8g=R~@S=XdAb9aBjfQCuwwd?|?@C$r7v^(f#X^Rs z*ynu=kq`2(&2I>C&sa?(NH|ON#W_1ezl>^9_zhqQU`)tXu9S|+kDVEeNS?p^MEzDR zIFD5pQq+ZW4oC!0F_&X3ab^fmiM60H0^MF8ya!wxjGm8PDP2-cYve|({Sy0p`1bs@ zEPUVmMC{1TM(TT6%rA+H;L$Cz&X-8UN4$G4dJkI+XXd?jrY-~P+04LGQ!vFXu!<;L5 z!KtTX=Bmd|3bzc%dmMU)xmqWrE#FqM zjA{Z{_gIql+$2)!!s7-Z=F7vM*QIDJd29uL?DIRZ4AO<*rwe>=y3BeVa5tU%-g+b* z0Q4wP$!6YQkE)x=-^y^i_cvH(%L)HN0Lb?8?2AfHSi;B0!%N{d^dZ79A4*`k!1TP> zNp6bl=qoZQi->tTFX-+L>b3~Q9r+a^U;J?`5}$~sS7wuOlll4Ql01Uv@$Y{S)0^)< z^$(Cs6kxp|dm)20d;imJ*U(+5lS;&H!|msXo9C~z2Uym4qdW(@`-wTQXB(tg38-2p zC`0=hm2R!g3ZaQE@lwKiO#SQD`PS`)D+OYKDj&_O53e$$ohA;_545y$$RxB%*xWxe zd2M>l#rh7>-AfI(7y0Kpn8y=izC(Cv1fuDneSLU`_(Kk?H=^w+nt>@avw=T<=Y{t@E+F_Ub5zud1HJ0fGaylIn8+JHiO8 zoeZ3UHA7}JeK8lqcYwbDF47t8l!Q+S%Z-tWYy;OzORCjEUMy+YQi8&=#zjO;R%8e6tUqf?E$)x5nh>#n0Ph z>`MyHG)a1dTm*hT_bch#A<&0_$<01_5~eVg8&Zl3bmr)@fe;3&=m>fWk#2c;)4yG2 zguHd~G1N1}!F&s6^um;!ct(WZ*eI+!vCw!=&-_d$ltI~NYM*E)YJLZQdNGJbEEy{< zKf?Av=L^$1omBf?))PVZO(N}aLZi^EMO(}JbiAz?n7peH$@Y~XuaK%-+A~6ub0}wa zSU^{j$rivOJq&n#Nu2`gNdPR{t5aP{+1QWnrBlqNseTanTUZ7yz!C&QA{27>oEg)u z7IWxRV2g#2Zx2bVew#o`KVvY?4hd9d;3EXnBKS7vZLV?-6*Tz5@0QM-XjIC++4&%q zvk^z$IKIwqK8_WH>@8{}eSZq2!Y1}2{5ksEVX2PY>*_Y;;i83;{jjcZKZT{Qaht+( zkjF9Cc!j&8DfR`Ig>{bc3TMa7-MuMux9epS_sX||RVkWYS?f0e3miFwDD}}^_M!AQ zj`(XU=6k%+2sHy)WxP!j*ti4%-@hHbeMEG?J|6{5X!Q{r%SSTHB_8hu?dAnikiHxX zF71Np9KZKGU1^1ZsfB`dYpozzBCaWT$q_cK6ATO5*pX# zDcPfK3m518#0OAV$o^IRhLf?x24>sIDL$DbB&7W=Npus);k=0~ zwjE`=O!#t}S9~T&mV0u0NEL_cTdlHTm*gZ8>NJF~pJMBgI6~~JdR^ok-_|hkL8mcT zr(lBMl3SpABIloI>Uh8G@FN z{&+bOQyfn6^JH3$m8FM_JzRWlI$vk~<+PT`v>d)^t~UKG-vO1AkCbQdROop;d5G^j zZRQ(pRgak~^*Yu6Ehp%XD)-aPPCR}<3 zAUu25r#N`HNs_Acenm&4P+8m{WtcB=8A|?+n4E{T06>W|&!EEqV|G-@iJ>GVk(TUs`W^JLaED2v(duT%a42ZDgba{wa(*o`T z(qK}z<`7|?x#_v1-%+YZS#{Sw8U93JpAx&UuDsYi<-0Ikt7B-zJYqiAe2T^XTT2;MFGvf^f?u%ZmYYM$cX@C;h|S}1m|a_*8p*lzlv>-bE9_w6V27>| z!COzlgV_cL{Tf_K>^6)zbip7gsbSd@5;m2r_unz1(DyMN@61OJ@I2e3i{wHFq_H_L zqi+f>+{Niio?mpjSb=&6s1=?r)`P=ohi@>=;&0ZOgq}sl%J_b!TzeBL)L?@7Ojqm| zZfxugyYC6oU>t*>+?q2)*4iXk;I~9Sn(X}_-~GFZ3*Hz^s99i4Scpex%BN}g#PQeF ze}BWcZmn-?wtFb$&0(#FMuuM1%2O2{K$s5@wG*#z7(@~6P__R1n0JW7Vc(dLjI&{1 zBb&U+8M_~5;CAOh;o_gLF;+hqDHz7#=Z+^i!{Ha~pX-t=Q8}y4cHy9OSNAQK`~Y~H z!v-5lgP22(E;TLy2MAesO;+t%9qZD!BV03Zt??V{ z%CseHs1R9b*fp8#!p!0X5PSZhCw_?noy2F$=$bCWWw?E6<0>P!ziHmy>h(ZCfi~k zW*w&}ztKMbs~dyo+7=e!5VU>B>&$wn2mxB?xG#4ujl6JW^b0Tx1 zUz4lfxz&@yiSW12)8CKF~1;c$CZCGQJXhl#4fG{3~(c z8hh-Fg8(uPrZtY_t~Un92k;(mJAKZ%_dOn(CRvjJoUcMyJD75>Ppux_!Njg}p*IN+ zpD{)Ihm2NRcRgc?(f%UX8b(DLTn{GOi=1e5ko`YxSGsWVWihsd-M+jC?Q~#x^Mhl7 zVl>X1L@Dknx0U+wWe5!qRiX|JZ}Gm)3GekMsBWw2x%rCL*5(mcoz3r+$L8h-1=-=& zy?$^+K%D}`b%l^B)1LD#Y=bR_Gm|uTH(k?%&jWcfi?7{bh=d;wxuoS2D$i`-Rt0}z z7NF4ubu@T9y>htkVj_y+|DlY@^d*I^m%`0~Y48~U+s4!&CkqkFw3&O|3RAqb=oZfipyjNyogR6ckK zoA?Pc8$!o^rK1Z&&O7;V>+&8I@L2g@?ZgmuWWhI56D4mh#)-yb0-i?G5aV$-JBx2h z#tFsUJvz&3A5^kWfQR-ljXe${@8n!L_GuYs`hXKAv)vrgOwTX(9t%8>IA7Rt8qs*% z)B0#3(YVs>+2|D!WaWDDwYcNQ>s`d-{S(R{$(|C?g`b1MgH-gF{V*ZZ{67j@T7wQE zkKat(1i)*LiehP$Bt5nVi6^#k2&ixm`&GDML^Sc z$q$ELLI9{!H(}sSM3)5Ax!4%Mr1lrc6#*lU>J)t3eT)n(VcCTU3m+iJ>G<8HLUYH$ zw_V{O2ZWHuP1{9Mc*nN6v};@9Zk71kzfwk?>M9$xTeKJLnCJC-I3jE3ho~^6BF7^Q zR)6hd1eA!#O$IU|hZ12c%_OVZjDbu}@9`MzS6g0xA0g+|3!45NnuZQ3oogkQy9^kln41NC*#Te78^MF(UoULg|k z@LB&i?d_C(ikRE;i}yD=Pnb9m8Cep1T-w{;dx-O2d*V7zlp0VW0$Pj8rYuMWjb5uaqv768$IlJ|Qpss^lgG?@C+^oF$*;3Tm6z1@ zTP+gWdWUh14@^nd=tV3l2CeNoc?E}pgD4Y838!h^d56ErI0_>kF*SSjLd^2Gv~rbK zhT3%^Fc=FH-**bGR=9PvtI)3C-1eAv=1MheLW4FJUWPG;p`;oJ`#w9cO`h_tGmU7O zAPLCn^_&s-?R0Y8CY{cQz#48e@3r>e-bND-28)s~(1+Qm3} z*vH(8<7vj;?pN14c*Xi%$H1rl%>j#k}052(uZ&@zmMqJ@)64N}h-%0T&P+(_T73j;7I z1#dGw360u0@8`hReha8AKX4boSWV8)<;TA3=tsK`V zvbbA-=f_ln69FQUgAs)`Qzen_jR#t;+ureL_(Cob=3c7dFeyrFrmg01rRnZ`HCYbC@${Dwxm%;Zb@H?YV8%v^EN?Sq0I^B}XAImGdu!K~sBdeHl1 zr>ESfGZy5upZ;^u)2U~NhF*(0zJ-MxuG%Ve?Zb8NoVU}7UPJSbCCU36P%kHL+T+Dk zRxTiS`mR1pf33^!xFgZ_A@C$sa;||!pGr;!Fj@XEQ2}hd6wX11^%l5x^GPl`8d^bWTDqfoAX74F zIq%<8!`judlmP>!sYbq4+SQI0MI*CndY~8?1?N2SC~dOR?^=`UA^*(6s*%SAB?{96 zbmHRAHaa)H;tW2-WdD3TrD^DL0di|La| zAK>qRj`Vz^Hte(q&&(Y9&kTsA+>we^4Qf|g-Fh{@w`HGe;+K8Ab?0mU>SH#3Q>eUA zjo-a7FB?Pk&<#(L&wIcmFyyl#AEA*tuQdN`aH7IF8a2zz+U>Huun&{_?E^VLw zvtcRl#e;LOWV3w?zn8s=)Yrx5%w4C2s{_Yb;O>72KWHh@Uwp( zGXRYyMyY9=`t;N7Qf7!WRiY+be9!)zL0)+(x}wXdvbjI`H?jb>CW_`2-ug1iSZ^U326La zbX`4A0iR*H)7c0a$BSIybu{0Y!Zz6issC_&6PmDzf!9}&;-aJFMkGBs%wnt4%os2; zm={hYIoqzkM>ayCp#!!j4z~!!pHD$qmT&t;+=2a%-K9kq@OnRYwE>lL?BWWS7|FwG%ogE&NASllO?*KP6aZNB^J znLL6Z+{gYEI|Bndb6Vr|#GjM!uo;>`{SHig>|OHIRnKj$j9RNb$2tO7V|z7)IT4Xh z&=x9i(k9jFm9en+I+8M0^5XdZ?o`X^IFn02#>43Xsg4r z(1MMm&s9xc&$BO}0cJPEX-_Cso409rCd(r5ZLa%GX!B48VDW?u_;?c%=A;aFsgjI1 zHVeC_oW4xzD0E3a=EaMs1)O>kUse6`lTKz$$)%e9D>W-*&g15t@L>^(?e079A|rtU zj>hQ5PK6kNSW-qwVZX+lvD)0z!3l&1Cg01#7k0xPywYk1a)5fj;)}S`UKPyV)D7i) z+xvNNVE^tHK>xz#KOpn(Bok=fU~4h+G;(!p<`k*zU<6%v312zZS-Px^J+4o_H6O)U z8n^PlVbawz*Z+2?k23PU zc2bI%-qc961Fs+_if@M^+Z)LpVatjHI)?Dxt$2fghx(@VK&;&NjrOz)3(`2?s_IR>pGR3+^N z{Tt*zvo6q~AH?U*IW7IgCbRSRzeDW9^XC8QK`1&-yt5gQ^!MvH-5FoGN$;Y*5P!TR zMWq{Ostk`{zI)5OM}UJX=$KZcfXQ%&p_tb^dzz?w_k#1nO(>VG&dWILZ5=PxvAG}# zr<0k3U45sM56=9YXS6$-$eT>3xUoK`xb&SJhwllhuWVAonR!-6g6B@Fs}&V}`BDco zJ+%Cw7_o+W+unS1vfNtk&Z?uymt?M$0>4O_IWnKckrSrc?G0kkLunYSwzo2$ZEDh$ zTq9wJvx*ZwCl8)|jo9lxmiF46)dwH@2byyaS4Wo5>(e*^ROoP z0Q)Zw?<)>T<2|Q8faV$)*HyZE?)*ipp3j&*xZDs0hJB0I#c2Qi^vBlcXOYlX6oajJE5pf!>rZOiLB z-iPlCG(T=?M8xlRIy&5h$c^p~p~m8uPLSN&`Mr+&)Six~)IEPh_#U|F?3iLN=k|Vu zzXT$2y|~CGi98%qg$$nUkmUMDLUeAFk2lLyJ7m3fr}-iN9=pxc#R2E zp2yQ}#g3=D9iFGNOa7;*A7}Gc-)Q}{7J^Guv{1oQ%G2_xB$@eB5B;NBLVL~fz>H5Q zY`%)CtgLJe>=!(PIx&fM3?5`vE>m5Wz>(C;jZWpIos-vy(QF(ZIZu@wamV|cuV(!( zs6}4scU(Lp=vG1f2}Sg(C+{LJE&gOg|Ng#|x*b$64%?Q4tz3W4@+HqjiU=@JE0Ss#CcCdtN!X7&n7H~1jE6VF+dN8CnsxvSR<>%qy+4a$NT!OX+X7lkZykj~s{NVMb3eJ_kdKnFm zwEJh{|K(OJYs{0Qgk9`n$l_N-v**SiDMs2aLMi$8WcL_KVMKvTiBr!5+kAo7NpCcU zorzP!Q=vZze*f{_zgqM2d>@x*m>2uIz@TA+f7(o*5ERamOW0fj@G>95!PsW)J9_+9 z;B9Ga>z9~Ug1`SpA5 zd=HGXtjJDI9j|I*7!Ei6lM_4AdU4Yvp3_m%<6@#5QaZ3Uy$zsGDQH>Hh#xcqN{EN# z!@}n%^$|t)nDJg2ozCs7A22?XG=&npx?~KXg!JIiTv>kEpR8HG%Yk4FKN&VwU@aQE z46%qS@C+J#zbh}#A1-I~WyGz%NtH}_@=!6}6_j!9h#Zrm7^#0oD!6Bd({c&b;{M3*85zC&l1nspK zTie31LQSDhMAsjwU>5BlzV=gio4=)R_OkW(^=Qs@(8^&ftyt@w=7~&b?R<7Qp#Icx zEI#LlN#nhm!%5zbGmlUCmXWcfkI{TvdF>|yCXCXIsqZi^qtwo&;4_l@U#ojvP+}#- zwnRMnMxqMj)NN+bNBzjAAqT6Hl#3i`ckl~nzw|~?Vlap3!^VymJKKTaC!)g}z7O6` zHbam>(ETU}!hY20Ecw>`#Ioc$a#Zy|r;+z`xCc&yVu;9$w}29yIOZt&Z=sg%vb`93 z`Mc?OZ~RCy*JGn%Z^z^{-%8uX(AI|=>h8USioMqIfwnG^=iUj|K51J$lLwUiTAD=l zheJnH=$G1}Y;z1@xJ!$bQt|7n@Qx#oPzIzTPrKW-t$iE$8-Nd>**ceF?=5TqXRkc`)7unA-SEoMAY>lwt2ho ziGM&oN}T@osf{8b`XL}d^B3VJzIbu403fT|RTJwAA+ zftqm`C6b&LSsQ$_hNz~IB!xb~8**_$9mk-N;o)zUMzlmb6~oT45ZSlfJUrZQ2c4#i z1?#+ZV7#jFuMyWr^GQkTCqJt69;bpr6;FRY6S3OpZry|A3OcQgw!(6FfkF`hhlZZY zT^k>!OJokh`y&fZSj()|z2md;E>8=S#JM@A=x4T%a9+Q>=G(d`;}6?9_KmM8DA-O5 ztWP}JXE3X(fQrOUBHOrB*$1s??vJry+;vw2q41Y!d|%Usv-< zY!uGOoJ;c=bOojKyz@@0)l_Hts(&#gNE3Xj?_VGv3ncY%Nyqt*i>_NG#B{)%?h(M* z$sue;CE0Z@4&4--qHmZ!ghsPUcDyQ9T`txLS^-2SXNJ zf8bVqI55IB#G+*#311+2%}-)yHN}>A&M5K9NK7e3^$(&?o-5%G$-d3UlDG@6{m(Cy zdt_df%b4@zNA<}ls_}fv5P%oDQrmpQ<753iAi4EMeUo9{LpeTS1Yaebx=OZeXD(ezGvz1_?I4I*m~P+R zmT^0)-)x$b(|_){ZjA)d7A^trLOPBvn55vT#*bT5>NFlz;UJJH;4e2fmp*oAZDCz$ zAy!nuS-rMFOzl)^wSjH~_U%Y&k2R-G#~(DdvfvwH6QySlJiXqC+glS;Q5yj3l~&On zbF6O8%{a62m)c$K&W}@nMfqjyaPFLS6R5_R$3hN^Y&UIQHISZ5jrj7taup(ylxk$w z)UYvouKeZvw{q#q%NZBSg*PS^dU<#W#h3JDdKI7fok4nc5vm7Ujq-O!i=<46}0%Y(Fl+$ah*k>IuhI9T} zq;RFej)6~l;eh#7RCmuOmFYrbNF3Zt+eiSsrv;pV<(ZX^yUmUv+&GP1LND(D*HNR0 z!$mh=38ODys~w3MQi*fGvUM;kOkold;SbvZQt#y4JT_)?qfk#`?tO3k@pp6;Jf(Y5 zT{Zuq@=a8cmC~)rLq20#8NN0rj{*2ET3*c$c8r*bi*BpeKcj*?@nmbgY8@-5gq$0y zO_f{fi*;&G6{+6yHTKwh5{%@T|z$4nq@S``8&w zs1~L!G;#kP)k){f{bi&g?$8~iAY1Gj)DMN@eo2YTV0Fkz-6Eb&q=Qh%Ub>+@o7*-^ zr~7nXxPlT^GSKo4w-`Cd;V-1RX65mZu5y$u_tr$#?KF0$6S&6@O}OEAoMLO#4v}2` zSrh*(2)n^8s0jATk8}8+q!>;wy;KLPJmDdSJ(sY@0w|%nhDwLnlGaJ&-qIbu)Bp>G zLhb-OiyCA3Qt%n%TFCy?&Fb!FAvr8GONG9@aHexVxB;7}<8duD7t;3Gu#+_|9XTMWU z)c^OsfrZ>c;r|pFIn6XManIBVMRj z?(Mk5%HEK*eEgvgdjjN~^R-2wy%r`e15vh!q8} z(C2pP6189Xb`vMs%3CC$qX-V+bMvZVXa(!TpT1kA`?X}BXNln99RaHMXYJY*kN3MU zd{D>5@H=nfd=TmH*p)kM9{Q~}M2l$KFMkU7JIA);M>@-h6I?eg)r-y=Hi!x>pNQ>M z>P~uJWLkmScikvEwBCunIMCFVr?rX}U2ext9!Sq}ceWla|&x*)u65m}kS{fKU=PH98 zo_goNQxB_6PZwog#Ub zm>^skemBBHo2}5*xHo)?r{^b0Tv}AOd^M~?oJ#8#bpT5%D!QT|l5688tlDEv9CgzV(BF%|5wi{n%r37yOEYub{ z7>Nrw=EtY+X$7&N=uAo7-m76+XL@th&s(UNRE;pPeHc7>Mg5rkG#L0uQ)0X+N!h%G zlYIWz9uk|Ip1X2h%q0-}I8VD%ipgPxb{L$SOKm^~FJIip6YLkGNfAnpDHxFX@(o!)Lw zg=qz}m|M?Y0gV=V=k&jw)^pvAA__N4RstaU7j>b=g_{+L2-$o4Db+G4{|=I`(RK>) zsb&ueae8cEK%y#GxxtR&|J3v9{*rQQC!$!w35shIFVS=Cr_1jrV5_={)2o||`0#K$ z-4lB+m$H&C#<fB+u?A)h9NhxSwWgKMQLavhW$Y*SpTJ znY(|z!To`Q6%h1K)!+rKsBBnX&yR%8n!F#W!oE#6G`yxCx(9#bGJT4T3Y{$Y976|4 zz&ItM|A|Vi+uAZZ6NjmRNcW3lv)>1Sps{stb%!2LtRzc<9cMLNnJ+r}Ey*IVd?+t3=NycuU1F2dVLK1H`-g{@6KkEP~4dQr(S?Iiwh4?H^x+>b$9`noSBQKe*JR3z5J4_35~-+uXB z?vBm6;}yChMow^C2bx{?#)tn5FV=2`HPJI07yas_?|(9p7u#`S2TJ$Kar!Vm?LoHm z{ChVeDA(?%U9Cp>gv_Aak= zrNf#mRThOGx=B)XuaZK^E1bbZkrqtv8~;hiN4Dq;9q1p%PO(Cu*X45!|BYw4b6nq+@AOE<-hQ$f|G;^Xi9M5ODl@+ z+bztzIBypev440TO>NPCzcP5DSUC!gl$F=5XiV>BD_zwUBB@tu*S#3yXQH23>jCS9 z_>^uqS$7DXj28Ru^U_lOn03-q^FAT#_`a=s&8(TJF~{)|#kg zNI?jwjVstD@xB)POrllJP(7at^FysuUu{^(!r?L_?2e?;THtK#0O(5DAhFCuuW3tF zfShB2mW22TW^SJCkhzYJdE@J=+889S_$ioUvTf6IV`d-Br#@+L*{SN}YNLze{NMTRkHrRNo!g z#dg@l68!h)jwGr0p|(x6?x|APa`+yrUJUxpq^gKL*W%LEN$cN1BZ1+sysw4!JiDXT zFuPBqY7wt{$ClMO->I5|N}dDVb^WDlt4m|DbJW>OPHe`FW{-o<>YXrc@$y7T6%C{b zTI*EaSme?Pfqw$)Jm;5!^NP!PnYP(VpWm_;S*immWPF`i6rTSj?>aMZeRK%>u=~hD zRS4dZOFy4OcT#TfhN@BC36Ueo3;SQp+B~zE0!b{tP?jcGYP&&xQvsSEi-{tAsYJE7 zo+b|?^8ia7O?h8#;4X0XlH-2_Cw;}vw;l#kv~kL1MWZ!NL?l>$2-GGA>5x}9g*0ms z^h`(;+c8|Qm=LGdV|!oS@wgOLXaAlc$_z7v;4Qol)%`+Avx zoATZRMZMh=OJgH;>a<25tm}BG+bfngGK4Y~5~cj=t(L<&YGWJo&yxcbEd|Brvw|`z z80KDl=`!FS8znCHTYMjz&h=uf>)Cf?xoO;M&7s-jA`MmbAQSFk){k&1pOoy9X3Y3! z8OjgZ8ib6%UR3qqNB9TTxba`X6Yep`PE8xnL_YyoyB8gv8{il;{pd=dvtR2HR(UqG z20p=#6}P{uR-+AZN|Bz;tLZFXE&9UG-ujhGo2sPvn8*IY2D92pXmp3He5Gg8WUw~x z$Lrfa^OM#e-hv5Cg<>45T-JOx<%Ws}=BE^NZ#6#2-`>Gzr;2m`*(^;SHaAE4Okd4~ zC!I`!^TQl?gyftQa)o3{2ZQ^pXW2EKvOtJ4hnN(12nCJtr@b^O-vCs*&vY5cH;c0h zm1}F0yJVgRPt{AVpmmKzG^76@(_9wm$jmFbj7=nbD!C!#z)kOP7*1fD$?l9lPSJXxK-p@`N!`TEE7(MPmU_950H@1H8qF+)#X1h;vu(or4!oiaZ1gz zEU|Z4>xX!@=}_9%61=sQ2riGvpsx>~Iz@UI?cVI3vhR%8Mk1xZd$Bt`248GNGt2BP z8+$$3l1RQSOM37cw*AO6GHHKUa;GK(c<#dk6<;nS(L4>iASlmIY4Vc*&uGqzx^oFro{pZV3kKO*bM8vME-#%MTbfsg785r}cv0)A`OlQw9GFCcjZS&g7QV{rZNmm80{V>OJk_A^>3iwK~&FLwbkPu zej3JEA;S-uSZD5rS1zz4l*jsjMT0^3Q-C<)6CBkmR^(bRQ_yB=9&l1WKYoV$3FjF| z^^$f4LW}W#PVPO!%h+T6M#r%|`U~d>UQowwhTRYIV)8RgYEYx_)U(%^S-(5AJpa!n zTI0$x0gsDHT%(-jdFgd%n2;4Hs2wNP&+&bQ)-%R#wwz^LPB{{cO66$}s|`ybG$iKb z{<|*p@Q);)7^oJvM(;N0B7Z+5Ya5C9_SO*7ghd~bb7gFC!dp5g!)}f?o4J+$?}Y;7 zSoyyJn>B2M!{b04oV@b{F>Vf8&F0wdILV?7m|8QQB7s>7)weBX8HA5yQFkn|7xAZ|m)*={XuL+=ggpyMGc>0k7i#+9o^!JbOF zfZ36q-v0p(AFx2^KdsFJ`pC3R_S#rcV%<(qTxxX6#1)RTTYz^|QGih63F?P;y8i!o zJkK;>Z8`>FM9(IwFqE0)@L-j!s{AoP%{80~+{Rk`{9tG-{MC~Y7| zxLaS~UkIWEO5}g`fD)t)dV?STBCDaJndIg zN8+!TfPeckCAP*7rrE~Q-gI9bY@&J$=P0!S1%l>Cp?-G!-E3)CH-yG^P zwlr%ur}j4WyL&v{>Ug%Rd2Xy==g!c7#gHM65<3`GJ?EwZP{>QdTGVE-2Dg=$`zmXB zBTiSxa~_60O~L*Q@a#w7;~Ao1tp#lK^o#Y(GB>{HhMl$W!4DdaT)CS_+v{Nc3H;(j zS6FLFZie4M=6w4SEVw?v)Y9zJTLf;sK&^LG>x}el7H97p&Br6c{{9>na}Z9eoo{tQ z`?{Cl`^5@B;i#Im^^xOzKjbh)-n7lfDLj3e$sZFroB9M)w2ojktkt>!5seQEl9QId zCa(r_po8Eq;h}ZtTgx4qn42blFp>Ad41Cpg!>*E z1}9}PA;T)8zaPBOU`{P_Q_r{3t>7v+-#X-aS|g_P1h0vQ`$Z@1TZl{Rtbm?k`3S#$ zDa!ZH*{3y_+jHe9w<=PAb3g|KfLRgRMqiD(@@VGCR$Gb~fYAOj0{+=N`UiGR5-l+v zC#!N63l*p^A2nCqn{t>dlO~_cV{nTZ%5|TW?CEV5kViEuX*KyqgC3pnhuc!L>W^o9 z5z{MB0DYtlh|?7Vnf)ukZyf1OgAY+`v!`9fM$;|ZfPDPm*RUpK5U&Gh_n z5!jO~rJ3%1bAj}UUJ!ngy5=b5{j_hNxve_I2F$1lS1^8qyhsb&eUqF_#x4jnHl6qo zwuL1ZrzQ(9oF6=KT=a4pzpDE0@mf1_vDT{H*G%`Rj@~vo!DrigbJ<_L zI5*Use&*MdJsZbBCUi+jPw2s`?p4g$I~m9(5-fH7#$qq?6)*ITej~PxYou|dtSC+F zTV}~;2B6b}=GXesj+DlvlbKyZMz=39c`P}s#b%M zU4)N`g}VG^w9u}{0qlG{v{pQ#_*`*VMZ^Lxh1edAH-^LB-!a(gnb=iQJijIiN6E1Q zpsn)t-?>`452V-&P6v>h1)9~5GBO$;rW zlJK<`> zHXl?9@m*?jnwU@v7SL?R^Wixm?l z_A7hgvn}68SnVZx`XMvR>A9JfRim+7Ox3?E3HcLnQX~E+%(Qm<&moTLP9_$uCP%U5G>nu&)xyQ; z@V~x!G4i812-URAl9n?>=bOubJha`v(z2@ zCB)v9jwJtgm4)#i|7)}J)zx~9gy*peMi|^ZhryE(d!g4GmoxIl6#}tgOpd-%YOESYDN?hOKFw&0G%*CM z26Mvlk`(>B<|>D~_WHfLyZ_Csi4NLw%GcZkPEJk`mQk!=tnCSsc36h}`fV2c)6DN= z((b&Vfk>!(SH*|se;^~|eu*m7owYT{vMgd2sfp=(X|V5@hGQ;|R<4y7sd$N{8|bcc`cE{4yC7%hmx`A$-WRbVoBd>NvNXk{3N6 zX@t(!lKlKj7bUuGp2m_L0mHXZ!Xj-YMtJ;Vi_saA|P`N;t3sAimvFd`*V=ziCv6k znwqhe30m&j=Ai6l>k&tGHKI-4ISapvNKW1^skuQ%N6i;pC#LXj?rE* ze>vG+*}`^pp`~n&6|`R7Rx;Li6I@+cb>Un&^JMk7KF*6l*>~mDCN%EB{Sne){WxJ* zf`rS!C$wp9cqB z&_4ooBy9LsTrd>F(#dHRfHZsd3_1F{0q1}$hyUjaa_QHZt*7*lmRxUn)F;vVS}F4t zBN^}+!e%X$BDiz${dv@jsPAi-C9BI8I(In>DtAb9l;}_(C3cps*KwpLPxQ#4)bvd3 z>+|E!>p}wNdj+@!i&E<*Y~;$U=jdVydIPh>5qk>@W`WLFSg=38I(4C{2uZ_%+!uRd z{suX%CR@VDlVtX3y90#Vl>EBLD_#fk>|{I0B3#xpxoR5!r%0cfABSSqJ{s5LN>09B zUkpy?bWI;GTY=v8K^Q$~JN&20S(?f>xQ%O79Fe!J-g+?Tn?%o$4Zx9TCmJEQxaS&i zFM80fGs)~&@SKPZeOcSpC$Vr(uYG+8o;vm+8`Uf~Wnz=j1znDf z1v=uY6pj{1183Gk-n!_$TNliUTw&v%cU$%!cpbX@WY3@WK%%d&FL3&f3oze4*yTaC zWvTUg6*}kWGOk)O#JYm8VB=NUP;MCiXk=2*!h=v&hTp6IL}?p|1M*l~#Y!eV0}h&_ zZv4oPDJPnpJ7sp&E1>rp@y_0hS*~%~bU?6dCm~6bfDHWrgA9u83FZ1oeRQzW-S)gq z3r~nUO&lcnYKa%ymU3Zw1ryAp4ZtvcczmD%8qCKw5^B$2Sn*p@8y-u{YH>=OuqncB zB99W<6x7s)?;jkDKyhcNXM8tiqa~p=Y|pQBjedw}$LBsAJsHSZdhVbODDXg?t3ZYwqawbAlFZ;u?+zGt6y}+lbo2M0A9s>T-tk9!mt?yryQHu!sR--owbIRQTsk%L z@Y?LCr5A;)b~F$*-nY8MwmQ}6G6&bQ69mW632^kxpS6in-4$`}EA52qmK~WMBTh>b zl>M`=D8&*O)98IB_HO&iZ1|GAf5eFzv{u?&4$j)x3AQv|8WE0vAEHx#Z`TnJNP=L)zEDx zMjD+^4d$BuC}moWNA!0$N&JMYE`>B1l9yGVwG)6&%GVii1UJ5@?{;?f(7NG}SorCL zC7xt((^e_3?~VckFdWdIN#gp{gP4%AR>S2!?BQN*@LnpF4xFzN#-iPzeC@fdBCM@f zKHwG?PY(*2yCkc)cH_>LaDji2TA)DkT)|^q0E{?xN1>R+`xnYK?$raLyen)ulqFFj zv9WiyrOglwfft}&g_c~L`H=#y1NK{p*dzs$r6k>=_pjx^vFg$^?D$(4yUEeFed;J# zOIZHZkMVf&-qcDPkaQK4;`z{Bdhf#pw;tKQTuu)RaZKpTfm(mOJ8QE~0Okl2`ZJxc z^|?-*o1furpL0g%h?cmVIGIhS*OnbDvIYOn`-r0?DTtzpWpyRO|eg}&KV6PcCScWdEP>v#sm@|5Y)E(5b_Sto}X1$|)Qcd0}qhXy6 z9mEP)ywXOu^iow-)fV;VAmY=1^6Ip}K*rye(pEZ%cLT152>A3Dh8H1ol3mr@Iur|5 zASDFVgAGp;53{mWcg6J68@zBP18Rn}YYpNa9O6uZd;OT#aPO^`Z`8Akq$UrS4ET{Z zTGjt<2*VFVId!Kt0IGMpOX zR?+ElYtilESId>8zouS^Q1{v8l z<`4^ns+DzAd2^XenXk6Ol<_dLrLa(|h;w7N3Fk@6?j)1H?`wPZdasUOXWx0i(d~=8 z&qn)LPIYVAy7uFHHD+s4%mb}Q_Vs}Ti(H&*-zcwN+xuX%@?LZJnK#)ZnZ|?h=8Z%+ zS%IO_XwFbk$hk+zxunN%+}6sV6Q~etZF3e81$GcoQHU;Q>?8$VbULm?5EcZfMP?d6 zWccv(?>XF>se6D!TTNj7$aRUoS*oNKoiDUFxY;)6!qDns%_)@ws|#F{ z27v+_XDFEH;8jsG>UK3RLRAltWfcmXbYNj>!>sUrsC$iX9sN*U2TpZ=jdP>pw1Z}g z*=Ogf9fudeuA24occJJ38!XvMvB%5nH8)35O=h+CBE24~(ub}_mUdcI@-9ao=RLxV zdN5nB%H839#{WfGGnK?yg+Y|;C*ji5Zn&j`-9b1622sBA@>Wi9FJshtSa|yS+buTY zk=*EjJ&LIGr0AxT>F`4_LoXGeJ5INjZ)vt5<#K#VO1I95KVZqBxuIj&j1dsN?{tkE zdDcnXzlV3`XxX$374g_gTAlA-Q+MU>9FqU!2(g3}Fo`{ir|7d52d!v!Zq*8BdBdIe z*qb)+DVXLgFgaYh%ixfcyvfHLaHwy7GVi@;i11HC&bGtGTd}2Upq44Fi58Q=Wy7SyWz@yRuCM6(KmDBaB9kIGZBM^byRV6>Sb z{-*ZH4OxoOYP+3oM(wyc8?oDUS3>&Xqz^s7ig=+#Z1cEY6<%2O)RXfuCw)gM0kX#b z1B`3@(I(536;xB2W`+$)EqDjT+1F!>%m)K*!xehLx~Jnd?%l-1Vx;a!sb{p_H$P2P z>Bk9cSPjC_dDZa3Jqe^qc!2(AWn~uQl@)o&;fo=L5Y;|~j=6AP4qihERiiz5!fxpd zry=(Y(0-25G9uTyED+<;;4daBWnuEW{SLodxds&Z48EOP^Z7%hk)VKUDK8#z?hl4g z@Kd=S&3GQQY7(N*UKJC)eNY4rHSgN`;LXr1`oI7|wvgJ1&wPKO^U$YvwjVInvIWX* zIiwwG=mEm_+i_1dM~!*#2#u>@775Meu_aTYn|v(TW_3>=?ZrvuhLiDI^WAH6nk%3X zLcK8FKSG;X<<;!ojds@AfkF6WJ4Su8h}Z8k;=_e8k)ObL(P#5hJn1+&-tOf7h}S>T)EJ*&95?={{L19wCS+(>~8I1mtLZb(Ro2%wl+zFIvqyB@RHZ^g4b z-g0$y`}g~}fvS0LtNr0)!e$f{u0j4VZMPHZ%n5yg-ePI${s=%7u5@4#bU-X4Z zfT_xU(HABGrYieIUzh}#s_YkiVG>}fvS0LtNr0)!e$f{u0j4VZMPHZ%n5yg-ePI${ zsUJ#Or*?TiQ)EF1IV)5n@D0uLVCmx7R^_FnOb zD4EWuvV)9vFpl;jea+mlK5>sum6w+4GT`;WeaRk2dX)^WF`r}#l1Y%Evn!vLRVK*} za(lW|)}#gNeEGfe@a0<0*VeCwv*X0QdXUq) x8xXk4m->XI=Vk<|k(YeG(i#bzC9v6xng^YgVR9l+eZ9dy_B^88nFQ>9`wKHOyHWrE diff --git a/_todo/image/list1.png b/_todo/image/list1.png deleted file mode 100644 index 219319293bb2f9903beb0e09ef0ba7f3c2d411fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 615 zcmeAS@N?(olHy`uVBq!ia0vp^9Y7q&!2~4RURFK=Qq09po*^6@9Je3(KVV>BlJ|6R z45^s&cCM}8VFL*V;Um0SU%6}$4IA+2RbLK~-Ingt{CaR;6lhBP$+j}GoB z3xhh}nAraAnyk3MM?%1NL5diL)1#3M#BIV1qnfK$8*0YLV-EXq- zeayL1b5JMl!DB<&>msL@>Njub`fCE;frPLds)`I= zu>bfJq4#(H8=58sJn#2PyICPD+?BLIgKba{K7XCx{7Z=VwZ+oY`RC+h>$`EkLd@p4 p@oVrlso1VF3=m;8sScE6ui!nRnu? zW=GZ4)jhx8pE~pQ)$6YxPWPXe+}9VN_xb`fWk}K&ePI${ zs=%7u5@4#bU-X4ZfT_xU(HABGrYieIUzh}#s_YkiVG>}fvS0LtNr0)!e$f{u0j4VZ zMPHZ%n5yg-ePI${s=%7u5@4#bU-X4ZfT_xU(HABGrmBU0LH&2@Ato1-@S3Wp?n^&4 z>V@gT7UDHurdPBBxi*!W3i_~?l=$Swu<||AYm!e{WsQJhcJ?3C|or{x!?!Z5o{Wj)`YHOgvO1=)ujEckNxah?#~ zWmW`VZsmMy{W6>b7arwH*e2Kxp_VKx-2RBeE06N!@Poqz=nK=JTYVXSJ-l`xaFZ|N eCoH{oBQP3y%kNiOBY}$qc6(9tpo=n&P5uRSAHO~T diff --git a/_todo/image/list2.png b/_todo/image/list2.png deleted file mode 100644 index d0ee53cdb936fc52422debc8719db9d40ef06417..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 617 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�{eX>x2bM&}M1lkG0eny73{GTExENd&t`OHLoSs01?P^5gZ{9rIRWN81gizt-Kp577RJ?~L zSdcvZH2*{MqDK+O^|r%4%QNX)9(Vv<%fnuU{>dM3LHz5|m+$GKpMCa0Uk2~vm}ehO lD03h{Jp}8At%DHI{2%uwWZUe?0tx^C002ovPDHLkV1fv^%uoOT diff --git a/_todo/image/mainloop.PNG b/_todo/image/mainloop.PNG deleted file mode 100644 index 8560b0edcc6b62991f1a17f7a547924d7493ed5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15753 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 MxrSniyk+qJ0|;3N5&!@I diff --git a/_todo/image/menui.ppt b/_todo/image/menui.ppt deleted file mode 100644 index 424f0bf679099300b8fb1a5a4e0ed9bef2d4e47d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 164864 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 vP}=m9aL61vvZk#e{H%Fq8Fg>pY? diff --git a/_todo/image/menut.png b/_todo/image/menut.png deleted file mode 100644 index 42df2a634af01559daebc9d309cfe1b42f43c95e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6735 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 Nyo}1*N~sS4{|i!-D!u>! diff --git a/_todo/image/mysql2.PNG b/_todo/image/mysql2.PNG deleted file mode 100644 index 7c54fc33adc7c22ebf12220461b7036eba226b79..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31978 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ú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 diff --git a/_todo/image/mysql3.PNG b/_todo/image/mysql3.PNG deleted file mode 100644 index ae89b16b71e0ebfb99957cb3910960a10c1c0a10..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31291 zcmbrlbyQnj)INw)th8uxcWZHnBE{XE7Apjby97#cFBF&J?ry=|i)(NT5VR0<()as) zGqcwGIcp^=$<4j@?6dEd^X&bc2z6CC986M71Ox;e1$h}w1O&tz_}l*#68y-|5$h}X z2coN{oD@RUB>55i2a3%{m5&GrwQ*RFpHbnzsV(F+RS*z-7!eQxe;^>-!w&@>A|SZG zM?g3>M?erxML-~S%52jRML_UwRgn3p?PYq}iEgZ|cmD#tZGM4z=8qJ$vXCaWDDY2Q z+uwit$v2YzrS3y5{on?f%A0svO&J-cv2^G+_ZnNXx5_s{eMq9B0va49z@(n*|rG@ zEpT(YPDyE&Qk(o_-K(Vhe@5pi4-AO`o}=d|rT-={CpUjBk6tsSsKUm^<0$gf>kBHsZsf`zR7t-;cwmU=UX?c>q*U1ngoYdF30=9P)Co?B|e!!Ih zm+JQ`OoaR}+%vMe_oU6WE!$QCE~8e0qxmnHa%Ry?R|p#+qVf2b(k#qMZiwBS+Yif! z#{WAR%shnmZ8lvV%?Z!HOM8aj&c2B9QE67M&QRiJ1n2>d5if{#gEHf(6h9i&5z~Tl zq9*?DL8;+`iZt>G-=3b%%%9CHcDg@MIdwb)iu3i5Y;z1F3(-ixCAQ?U-rJ41qa@2A zBg-N76<50!5QpXipI3*txX=7d*G^N!pA(!uxjn9ucts6+AB@8~tR$XA9iQ=UCGIwX z$$nTu5xWp#46ZGDXG&ANg9si={srU(Ojy+LqX~`2XotoTEB&6&&IC}f6-7}4KZY?tE3E8NJt$%W{QbaDPuo_=jhGz}lFiSOeGe+|50 zjR?0_#F%(8rSW%It`@U{6cL`PL=~$w6q5zT1TWc4wbV4Vn~xz<@)!{zR8LC%A@T9= z%&HTwa`ew{7GD@P(r^2}3vBqvX}{;cI&B7rG^@%Lb$fr$5IVAw;kVu{i)ZV~oQ!Hr zY+P?7YkGNt5${>z0UCev&`(RSRbFQ}g1`;7Hnd?iqPkBtkHm-7%{I)@N}ud7u-A+n zJCV_wJEi_&WMXR50_dTHjRitl{;Ot9g?Ut%DqSo#})3 z2bO#!Nr|`eKnpI!Eh%$1$Rve>oiC?tsR>d)pzHl!{qT9Unt1Te z^tqQH|n-?W6HYIh=9C3>OXSYL!S=X(=ojrkWs{msUC0uBV=2%JEB1(D?LDSu9j7 z-YI*9s|;rj^uCe-r^q8RDP$bCN|ndf$F%oxpdcDE(6`{_wdu@x zyH&j$Y@G2e?8cq%wW_AS!Xc%y?LnlqyCR9c^D#XTn~q1+yK=|$ag0^yi`mf z8etmtt=i<3Qjwi6=C2C_ZWAR|qWD8CE-giX}VHo?zv0WM(d#;3{Kd4()1$4K(_?W4{uQw3b!f!{P#U z?D4Z~COVo1;8=$8NCLMx1aT8IzI~ey*)>ju{m3_>a%W{OqsyX0)67;I*eb%LmY!rG8A5-~vLkCk+K6*i9$B&~Er9Wu%?2oKa!b6e@4W$|rMJKsR zT3s^@RGASr$GA!+M&6JNp4?4!*;BK3X|d)9CXH%rjhwee5~;;)IsmGn(&~nH~hu=Ou^DpL0ebCEe2?H==pev%s#ffQvcIN{nA$ z`N*B8>&M7@*c7MCkkXoF$0&r_JHG6Qy@m8-^&2R8M1DDd=3-A|+xi%2W7Xp&Ub3h^ zK9nGOA$ECE8*8ISR~d9sny0P0P7o>Ys4Fe#sMStN z|MucAHzR-)$Fw~`7bdI4u$^@H?k+pW3_0!eWPP}qTJd{?hNdCz!4_0aBBIw)QbFVM zX%yFbu7rkzkM4&K2E%vE7q2gf^zwA%X)ir>i&8!s;OSe6JzUF}1cpby&#+H0M9#G2 zP~ru z{GF1_g(R#aQ_-+1JVlM&3-9Nvv$Vb5$~`Fee1WatevZstRWB>`m;Efau+Dy^_ow_vWM$LE;n4Vq=okVK;L60cl2u^98`m(Z&GCQMk!0Kl8;qRiGdamR*9n_5cj|@vF zT7@koXCC`-y?)u>J|dTz%d<6t$gaxMfxPR~@h~TvhUwo4+p5Gso)-BKhnIjnc1Qb5WHs zyg%)bQ}!&g-5~<_!m~*Q3uq+aQy+}?pSB)PX&5V25kBzo?sz_dflwm3Gj zDkMNi*U6IBtefxhS}68!kI75GkkQ+%f3 zE4gC^Qm9vTYFOgHL$P?xkkZFIr9kN z6Y*0=mHkcIXd@Z$@j(i2Zyq9`h3`#yDXBV)Tlkw@1LHAEM{m*P!eweeNsO55Hu6s) zrAw9dL1a})H%isrX`h#Kz|E<>*spmUdND53aX}qb13Vu?U9~pY_ z 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 diff --git a/_todo/image/mysql4.PNG b/_todo/image/mysql4.PNG deleted file mode 100644 index 80dc44ed615798f2c94a17c17113e6b28c4794ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27473 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 Ykl%j2PAFpFU)XRoRrOSApmq`e3!(9WG5`Po diff --git a/_todo/image/mysql6.PNG b/_todo/image/mysql6.PNG deleted file mode 100644 index a86fb415ac244fcdac87ae421e4893bb24e21751..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28002 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 z

    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 XWNYjDsU8A9f(A0sG1jiubd2~Pu!e>* diff --git a/_todo/image/mysql7.PNG b/_todo/image/mysql7.PNG deleted file mode 100644 index f19ab94af67fe30ff6d68922905d8889184501a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25127 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 diff --git a/_todo/image/mysql8.PNG b/_todo/image/mysql8.PNG deleted file mode 100644 index ffa5d26fa393e50615e6ee8f6c11669653f412a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22172 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 diff --git a/_todo/image/mysqlodbc.PNG b/_todo/image/mysqlodbc.PNG deleted file mode 100644 index cec4810ab529ece9990538602e31b1398e3efc13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32006 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 UZ{dpbM;CyPHd~i@ckVe3a-u@IEkQKirt^O!u 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%0A;QESxW8SvJ1A@0_GU0cem@K>XjeEtY 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

    L%1YA++qNrr;a3jV`5*t^d(&BAZ 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 Hn+5(q6P5{2 diff --git a/_todo/image/odbc.PNG b/_todo/image/odbc.PNG deleted file mode 100644 index 53d09e78354b56ce5e7fe6817d22570984372e2a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15257 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 diff --git a/_todo/image/pack1.bmp b/_todo/image/pack1.bmp deleted file mode 100644 index 171c4585fbbe61e0716036355642dfb3f2a4ebae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21270 zcmeI2!EIDQ5JZd`JF~ki>-Kkj z{r#@4sp*-n{&U&&tJhE8?ryG^@q8YikMVgCpC`L#@!ajcyt(=F*W>!zci(oPj|2Jb z?6WKHBs&m2%HdBoZ5RaOYYBOQ3G#3s=aCQa{v;U_p zN2-kh+yGGEoY8339Kw)XAW!+nR3-C+4vQ5Laz$N%OLdtMK9C6+SI!wE3khp9^MxT# z*5{lL9aGoD1ZtdUPRMg-TJppw%R$1FxrAE+QLO4!Q3{V@B-TWnArGlw(6C~FQ6`2b z0*NEcOv&kR>A=#xrC_;)1t&PLw0$W!VNp+6I^3p)@8dH%bYN9}+eumg5r?m(-5435ok&9}Yz(eR;Xjcqq}8M}Bt@c|GU zU{sr7sDK=5O3{z0BoNOt%aoJMcWQ#%>OB??1HcoQ0u(|{^bFx=o;%6F#8E@4ErGF2 z7y$Lc6rd1tqGt$@=jIHVmw04IvOO@dB8Ku6wMUpOf)Ss^FzEBBNQO$DkuS`?RFZAu zDFaL4Im{Sw0SX~wN@2z!r7g-)77U~SA#+K!CGe;0+e>vR$~c%YEV5A$Owr^}dTDqv z1!Vxp0J=4*AxMMsI$(Rx>*u~~$NGG%e&4$0M+fj0FlzQOnsUO#eF@Fm0Xxvaf!~U+ Bp3MLN diff --git a/_todo/image/pack1.png b/_todo/image/pack1.png deleted file mode 100644 index 2f3cc5e146e5ca26863e72688c04cdea74460aa8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 562 zcmeAS@N?(olHy`uVBq!ia0vp^9YAct!2~4lU3kt7q?n7HJVQ7*IBq}mf55=N_{!78 zF{EP7+u4qOhYbW=V~_AU6tL`I;6Acz)vmOIygNA82qc|9dTLf^pthpl0i{DK!sRw* zy?=fGM=zax^2Wz zKb?yWHt-akIs7RHM{F}E{U@iI9=ToBp|c(MeET;ipN)_a$jsp z=vI|F&bxX-#8#Q(_m>-8{(Vkzxy_m=Kj$+CU#cmro+kVud;26Ik<;-~uH2~$zXUz2 xd-h<5!i}WBLu|ThqVlA}beRvXN}Y7r{90z&g0o%X1;9kW;OXk;vd$@?2>^dU04M+e diff --git a/_todo/image/pack2.bmp b/_todo/image/pack2.bmp deleted file mode 100644 index 375240312c5a44953757f12b6c660c03bf9024af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27526 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 ZU-|hJfS4ng7f diff --git a/_todo/image/pass.png b/_todo/image/pass.png deleted file mode 100644 index 552a6da87e0107fe166db637cf959ccc00e4f87e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7772 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%0DyDKw1yDB8jYt|%rw$z}h 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

    *ou*aeJ=)EGaqk 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⪚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 MlvM#&O1};KKZ?v5*8l(j diff --git a/_todo/image/pcmd26.png b/_todo/image/pcmd26.png deleted file mode 100644 index b70406ce2198179386da8f39748c618f9c4284a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46189 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ᐍ_~0+RCGC*FGN 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 diff --git a/_todo/image/popt.png b/_todo/image/popt.png deleted file mode 100644 index b04522edbfe328d012dd622d082b2f68a75d19cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 196521 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 z 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 diff --git a/_todo/image/profile.png b/_todo/image/profile.png deleted file mode 100644 index 71d2c38ba25fb337aeb9960499e11b85e5c59570..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6344 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 U*p?}CSp{6qj@V-l?SrrW1GccS3;+NC diff --git a/_todo/image/pyform1.PNG b/_todo/image/pyform1.PNG deleted file mode 100644 index 76c71b94d7b981d6671eb1726bd3a7d3a50040a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1706 zcmV;b237fqP)Px#1ZP1_K>z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBU&C`m*?RCr$PoXv_JMHGg|oA3^D7hZq}E`ztAAOXQ`f{Sbv6v0)% zl|W^ypYBs#??*5C>pp$zyzhBZ z-JP#{p1ZiXSi=VnNOM4Oi4Po*=D?b?f=~|}cyo z+cJDn;Bt5bL>eHD%a1?1g{3q`ZqZ#ucLZf{zMtXmp=DL+ea0TZjZYO&w^_vLr6e*_`2woKwMNQy_#S zpOZ`fG7v=hA_w|^@Nt&?|7W@8JHjrxJK z+JP1=!}CO-tJDE-S?VB;Z{YyAY~d<$mO20~OC7}VEgS%sEnG#;QU^xivb(pgP;e>Q z-tpq@$5&MdCVF%r+T|s185M~DQ4XY>_ray8mJLx1xE!L*-H8O3-L-6pf-|{vejiVK z-Xbxqy74I@s}G8VB@U#tEa~~nD09((5*hrlDI(jAj?5Vjq_ixFOEor69=ObC&#;F~ z$K{L`r-+=fJPhqSkkYc1=Sw{``ma0sj|P*kLHZj*3CWJ){mBJ@UX4rV{YL)jbo+5& z=K{cg2gna5-xFe*ks@*dyf3+GlK1F0S2?C~cAf;vW9}~2%8tsam+Z4Tvymzth zvK{jLuYNE&5c%JzDI%vd9b-iuNNE|KCyLsLfXWVl%gTl#T@?qwWfdEdq_P9xva+E_ zSH%HvS;a;qsqDZgT=w|l)!;QpNhj{d&(2Pd4)*qUAMNdIw_dil9<*3Y*-FL1-hWDt z5@mZafyU~(qN1YB?kIrZ@)?vnTUT#f}>yGBw}M*GDcLeH0r z=Tgm=U26oF^qlED4y?b*oL*_7fHZ+%qN9UnMIm_?TXLcRq2iv>MB|%28NzT;6bIEA5 z>v8hyueL_J5<8e&cQ!f>WQ!7e6O&OGci*$ScNSXw>q`@Qs#eB76{OuXRI*Fg( zE}Q3)(dblYkK$`|DsddJ-LTU-mD@*Uh{|Zc*h4rj|NeJ3v?$k7c9}3cp4_Oil?Rh0 z@mw+*?UGW~qZ)mIj*TH_{33@wkN>s#D6}XCQ+Am!JD%LAvPFaSEM-2r0HzWhz;nrK zbViI;XtE_nrsO9p9Gc5te|s2Ol%XlR>@dCVZ!vjR3MP*tOX9g)Nu#NdRFSbUWFup* zE*MK|Baqysha)wHgzK8^qnyZEqB7bq_7INCpMLyj#zl3j%IG|oRfd>8 z$>BcwT-o0~w`bD4ADvtZr`nrkvoHxVmyLVo^^8V}Ze&SfuwZ@RBjP{E? zgy8b@^yKN2gSS5XavASYTzT))lanK-0bOfU(?2OnEMyslb^mu@GBo25`3`_f`8^u3 zLU1`^*X3&lm-2fwVuj#x#IDQN3@+vOXv7Nt2h%xeVTh*IZ2$lO07*qoM6N<$f_-H_ A-~a#s diff --git a/_todo/image/pyscripter.PNG b/_todo/image/pyscripter.PNG deleted file mode 100644 index 5ee9e8f69be2973f1002b19b8d861b765dbe93e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 403334 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

    2Q|TQJ4P$@k{xN>~`Qc3NLF0|HPj2 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 z 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

    *3 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ⅅsWoh633^(k+G?bdEecuLV2TTRiS3 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�cx>1BCRe9;F%d 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 diff --git a/_todo/image/radio.png b/_todo/image/radio.png deleted file mode 100644 index af69677d9e5d4c906e6a9c3193913053292e85e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 426 zcmV;b0agBqP)1r}nFq!6*T@C&pSKj2vW0I~N&j^m0X zg;@9lTBlMJLVjQ^28Lm?m&|SM&Q-rZgUz~$A=_vias3jBhQ zbNkK`H-MLIQxCqIi|`JDxLVJssP(;*>+pblda+Up0E{sJ5XDK`)CY%0@~s#X1UJyV zBn-?YG{6@^SV3@55dB7!!nqy9*E7M(E!M2__F=;6Hfy0m1Rx ULnZp>)c^nh07*qoM6N<$g1-a2AOHXW diff --git a/_todo/image/radio2.bmp b/_todo/image/radio2.bmp deleted file mode 100644 index b1be795ef643f5563008012920eddb2d6a36e869..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21762 zcmeI1&21Dx5QP__AOs>H0624l3^*bo!f^&12!#MRb3;NxL|{sO@~7JB>Dulddv|5m zXx+Si_3Eb|gVxNvegE>~;qH24>udY@Y(MYp=f&Zbt%t*p4|jhYEkA$%sZTjj4wM7s zKsitjT)zXi?z;YIuWdq^_v`OJK4S7Y?RO>&$9)zN{-WprkG7JB!G53u*XAnu~k5)4qNq2 z$jw}@Z_9EP$#OCERflRSLIt)#AUFX$wbPuGbkm|j6Ym}%I8ABtgsse&e!UMo|nS_p+G9mj!r7#<#S zTN=pgY)+^YLR9cf?-Z?OXF3G|R+N?^e(tGLx#d7PP!5y>L_#UGW ziGW@UUsK}Q)t)o(B9B`UrdQ4P6@~#=ZZG8dL{IlzFWPsz1B#@z7f9;%K(@cyk+4 z61_i*vV5*ZAt^$Ng%A++>8*g=S>Qdidrw_P{w>co+Nsx(XN#<5&2}+;u<;5Fv?15r zSj$@W@FK7F#?LseTyWq)QtVdL-Kh6^wu*U>;?Jsxd@J{!)n9rYwj3x2%7H6)fG_v6 IfpZ%2AK=)TdH?_b diff --git a/_todo/image/radio2.png b/_todo/image/radio2.png deleted file mode 100644 index 158cb0ea58f03d6a927c268a2fbbd982932c3a04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 868 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 diff --git a/_todo/image/reper.png b/_todo/image/reper.png deleted file mode 100644 index 6a12ce79495462bf86d8f138f678c11b98997b73..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172450 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

    jFaC+9=FjN@FjnzoyQ+ZLWt`cGaj&OkKLRsXj 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Ⓢi=w!@wNg?TL*%t?}Jo@s<2iGVH= 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 P@B|2O8iyD1&(IP^Es8L5Zh~7eUqD1dC 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 diff --git a/_todo/image/runs.bmp b/_todo/image/runs.bmp deleted file mode 100644 index c0d7d978cd957e22545d3e36e930b1bac83dc1d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1115974 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 RDpI%{s(hwQAt5Ud{T~j5kbnRH diff --git a/_todo/image/runs.png b/_todo/image/runs.png deleted file mode 100644 index eb0ce663ead227005d21da44e25f8d7386d0801b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23170 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 A`Tzg` diff --git a/_todo/image/scite1.png b/_todo/image/scite1.png deleted file mode 100644 index f2581291321dad3712a74577a24a2cef8ddfcf42..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44343 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≺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 W>kGhy23*ARFG23JU^n~E@&5vT3Y7H# diff --git a/_todo/image/scite2.png b/_todo/image/scite2.png deleted file mode 100644 index e1d5d385e0d5f9de07298746afb69fb3630eb219..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 200854 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

    ULcmg%6PHZDIB<>l4xH zoe+n1tf}++;_9SQK-Aa$P&ebZ+S}wgE=bhavT4+mAbkK5=6}+r_MJE zD*ZL|UYNn#gU?Sn39VClD(wu+yYB-<)X@ z6BEnbqY7bjQqa-4dVgdXh-5-$!pEn8qC!Fmyf_`-9oe5o8l=Po3$hi@pc^;MG*yX5Cw zvMg%d$sMLIPGz@2WA)gyY=pVD{3oI`2ip!`%?(H zI6T0IfJ7A`0KSs4=%qPfeDOaq&(m*in)_BDz~Vgrc5>@q*a0O z`C0tl5t`q`weG_e=(+wp0;l0gba#(QB!Aa5V`V#J9(z@}jBdgg5dCup>$@j{RmXFC zDhbnYLO)4^1Bx7H$29L>KyfQZ1AXA@aRJ67c9u@9$-+hQNg�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

    mCk33+)~Lb+L(| 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

    P+Kd>v<UQpmBclzuw_cC$^aU~A4`o?L(vW>z?f z@UH<(1k0yn51m?D3tX^FDP8^VQc;+-&Ww+CPd_VKM3qdOV>u%px^u7GK2#Bcq78-J z7Ff-X7s1sXr>#dtDp~(YG4r`OoHzExijA6GO=$Q;%?ZDAEw%6tV@MSd<6E7%c~OyK zveM|x*8&yg`DK-BS5?iVX>|lX-j&)Ox%Q>4jK32U16u*q=oa5>L{4+Ij}~h-3ZKr_ zSlu^q0`C(z0v|>{XyNg-U;iy)GvMS7t~!k~bRF@hy6?Wwf;4qqj>bYWxJ06>*eB+G z%X>J9y5BXCGAQ*7i2+;e_k5B2!cT4^dwM6;=1WJv2%q!T{0=NSAa;h?0UL z9nwfj44nc>NJw`mAV^4eNw108^XJjy? zj0fT(IBsL{9CSpscvDiD_E^NIGEuEWT#g9oPd|KNGG3^8JmWkp26Kfashx~vUI`#) zdOIJfyl5)DG0;E6dfW;Uj&+yTN4Q^X{md9ff+B`_-}5aqzT{zKx~%W)n%<>BG=vym z1uYPg8~YAos*7n1h_^H^@j1eeHtRR91k?hpbvS8siYIDf|ib5>^lhdyX4H^Yd`2 zgxn^Afm~Jr$AouF%^xMoez7tBt;T*DQo5Ht=}RK>`)9+P=552Hg=Ad}zIJ>hz9MV9uCH>lk>0vo$okjI!du9yDa zcBGtbd4uoqHcqu|KnasZDyK-Q{Qbq>7yVij+N3+)hvTKTvr`N1w+s}7i{5TCHf*}> z%rTde61H34iXCJm6{%=A&p}kQ?5EC)AO30Yu^{;v$Xjs%IYN1u4AYLujm zS}Jqtr_z_vgN%t7$fx;jB3B@-+x@tKZmvS1@qqM+LYsEBMw!xKc+LFPVmP;bd5P0$ zjyyxD&Ra4oo!kY-Q_>x6Gv3J+H{s z_=OznU+E@7`j+a|{)v(B`tt)1N`v*>k2BP%EUAAbFgtp9{#T;98#K9N>U)V{g#`gp zJazC1$6oQ~SzkQ6RWiK4ob#c(~p znk&N%UOqm)ZQB35e<{-P>7Q?lGpX~Krz|vJS1rAe&+oni&LxtSr*y7nfW+KNx=6#|Ho$>0t zo9RA(F1Zhc(#aTt;4mpm`fN|C6?H%Il+-gk+hfS`NhWF=&_q2f@)P_nq(Zl%~4|yg6QKGj>=0aQ#KRr-N;Lur|sc_$2?56Yc z221wC48A(3CUtp`^2mnPW0~Y!ce=)bj*`;)F)ZEOo@O|^p}}iL;=ic9n-@{cQcI|@ zIrp8YK#GXp4rZQaz?ri4?yIy}Zn@XxML%(*F3Heb7W2j{7GqEt~SD&V= z1QxQed>f31yhaWgv-&TmtDA0TRq*o(#Ld<2=1Y_JKqgz}X}Sf-_Rym9@Y=F!23a05 zX<@z#Any)pG=vbN%Q0k@{^l((A*qivA&HQG_gLr_9%d^vOx~=*v&?D-Ir=h7AKNrT zK3o!Zgt&R=^oc(xF-V}!U1~qW!AY#~t=b&KR{OMrd;l4qmY&=#J}ZdR`D9Y|`dQA_ z><*1(=4HYD5Jnba_YTxX&<+p#9VX^RhMk>{q`2wPY=c{=-c3BG%|RY2SB^mO4~xI+ zt^2UzBvSVlxZK4C4HM%sW9u%dNNaZ2YU1@?1-(D4KT$cZ}UvxwWI~5ND@5DFl zmlO64wlLWR#ILoiN<@=+=f|3&+Oo?%+@NEAUM|_$ zT|O2pY8tS#CsCPVqX>C_dwM?SJTdFw5(<@hvFH+tX^sjh;scz(;wYdNdc{;e!ExWV z(8b`o(D)m&)?TH=&)>!-2^B8LKHcs!=Yb(bkQd*~$3#B$`tv$&d$yEGLq@(fDppT! zOQb09VbkleRVhs^$BY`*UHO_nD@TMp=v6`aZt~{|r>4!*?bAKsS%u+lo*i!5Q5&&X z45f+uewEy7c7M!gqaZ)++&nI1!qe{jzSsI_ZfqsztG^(OFkw$g?1-pe@vy>7&`!>T zg_ge)eTSH5{|YG&Ok48JlNDl0vduLtO6l7l9xZdqyu>3W)QX>d($#erVz|?2-oJWw znPFQ^7J9-+VkD?{D_H#7D^6P%i~Vko_+D9Ir=d{hS0e(n`{fT!+ux(pFB&_^eCW!z zcKNYugIj35Kjp_2$usu;nuq0W%Ryvi%8u`G1Bkh3X=xKI@YD7kh12?1GQ9VmLHOL~ zF>S($Avq&oHy-@8ePjp;K4o|=O7v9O$KGW6(7^r{DOIKMSJ^34UaXgCsN|my-Awzr z9!cZ@+4)^Z$%Zy@N-Q|0G(I5Kwgmxo!kW2m9NYT9!$BiQw;)R-)JeN z_L4mxWK(dhd_>gY&~jPicYR!4#8T{V%O8K~!zTj=Q#e8-y|olJ%|MW&U&%j2WM;PlTX1a(Si{(yFDWZ?Tz$JbqQg`x?54EBQv2&w!Db zQbhp%QZh;z`&9hH57%#7s~O(3$;y3?_b`7(hls8h>|f^H##$4-9lRkj-I~Oqm;Lj{ zYAvsPb(oe~%!}YakD(_IZqa0)OXv$fw6L*r-I;5G;I}(&W%8P0`#TDwrmhG0hi&H? zMPhs97)eeMAWHUN(vmMgO=LdarlY2|Q7`u3dQwDZkURH5+>om&(8mJBLLf>zZ_+EmIRo?Y zu!!4s6ol`+{i*W$trfAzBhz+fzbaj)4y3GbgbS72x@iA`1#Z8CIUhm)L>NjC{*GzL zc_Q9y@z_gv%GstI^d2Y_@$vC#IU6t44-I~e^{3CGq6BDXyXiXTd>c#I^68Yq>S}~t zW)T<{v|?j)o)WIiUjA2R9KR%SwMH`VW2c@>F%vkEyz*6ChgV<%C*fX`Kb;I*APFfbmT zzuJ1i-6DR`!*or6s;Mm?{7_cL_FA{$h@+i&6E1~^U!-?D(CoABI0-gS@c>5f(+FECSmJ#^0Jp^cz?I7sjpgz8Z7oCgcp07~F4c=! zU{Mlynfbp;fT}q;mtl$HG}x5&p~6ih#cweHrKL4&bT1pYB>(uN0#Q`?#(l4sC6UYE zY&Xj90)S>M;=Wc^J+2|1GAP?m*M~;euDuTupCZQXli0ON^eZe>+8r)|_kV=~YN8c` zsK-dF)Nm_e`FYgY-me|?zxp}}KQi75UvMzK@fGf4x$NgR6WJIU>z?aXt>hMBaiRrc z;t+)Z1>p@e9Qn>l##eRK{7>)76n#jT=-NCE&uY)_Ni@kWQ zS3#2p4fC&uGaQHrrvh0a$;n0h_h2!z@)8o^B~26bQ)O=4*w`5{^MT3PcAmmB(WqBD z_0{;KmP1LqbrZ6il9S_O zNyeiv^4?tPM!e`8&o-*B=$WS6@(_mz+?{r`9p2xI~C8Z3$ zC109z0R?GHR}%e3Xy-(RYr^KqUCT7}^&Ps2!;+_F!Ak?|tHY(+QcDqM-(ChyW~yTF z1o@Ng1OQC+@VqpGKVKeklt1RAfjP9Y3;)GuN?kLMsrF5aXw%bezaas6ug`3GI{D9K zNt#s4%zTSf>^lB?2kXY!f_SM1EVB#AfZsti1Fbgey*H${4V)3 zPb18burb~owfhi^tLV9Iu^#Al->m0-e7@>TB z$N%QPM*VQ+)-Lo2^yG4Yn&CnN<;HJWE;b8m{IomLQ46=jWsnM{XTWER@6$K+;WuT; z;Nb*@=ufDkg{@2JFPDCRMlTzSk09~xD+Zgfi9mOR+bEvK-8L;)o^w~oBX5T#fQ zr%TgdyQc{Fx;qkA{-nudkyNir^w-Nv4eFfC@ibjcESuN!Qfa;awDo2>gP5+QoTgxu z?JuAg@m_s__~)&TYYV)ql~|Doa}wIlHY5L|Kc?CKhcPa8{2>ot%txLN2{iHMs@o^jw9K2K6!UWcPchkJK>%`o) zL9Tb5GxE6kSYrCp2L0p*Me}zXI9Hty=w&4dnk<5O%X8q$fKK&3ZkTu7)@k-WjieD9 zk~r2sB>n46Mv97eTb5Bu545?NujP8%lYKxJpBrH}i@=f*A5qGZvHw*)KWItRR*tBu zc^o%Pi}__cT;|A*k%@fg5JwaHVescrfSTQA_@cRab$O1a?{heQM{;@`XuD!BfEQHu z+SHS38MwxCXsfA3apaHwMD?RjD$<81{BWTxNMDfsba z2nMuMgEA9y6o3Xw^y@U59^PoAVADGnwQR-fH5MMFyr)taUw%^KtA)Z2(Bz(AOE-Qd zl75(3S(6(%ZFNrX@17IopLQkqbn3j^`^cZzLsRL7`TBbxBuvaED8mAD93Ay>=Br@O z%7mb>NfbJ*(LL!mw#3r(0-bY&A^GUh-NH4pG1hxf^uU<)2y1ZJTw;Z9LT|R+&B53J zhAP%;m%cmevlF{}&or$qq9PTi_Lq&hVWoQxku-zQ8wa5=H|Mj*=SgY4{y`*42Z{+r zH-7Qoqi4Ir!>(djx3$*=4co%W5Sxp#SW*zzF;D*WdR4PA4%K>X)pTAS9z9ty*D>CQ z=Vl=ac!jz-|NrfnBKEQq)9875Hf2WIf(^zT&V2t&NbErbG}O`#$QZa)_mY~Lg(_}{HNrY*9v#5?M86O$ktD=J>#?*5b| z+L|n50(cT5iATf@&I`;#ywI%69a8{CVA7App&1k7>#_HRQO7<8xMwvMi7*wE- zeE=}yb%dgX{ypy9o2jrI2GiT(m6?NizBJ?UpF!_fq|FvcJ34_c^qP09jD5@bNHA&m zVJi3<3~C|!i&dePy0=SD4q5;E4%>T|E^XDd)P(Q%PcHz(dOc|xwX%N-w1OzVA}#~e zwAXB}^lGCtK_7<5P1GmF$Exro$B(G9g`M8Fg(a6G?C#8;4pHmXG>eNDxw*=pol|h= zIE8sKD}V``6IU<)FJ<9X4;Kf#Qkp(`7zxPmGNa24EzlDRj1`>zRq!IV_lvkiU))2m zDgb0S8;SCD`SUYdiMvjK4Bz~)C|)P<9m9VZxn!y}$p;r;3Br%h0%8eU4fuMxtOeSW%ZeY3q@OedIBdmH9$V#xHXNA-rj4Dx@!u6d8!Numbm595a9jt#JMYnV{ zD6G?rHNus~3&{^!>a#ee3Cw#-k7MTlHSg`AbfoC=S;&8T7X7OzGp+2i2TpbOOp97t z{6I(o2H8>5(9G62WYT>6z0mfq*Gz*DIbua-EcZh)#=JrdBuS*sx>;o`zm~>-3gMN9 zMbVUR?z;c_{P&5TyjZIKc*L9Rfzqa=Fc-jv{B{(E;**DWdP@>1#DzS)Z?bPXs{vaP zLUZh*j2>o7HGsHp6wKSsUnvUeMLzL~c-zIA&b8{a^1SEHN9=NhlQ3#)$H=kw0Sh2+ z_A`lmcEh;|2+W0%Aq)Z^?}TP#Os2bKR2aA6Zw|CH?=)vpVS9*Q>~{YppM0+`r995J zY@IBPhx%a@l!C5F?*-0Wv+d1HG!Ov+xe-Hqzr zsY7PuDkZ93srZ~v&(GDnZvOe>sHLUl=XY(MXdrm%Je2YXuN82*{SDjoHXz~#2i^5a zH+Rd0(>TdrU*W=fF$q_KSt?gY2B;w9egyBd;^R+Kwt`}!Z^DXVo|5?!o5`E{n{A(_ zl_RkHx2BB{bXw zd%K3VVP52cra zsYkEqP1Dofu-J(bj|kYu&eDh(dMpGKM{0;5JuE!@ZwQobS})Xlsf%o9H8r(i5{3qV zht5~oB+jg+seMAdNwIJMH0LRJJQ#nvs2yBfT_64z4rldjtFJbEt$Gv9=D-8R50;5} zDhEFVe%H>@ zgxV)DQEBsIcV=6p_H(&?=-dzcjeJ$dPFN)08agb_fkMiqafL6Z zY>>e+v+&kIdED_s}Q8Ys(r&IviEPi*!C) z>vAQ=K3SIgvUxTrG~f7Uyf7rLMxP7mRAA1b%F&{mV1j`0D4ONu{Jju-^N>BtF36t^K)L~a+hY3Q7^m7=8A(>FB)hqKx_ z++@iKWAmyHaF#-w9V_`$DW5&SVfwZ8Q7Eh8)LSxM5e=G%no@{VdQG(1<09HA;_wvq zS-nL7`8{rE4Ls#j5SbnHs=@qL`L8h`Ya81oVOi9IsH;A$Y6z3`v0aS;$mF<7erZB2 zctL)$-u1D?5`PnJ^!5nBPv?8WdH zu7D87ziJt}EKA~$!uYYbKbF~yqPzP2L(QjfbI!}pE?#Owc+PUR)B}F~he*r&Yz%pM zIq!G9bG7|Q8YibLsiiX(^JgH6%b@<3{2lJ5gHZ?XCF=I}c7k#V!7-G>^YNT7sQjr4hF>G5<%sc#Ux^x{rr1xd)##b z1Uv08n<(8GnQn=3vVb!z?zk{@ z^?-qUTl1L(pI=GtuWQw$s*74P3_-50D~`8cYiPR7?YM0fmh{gxaLo#+2u&7?jCAx< zckt$TG-1A*3C;R|PVg~Nq}!izaKJ35Za{39e_!&+Fh3>D-Jj4e*;o&5v8poSzCmYJ z=Vi_s1tr6c*(7I%@Fq7+SJz_KD{ajNH!WA8LHYWTd4&w8allUNo@*G)pN+d+CiIWf zwYb%hNynt79R?rih+H{%n{EK1z*+$NKCfc`$h7;@9TsdVsyzHg4>KFV8n_u8#%9j2W@h^N))~M^aoy1j!iLQD zqHHEEM#|K2n9Wcl8|(X<@pv2fD$`)* zwfD(-zQesMcYtveD$osz8HtI03clhEnh2iWx`iEe$Iqa`Vi3gZN}DVyDFSkt+r~WF zx-CBEM?!P%rb!e|Z;T*I-BH}64d#Cj*{uv^X0!o7Y9WWxF^*0-tyIS)C{7e5Bm_O(3Lt8uB z?KWB~ua!VHei;lc1I}AsUf$5q5Xg0dIM(T>Rn385GSvhd-$-^biQ58Ea z*H^iThV{Trt%FhdKfV7$ghFPOX^EJaRN9d+aZzhH&C-qI1#uj{G+#1pnYJ>=Ptef3T3S+vW?at1}r1!L*R=|ZG%U7Fk@~Wxu zJwhQ$8~4H@zC@;(-;5Tn9?$`ttQ$Zv`OCdQ_zS4ot6!zfm3Txj$yfpOu2w zwyhCy8{d&PUtnofm8LHmdtqr|;SbzZ=E&s?x=QbIc)IC##K&?;^6-&)F>ry4{5??J z6Gh+28-)9#(A;yf6|fJILEiwQtG&eIIj@}?H)rIt0#nRW;1YnS+FZxqI3m<{nCp(e zxqO5+dux)C!fOM8sFr*0iW3FD>xce0ds8TBm>?2Fp5`d%2~At%PF(7?E8V1(#uE1z zhH>!z&>9gS%Ia-e-2L_41WukJ6NzlY@!O}nE@Mdb!6BBWq<5-o>ny48WpxrE?D50s zc+2I+S7ymlRaFJ$P?J$mz=4bjsO>6>n6|S}vCxK%_LP`Cr{=v84(|=h%bpTq8Bt2J zjpv~60zh$a=FcW-X6)Uxv?!4J>SWg1JoxQ9$K2ZA7rLk^z80n^Gs{cb_E3_w=w`p) zgj`V`qnJr4>2GzQamMuAtGO)Hd=V^dx>V|)ke@N-d|)L5mk1eQSF>Y`xrN#I?Uezq z-xUS+wyQi>H#M~pP71tq9-PET{0I8P0i1%}^i9i1#P15L+*~~4VTXV0H7H-E6aEPT z8M*+$?i`{Sks)_+jQjq=3sK!s4yLRJbU2mT99v)2C^jycM2K={0H^)v(IW!`10aKm zHD8tS%Pog#A*D@6QLx4Kc^ua$T7<-t=F! z-8oJa+2~hYR2~9B?OdY=;OG&+;m#sB+MdFcxvsVz zMRT*-CT?VyCHvNF@uV^X$^7qm0Xw~{p?SpJGt{#UG9g%kfR(_ac*p7vGtV$M0xQd9 zB&qWuerxNAYn7pqlt++Pv7tn~^TMHdNNPu zDM3uj3_ak|caNFPYxdBC1CRgeaJU~b92Y?6wnktlGIdGQ&Ur)dd*nLJ{_CU6aP8Cw6n8I+YiR0 z$oLVjJ0#-Z;80ppVhFIahlXyH4e{i7B13?A$H#t{r*tFY39pTJWNH_<+uiRbMpzAX9!btJhUbfrc(xJjTGjBaloc&o6RXP~ozssKDGZKys>tJk0 zB50636?)bW8cfRCJ-;(UQ{-xJ|0?8;$vm775KZZ|Ou@zZ7E6Ydz=?Mm#|$Y7h^~c~ zy?o@kg@yAwZgu*(=(-cjP9kHK%45soEqOr@OyPw+n`%p;TYVKbcSel4n{0`1ZW{eo zzrUO@<|&A{hK*g^+>Q?pvJZqxcL124{|12?jDJj+0-v8^m9#Vr!OG z9*?7ID!=VCEq=%@<96%6E7R#)lY`~fja6?&{={N9gGWb`*7$Wox}fwJHPx0{-WC#n z4dY|tAhQFe26H*IH0Ke@V2bvusz#O1D5SDm;aI{4DG!o#bt&;i|*rp zw*w6!$fm%ekE_`8*IrkD2+?@e@qq>#`tSNA+v^jNE8DD3U^oPeqVShuk7~DKWbjyS|>eM@eMug-}PWVVISVknt~72*_3|HV+~7> zftPdiE8c3u`-pWX;_=fJb}guCG6_9|HO?~e<`Z!PTfeG3XW!%G=^~SV9g#b>ZY4k! zDu?P;X8z2otgauy>mR@?%+zRXJX$fWm|^huGH_-1&SDIvbLdU$!Bo_=eSoF<0&5!b zdaWKsUo1x>D2MlY6{|*hU zpZ@{Zztv9a>7qX@iCA|U`aH5$V$h(gs~dSwWE31=&y9|j+rUe#1o}iQIq2riBLY@F zHpt-m-`zuf`gb#su1HG?|2*r0mv1i54ng?(on!Np5?739l5+{Gq5#$9Imm-Y0GBd} zS60&}&sye3>W9X(R$g{^0eWQ}2i}KysDk=E}nlf%|h~QB_n_ z0FG|^=8Z|jC4km|%D^*K*3=X$NfkmdwtU6>x0JZ4BcZ5-AteluWeNck?O&+J0R<6B zEu=aoAg}($#-{rtHH#kTcgEK>V_!2DAijC^M(Bjg2>5+Fae|6zZlCcN4z;`Gz%YAMsBbI;^~4 z>3C0`w%s(VF62tY!=l&$DY1Z*;D#g#+D!qaic-(06R^U)k8+UKJN|WWjcn7KzO;=r7kO zh@0Qh8eamXoC4-bDq}<5N`GbT!!Tc;Hgz<76YD$3Jbi~l1U^QZ%>W{qxzkQ0g<4yK z(5n!to&e*Jcf(|5DCS0b$$g&w^jEkSD+ZFnQGIFnHvpt*S(0^1eaW}NjpK9BViRP^ z6({psg7lxUonz_{Ug-*cEaA^!yUsgE5e~0a-~VsRm5GJ$sDRZ=wXa`aO?5~ZgR`-* z0p%tu+kTUU15!{Qcb0%f8*4}Mx()IqR^btT{q=2Ms0)(_nB(%qO7P^q?tgL!!kjyfLk3)l zE^UgR1IZddgpjC*c0V?R*f`=AggDrsGx_+R$eL!VAE9nDn04_o1f@kX^Yh%OU9vS4 z3bno-v*l`lfr-3_F4KeaFz(?$`Qq*BDB<)#`&!5rWcB8aE{J=9Qv-%L+1S|h_xH22 zvxA>_F|%KY(T&lACri9bcyQMdD$j^)c7=XL-Br*VoeFQcv33@_2n>*dvI9KaG`Ft!)DeD1K86%UK z0p0=tyTy@d&V)3gE^9xti6l?5>grD45lOOgbNk(3?HqL~xUX|LrZ?FQ8b+6;|EaPc zy*D~XwvmteT@LHY$_n_ZNIAy;sWR{@7dN-ojeFrN5)c@JMvSifnvt%E0HXM{F>+r` z@PChU)lt`+lK!l-gfHw0D3!}e1fmxj8?G?PjPne*-2-#2&^u`uGFb~Vckzi6?(&+1 z(Mm?up)X|G{<{UpX*{UJa0x%dJAUx4N{(;&`T5_zeQRjYlhjRkfa%6Idx1eO*H-cEu6Tp`|MZ(_ zYlTg>J=$b&w(ikVPX%7GCB@TZlK=f#@N@FVwuvg3G+YN7@gov~+2Owuco*{UTeKxy z{-1vPP!{KD`y5NZe587V+-@+RmVFO}{#~L0>bX_pvJclSdRL`T=WtR zG6{CWB}TYb5w;hOnRs~r46D%>OZ>(Vk&&fJh zoF0aKQp`0e1Lc389x0bCH5%h%fF*EVkEYcR;d4mh?O0NPni~3vm_F^$#WPRf{&qL` zgzG~00S0N=E41J6Z~9zP|J)tRho31CuBwvMWDG$$tnu++gvJeB3Tl>`S5s_&4zy6& z2Ya~-^L8~hb8FHTLVn12G>Uy$^bLo;Ar5_ND1vv^mbnZ1<1SJrONa&#di|T2(Pf@c z(`;~0J4$*6w0_dBn|~95GN|iv>#?>Y*ynm(2di3_?HN4P%jL$)BhdfVZ*#Kjz9~oI z5+uC)Marr{)kgo}VXRs%vPSaiB(!GUUWu8~R3EoXTReS2B17{<{v53LL1wd__fi0c z&AbQFijnsrRNtrbE_=SRNJCc($Up(vaX)zQ4ZyTAi9YBJ$^^*x-DfTKrlw0rThkQ4 zygIG)jfftBAxsjd%dr501y=HgJrl8;5;%)h0U9n%#l(#@*G2(m$1lr4K3#6!pDp`7 zXJjo$KK!L-MG=|l4||3nW8*?W!ao=V?nRHFg|6{f&Imb1U=rZ<62F`0+<|pqD|Pmg z!RSkN7l#Rx6|(Oq9_KObPR2a1o!BfL_)@<#(vGIS1ZO7n!_}*91T~+`Su|f^4O$uG zWdJa{0>vk2*jZ>0%xKKYjW=6lo!e7xbBIRkJNOv&8KsKM+17V30@QLReRkFSrdsT% zr>3J`X{q634vCgE*w5ByUZO0AQUG4VPY;6^>(zjq5di9_lQjTW$sLg4X!k^2dRClb zCT|?hA?C8p$_-J?(wFrRGWmkS!oC%!8~k-lP0DBOCj)}n!PN2TYo5ICjUUl)fj+#@ zXTaQ1Dwk;v)_3?3xxQNd0LU>z^k4_{i=Wm(o)^7)?V^6v&Pm3sOFhwd2*&r(^_hnm z$!_y@Mir}DDyhB%+O3@xmPQ5E=Am-TDa3nC;fprAo`$T@JiNeZJ#9 zcGoDD)B0%3#qGaXp4@U&<+cR14opLOBXTum-Vr^qO?(#}Nv(JJ@d5i=(Z z`tK)28v89E;s&t(O^T5idnurQz{J#j{Kk6gl%pl9x7{>ufD>uj?V^VGo{eSpNfD;) zhlGRxc62n;0Vp05R8Z=7iK^ETYB`>BrWVR+q8T4AnRcMdo-{bh<>oveO&sbH zLIRXF6QqQob(h;B04_N^@a??}10WUM$%b1mz_g;_%odk*je--q*b#xv?>4kU-vR0SL6P9G<+mFN}BapI6=He2L?Tdj}tEd0-Jg zp^Fn|uwqh(U@Wx#xsOI@fBTQIJ1HiG&$9r1dU17sq^Id^Ss)pSIm_iF^kV2b3m9bn zXkpVnh50YlA==VZ&zV(jrw@%0ww6ct`jPzey zrT#?j>nlJj>Xu4|T`b^8X;<4K{KeX~uy3M^2=g+rxQ!~)dYKPa0%ss=ibmKm3wXr^ z1?wTy_K;}B+%Qz5M*A%Wig+l_2_)u2pX)Cd9`Yy}b+Vdhja=rD(>d{{Buszn3DaItbdQ=RUydd4gmYR1s9KP=S(5Xq8~5>RaH-5GWl zsO>#jE!;Q`j<(jM3*%~uhBmMfF>6QQaB5t&xa6LNQQ0Lfw#GuLqT26&3QB^zRvrau zkdMmVId?+vkz?HK)7n6J3`xf<)2*pX8k&<k4UUCOuA?eMM^Mxf-mjX5YLi%;raXB=`eS5EddW&)6Z1pA3ygN z!v`Tan9-15eTs)c9ot6<2@=!QZRNzc((0{H0fLCo)z!>LLP+Wdu|F%R3~D;JQ!dXl zLH(X|7j~$%416|hZz;fco)d64F6tpTEFowr&JPu1CJie5{9?WDs=OnXFLlyU8H5js z?ZgvF&D7aZE8hu#EGOPmiJfQgMU0|@DhCN)Jyi40nTv0k*ZN1X^Zh(oo3~Bhh0Ru- zA3JbRwM5WFUbwHE&@4TcZGRR%3)b+N1P&nAcJy0(FaK=aWYYpNNW_L&HO)QD1is>g z_*7F?wtEOS!uj+2J>A5wUunSn14&4>&i)X3hlP+0#$CUb)7AAvUL91j8gI_N?y!IH zVhjZL&+pGayNL?DnLA55gXz--zWK3)CDc@AIO|F*t2NKilZE|JU8dIEE3_HfKi zeU?93P+3@LZdh93JJLyUJmZ81DV@GF;^YJx#{BVETsU|0%3}CC0xe zCCa(q zu3!EX*%=;8%q5TT`9n{5Pg;!#T2bCfh{B+uv6=HdPyX?=*>@$r9&U4VqyLyvXWue* zd+o|rJ;d4|OE zA+LYI;h;Og;+Nopv@9TdzeYx~t#8005hO%ZOe~R8Z{p`q$5DxExZfqb>m#+8sAx&u zD%DWk*2L5Mq;1BIfbnZbZHiNOeSeh(I}+= z9VWj#9O0CfW;2-l8^h{pi=b_ia{dNoDTa5k(ech}`6K{ew3_o%aDK&d` zq}M{z3-vXWcrAZP3VALQaSSbE@^ok9;i3!GH$^^6a-a7R5`XKPQg2)=@xrqZdcyTQc<=ku)%n-eseWJeu$oby%FPxdqC*=pw8=7+jz zZ4%zjcx@-2b=+YJ8_v}zkP{z*vXeJZ7*ww1G z`W&a&_@1QBdzaQx=7oa166j<-&{1=>BzAURORlD=?cLA182DB7_4K^#UOSC$7+pCT zD1}F)mZXSQS=p-E*Z=vEdRu)?3_YMLO7c_LZ{yHr{RY2lHM5Ygjg1D&0rx$#sAIq3 z^z%!b(o49{`PIr#2547S>4Rta8oTcIA_$mZ3S8^=0Z9!w=Y$H2)q!LX5Uj1O30psV zv$;A83JCSE-1GLNyu)uvYf6?O}QjO|BC~ zIw^U~q`em-toYJ>170wU-=cpc9bbT5U3XZ06d4&K2XoNz*7Fr$M3W|hqp2cd(3Bs( z!9dHDC4V~3$irh|2c>L{K2%ZJ0l?Pi^c3ml#3e0HzBu7=Yf3=AxVG(ZQ=e*K zL42bbnu*E$IPgEp4^ESp$##bKeF*|FKc=k88#yN(GQqY&?2r1k(p znPVVB!s~EjTwd=^Xvec-Z?<#tOGW|Z{%MDnbl%kiR7OC&FbL5;@b)AT0}z}+jw=!4 zxt7*3D2ut<`mMBC)M^O>hcHOyH-I=jnj`~$i0CXsY%0aResJG6uhp9;$!&7s8ZNHS~2vMa+!TduwTxU zie-9i=sF%{F%)-51GG*o;#b<}{k44t;^4zJT(&}z_@0Vv_HnTypGIQ?eEGYP@Fsvt3eQ;ee za~!K`CkT?=`#S#yE_su8WypNO^b#HfCGlGlnsShb_ZI(6>NDp{28Hp*UL0{O$EY`9wy`b%gINAktJ}Yidcl65EEydGwnDvw9)dd_zIRn zSIuZFy0jas$ok&BFR5*!;#U$FlS_1`9wd=o+d*oGhxbZ_nRY(kVAdZ&1=7~mXjc|% zSe|u)c@yX*1<@$@)jQ9bhJlNT&cfNICg1%3czf%hD!aCCc+()=A*~`xcZak}igdTq z-6_%t(%k}5o9>ow>F#a;0qJjTulu^6=lkdVX5K$O#u;ZEcDT;-Jl3&(b>M^Q+Nr_f z{5Fcu(QGi0&0>l%Dd`nEsI4+j$A13&1@wTR4}AgNE6cX7v1ou36OQJyFJv1eGhZCg zWe54M^3#LSy=c6W;TkF2HZ;SS-73g3jlGy!OIdUWE?aLTbv72`H}@mitF-WIuqbzILDb~rB%(^*v%tJjwA zw&Rkk9H(UK22lNH9Lh)(-|2lO7M9B^PqAR_2x7!w{YU;^({(8H!G8~x#vb`IYJdgb zF}`4bCgRy92?Bbcg&Q*ij?pJ1@oK^89tR-|MiMAKWT4A8l@jX2Pl|WK`4w>tQdo30 z?gAM6MFqhVZff5OS~s#|8r?4B$kyx0MZTB`JdcCo;L!3&405Hvp-GZ> zi9}Nstv7$hRX`BkS0}z{u57n?8t5l1+Sj9>0Jo9 zLjIW-7B}8GC&h8dT5O_tm+G@1Y${}GCQ*4h*+huwcvbc_kbH1*bJNAV)|uWk0_;R; zd)~|bUh9w86~dH}#FNJh^$z2Ca*{$LfT#cJ!ARNjQ|V!Kl%oDHka!K`ov;91%lnPl zyX)B+32ty;wwnsm$={1hx@8)8llyMCmw8)|>`VVHd%TI0i%U?40W+e}iuQ(N!0&@( zAyabA9S41~I^0M~tiXK&7he&<;h;?wAvG3wrII1vq2;zMY;d z+mbb`lNNQsDKgaQx<_n_KTt|Q)F8sjtR+^PKlc5Ww8$Lw*%tf}ty^K?ztR)oAIhU( z1aQ=%g6IJeZKIdC4Cc^&Kwdj5wM6!Y^e+j1Oq!K*v2n+sg$*Q3Oqx`-^;D*NPx7SUJ#yDD$LHtNi|_V4rVGn33xp6*1{KnoiC6(#ytZO^3Z%+KFb zNz21|t1~6<&lay6DnBD6D|3h-(LS*(P_;x2oN!s_A|z+H8jeIgL6c*6OUDrqhcec1 zq|@xa*W^Zw5$=)ehlqnR;VS4rrr;r%CPnM#N}fzaWvDq*SfE^w^H|r1VrWQYsd8JL zo%E}lS+j0VtxFH+Yopo{T0JkPTWZYr-g}g))A>ulmy^7oB!wGlHGF*sUh5zx2n4zx ztnd5Mg{Yq6nQLg!#zd+5OVHu}a#vGGGk-4U5MedGUz$_z*75f@l6ztXjg8Y+CIODi zK4abxB8%Jyl=(aE*&E;0^xSeGQ?2*>$tf9g;JeT&rJ7xSj!5UeUOW)zs$$qf0$>4LyyX_`HMU)+ng$9E3Ew`hEdf;Mk z0f8}e^R?C0gy)JcgVT{YKd!V3=pcXp`f^mSBDCG9iUqqodR=F4$;ofyVpmj6y0>} z`0yjUu!4R#nJn3I0(*#5l$+X)+wQm&bX5N>9{!b zfrGrCjd~(_es!&|8$cZ4u@+K4YkAZoa?kLy$*9Lbnj0BRq%_IZdI@Qp`J`<|LW>`^=%po}bZIZEk}f3f4_g=;f<_KT*xX!rR{nsXB_v#-}+i zu4SqhAQCOK)5tOIu$(nyR~AkMzGXr8DdL&3F(36K7olg;KshxCgsrtOXLn2k>KQ zNq$d0w_Y1Hg$1r8Ae%n)FN`6FvyF4|Z3BrgMo+bdnyu5CAMiF5&h%>7|R4*d@5)wKyqdB-S zKkDg;Yo)Lmd{Wi(+5ITEeIE1tERI0{BZnX7dxoG}Vti3)9c_=B2m6cWXQ!iGB*cb> ztaW>#454!@006!Q3MLp#p1|j>%k5_GbC=Na{`#d?D%IPkkPTiGqf>Lbv0dNk#+4uF zL8SBL5@MR#ne-KRKm7Vcgn>igEj|JQ`x6@S&HAYvJ8G+V1ozyGa5dn*YDBw3vJFVMf#`9t?U&Z zfU_X3wzRhP2AN)|^^;O-mpbK!0XU!jVfHXwiEUq<8#aZ$?JghrM`+c0v?8K?^?wjr z-No3-+cV4WhPKz(v}=@6p$ntXAZ}~hw)1TZ_V8^d$*S6w&xQD%?RD?2j=)haC4@_2 z4J2A~^{xs6Y$$JcZxa z^aK*&WI!t;c|QkA#H*ab{IN4&9#!3|7WxQ06XuuBAhHaQHs>+C*f9Ih%V-!2b6YehzwgM9T$ zes(xP00u8guZ`koNk@lh+{7Id`p8ee4ys6WRY8bLOSM0wE>wYuc+I{j%Ch*X^LrVH zR0K8}ehYv;d)}Q-gOo#t=Zo7g*#m%^`Qna1DRj`3x&clSMvaQj0!M}BZQ#X`PvI_+ z*#&a_Do05k*aJioTD~^R^pe-9%+s7CFqQVnXMK!-kdIdncFY7w-qr9hwycVaguiDK z&6J~D{Tmkv^!$2YJU)DJ>UzR1z&=f(L`F;KH6I5>#3=z^gVkj{|Pu^1|w=f{A5W!Tiy+@yWQPxizIA< zsL_o0#3K-eQ|WT7Yc>SZh2DUnLa%uCI1Hn=Eu4_`=|*k-l% zmO2h-7Lg?8LTBz5V`u$8nN2f`2glB0_SUhCnI_=W>wllx#|Dasa9ZGPi=LHn)Ddw$ zAn`>)CrWj+0oCKH{49&-DtbOcp2g+D)D%%<4?q!E(xK_Z%-SW|)ZGm;6z^~1>2(YmKi`;r_j}b=K`SLY3gjkg5JB9?8f5WmN}r|3#~9Ps)pjo` zrMn$b{?VCOVFvBrx|{SLgi2~5tdg~A%GIK>HE6pm0Qcm?f8SKZ&i1*59^t_*J8Too|K|ACfhF^)q<9F9^LHI)$e-#*qDX)S zebjb{1{d6;2?rAZ9!z(`eYHw8Q7MhJLR^{d;n)h5)?(uLUn;=wvm~jZ&h+J46H9C% zm~9Xi7G)COSW-B6b|B9v4kLOry(!elF4BQ>qC=xky6F6PV241E7-QP~_SL@{gyDDH zpTD#xX-!MnDH1Hl4Yju+Q_A#*l9a3Zf|U$#E$PvVXkV*C7`RGghNw`n?DN$XD%dvO zIwrtw3YhCa$O>o#$RBM~L-FS;wOn4N>+lLTVuU6g^j>KEuitW;)OzY>m8+$xAHF&N zrd?~r(cRgEPq8ZzFR~`@U+s$Bl%a=nJw`-2o1fN82NMmTqf;T2w96ZfvtHC@Hq(gz zn4F64%V*hm0A4+?PpwZUfHV^D!-?`=sioZoO#rR(>8g^_pXt)qBcJz}xOVgYqu$F# z*xlU?k;>V1Y{1z;GSWZwY1_R#=+=Zux)oLP#)kgU>)5G|Qgu+^hrN+0FDf(#=rA~E z0nHt46e>thW)^P}LmlV5^9C7@=){cbnIGN9WcpXE4WP*o^#U_BTLTa0!}GC-Z}!KmY3TBpa{4EH0$l3rD6Up0CMF59|Cn=ID;eHIj9yG)$2>m9^i%t z1}cn>vKxH}v9{m4Uk94t8K-`~fAP6u7j`ZHcl1OkOgvQ`_`}H`nnQ#!UErQ;;@AbM zt8E(5clH>HlMhAA=KW$%okJ>p0jdtD(ALVzn9jcvy6}n_CY1)r24j`XQxO`=(~Umw zR*|?jug{NkGm6atWC7R2W{q z1nM~xjd#1rc^{MGSAHzz{1Q!H3nBW72+y1#_S|?viJ;*T>_%2Pz2bEaq@669 zKSag}kr2M#$;pw9?3Wf05eMceSu)C>t!0S*K=lRFF=S{0spf!YX6Os3YcZDzU>s>$ zp4XG&ApQ{j+IcjC+jvSL0sCGOy5-?7$}M_auqg#+fXQlLQ=3`M%j*tQRRYP~ot>}Q zQ{~!aj5HZ$)3iWA28_9@l_Qj#LzdJl2C@cVp9k~H3kwBsekB2GNx{chb$$->mC#_+Yu&ky~@J0;6-|bSpE#oD_Kyy87ZJ!Tqw?HJl8aC}Usk?w^$m<6Y6O#O*KEAc9-9qy zhTtoN&3J)uPasX;(@-VYB-qRu*sK@;z!k7}@%zGAvee4=Y zVDVsb?9N#xXOjpdfmkqZjS;;qmCu0$BzVTM(d8Fc*VJ%xaspao864fh%OfJNXn6M% z8ZQb-21|i7&MTwNY`OvrW8S>HQ90+0(EUe(Dz7%+$R8)4&nd^maE8fU!>A8WmkB`= zg@Yyuxby=Q3grNy!LNUK_@3_u1O zK^Wrt`6IHi%Z$DF7uCj=;7PthNNk60uM+Oph*A7_e697hrGr*^ms)>mn zZ4K1e*uX6z(grxNqk4Ifj>}%%c}MmLOw6|2UCaYDsfk7dbYOmrH5{~dAe-7yu`gxF zlxg7f=8iJbY~yr7gEG{TJ4HTUMTMfOJT>#;pmGGrl+Ba59kyh5eUEo`)GLf%1AHkn z2ej~Vx$lHCM)uFsmqtz5lN|YlCfrbK*#4 zkt)QyEwo4YM6j{o{Y%P71YYP&wHBq?k95TW30go8W*YL~{CXoGO*2ON=g4JS@XyLL z2Mk=KYGNo&t+JZ8vfp36TO3dj9A#Y31O4tMz5)j6E(UV5C{CHLDE)>*Fb5URSE!zu z7b|_w2t-c!egⓈ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 FV1fwn)lmQd diff --git a/_todo/image/scite226.png b/_todo/image/scite226.png deleted file mode 100644 index b0a84537a914b7a79a6c4605fd089aab70f36384..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 40393 zcmV*PKw!U#P)pF0drDELIAGL9O(c600d`2O+f$vv5yP zfP?@5`Tzg`fam}Kbua(`>RI+y?e7jT@qQ9J+uoia&8K~#8N?Y#$>RYkV<-S>H) z=eskG;JokmJokCSHw1OmF#{b>=cb#Sv!Z~Yjf_Z+l0kB?k(_fD5JQtBN6E=18&L!l z<2ZBY-uLqTt5)sWwZl1QpVXYDt1J(@_o-dG_S&_7XYEz1R{hK7QG2^zzTWwnYu|qR z?H6Bsv1QASJ9q9RB;5HI{GXsC{6V|^CE;Iq!gut+H$*bF=|J`s?U5C+x_LdyKJg{? zux}~dv7TLRiFMm(f_n+GLf#ys9qj57{)J9P4N}@8ugd>PJ$}O_$yM*i=KV5yiMViU8@aIMO~D4;5lc^#N0|4^e2PmU8lD z8|Nem7^k%Yf$udD#_zC+KXG5^aMtwy_TT2R1{*bV$|GR&xGwP+6 zUdqp}wRGvSf834q_rL$c$bY}L({H7l{uV5GY)-Ihf_?w%-+m1_{~ERQ%dfw<@4x-__rD_}vCsebkN@b@sndT(Db1WYGfFl6=d5mp z(W)wpdS0lLkE52nv!O-%4izg_eEs#;d-UirvU}Zx$*;`#x8#@l^y&M>7hfJfern^! z_eYPJJa(+iQ^t-(erp`^IOL-7j2R2Cp=NxG@;DatOq@7%+_)*D$4nYEYU0R| z6GR>{VZ?|D!-tQz=5fP@u{?aZ*ciq)*q=kkvOJ7^4jnpn$Po5P8?-%S$e3Zn#ta`e zdf2d0BSwrGK5XRh;Ukdv$B2UOjvE?B2b5w{G2VCtiE)wZH!LuU&ZR%+o78y=Y^$d^Px#Sp+O%ntCQTbRZql$}lLqx0*RS8WZe8R?wQDshC}>oxpkd9L$PM!H z8sz5I&&jEmon0?03%PE3dYyD%?X%L|Su;N`uVzhTmh#xPS*A8mb?VfqTenVKe6o$Y z_3GBGUk|xHQiBE!8Z~Ovuu)@tHb&x~kRdVz+5)+GbGl^^d~3)b_ki80=kf9Ub8T>I z#XZKo!(M*NaPM#j+qG-oj&~3A7X06#1O9#KCDwOd>Ig1&>h$uU0>_UK3RIL>uay!pJT_4J@Ld7B_$=>wtGz<@w5YJ zr%bzc?%Z|m+&MfLc!%bD+4rI({X=Q{cDbq4u#2VLBJJ6|`;&9$rgd(2Y46Sx3uYpp zUO4mYqFKl#i)LL|Jp01pSyy=eY{~4;7ti`)*{rXY&HQTV^lSbzzWr+1tS^?%`eN~{ z&zH>pZ1JqCsA0+Mi!9GMzhurQJfB-K=k($^mv?M^E`K}$DhWt z+`W6_g#Vo|3_9$WUw*Y|Q}O80liqxD5+JK^cFH&gS{x7!89R0yOXHo1?;nR^yyO@h;-oO) z7%V0V6Nm}Eg9Z(fv?bJnv-qI{XIbavoJG&ZUE$qb5SBj|ot%UPUc)0SVG*C;t??MM zM_8iPhG{Q^Wsq&$gh94J;|2{H*Q?j4UY&+@>olxgt6@QY!~FaPMA*DMLD=l*@@ zGc)Tl!lnYUwNg`Rr6ku%N-9VMTNCpWYvk9cQ8O{AW>OM^Y*KO_Ae)pVAPaO7WK&Z? z(%jUPyp)tYe1f*gDIB$_I4UVpp(@!J&o_WT{_B;#7X4I&Wk(ii~ zlmy78Cnx*T(vSgJA0V5V3C3pU-{ZKrJ}SQ$r+h79Sk4NFXc{ZV&x<;U|&*5Q4J+tspJ7>5i~lCdi9h$8MVBEF&#g z%TfpYgI{I-^9;%oW*Jz~qwoR9qHh_0z6{8s<53TMm2tMqtFH>qLI+?S^sj$?4I8h$ zWM16`O%$s^)e$l1*MOWq*U0pEs^957C;Q7miMS=6@^NVE0fmaq3U0yKt z;{2lX3#NUtVA{F))6dSIewyctTR&`-#~@4SSW&#S=j?^|-+w=T{1Tph_W1=179Kxw z3WTLRX3V6qV<|IzcHFqhE`Uq4g>DPQ79Fck zpFU7&q0d5@1!tX*CA?Bnbyz1}1M9G)zY<6-C&Uuu_4QRW;$M zG4!$qP-7bbAa&~^H>g#sK|w+N{QUYgYu2loS1&iOUQSNkoa{Q;S#`2_&djKjo?gr6 ztCgAx&K9Jk}^W~(b=A@IxN3k#_I=zEF}(ABeiY~jaI6(U@Trj@FoJnGHsT#6=20bT$SaTEN86L zVWG_;OHCGdWxwu)g`g{Gvi$7|R0UKSVDZ7WteUJ>J=Rb~RXubkXCxpCZ9~;$Icj$d z8!^6ltHJ;o1r$Y=>9c_B)DCSf?A&%_`UKFTpPn`O)a)t8XHCAi`Ms7o>3}RT0cqyGBUv3@!DEtuXY8N<{O9P=6Go4jFlNj| zN!W4YChfI+re8v259@<;z#ESg~g1N|slxTDxl1I+<6pKUrS65_!$?<*RTAjztY%G-{hQ zYyQj`b7#z)%RcRysmwgn20rJ2&g}DTk>7rMj**!K(N?5dJUQv?N%ItUJVCRQ7G2rW&b;CrM_4GO-xsh4Kr{7qo?LOQ?kbLFFu2 z45TJ22`e8GG7?0hz}m2gN1HgyUrU8PtC|`Dn+Uj-fb)ST_Wq01pdlbzuWp07bsE&J zUB6bX`uPR*^78@Nx;1Oo&C9Ekn_DM0r*?LB?d+`DnHjZ^)6?_Qefc0G(?C<0iGbl1 zh5`_lz4hm&`f^j#z*DHMl(Uf2(z1MM+2Cxtk8u{6Ae)|!3enMHys3tg6!StJ9qs)>MG3=CTVXv-8> z4q0h2;6?*tD|Fa;V5@;w0xV0AVN<5YvUd!EEKEBv@sRu_V7UoM7=lQXWlAjnX%uQK z2dqRa_{u=b4Ndr+=78-)mMCW;I~B((6j=62N-U!)GZK)wK%`^Gjz9V2lV{JK{V-T6 zR?}vlwurQqr;{g7;$`m2l`F>XEmR8Z3v3ldfvwwElAu3z>eO2=G%eXyd~ouchbO;z zWb()(Q%0V6Yt+fNMxB0Z)VZQJkuMazd2#CKD^o{bojUrnsiRSe9EHaAfz9Eia1I)1#!D2$9>IlL3Gr>J2=Yyc1-?97>SX3w5C zckTkfaq;41OP4NRzI-L1xq9{5HEZ5^=ba76>(_5wzy4k14I7X*x#f3JY~8x`t5>g+ zz+JLr+2X}Zf!&1*EqTF$C4TdKsLw3VLuRTp-{u?m#BTuYnLi&Jix$jZxM2Q*`Sa0o z_Bo#t`^!^8*?Bz8or@nBGtD;AtXU8a12nN10$HaHAX^VPKfi8%ejVhRHS6T% z)y~VUos&~5C%aa5cCD<;g3QdCnHe=Rd^LSOD531F9~r7EtO1;x1W;rk)y(O>tn~Ek zbYC_;`L`@{!scdVAhT_*>Vn7_;B0bIdSW8Lnu=VbMp}&;_)JYoOoNF4nM0Or1uzw) zQrK^Doh5-|OhC85J|GeI*>Smj1A z!g4!-slali;zfhmW636qPcp}HYb>d-h7xPoVyPoZm6gn{A~Ee%*au9+c40sEoUUAN z<*KXrK=yqj zeZUip7;m*|_(}15`^UU-V9Xl_SsrwBEXyax4mve%@Y!*L&y5>gGGXw=i9;?=9CBsi zkV##;;Y9z}NVaW!dzF_&`3n<=e1bfF$l38jPLCgQa{Q3vKmUUfb{ymExN&&-oe08Cm>@FL9P}-+-w|Qu zC-#6$ixw@0Tf&MJD_5^xvktHXRyRVD5FjobzjVbPez>`~7#Y7&E*bk#;DZl}-+%vu zci(*v$F5(`n7elEJAk!&HWXn}hgYqFrpz+enpY#QSYc-R6Q8SAtzNl`f394$3VGG4 z6)RTZHvwq{CHljE62**v@RPEPr=>hCF%o`okQOakv~b}<;20nVd%;|yEp7m;x}?%V zpM`xEMgwq`ECw{{MYc0n!qOO*_hBwMHbq#Jc%|oDKI(*88Vw7NuuO}^OK^P;YXls}Yq$!qJW8KwQHsD2StP5d<9hMu)xdDgW1;dO(7IR^F zH4HlRF9s+L#=b~^WsDWZ0ftttzzRDoe!0mez>Ti>WN%Gu5P+vH80g|jDzJbn01I1| zEkW@l$R0X$hpr`cHcFy`|d&A_YCU3e^B=WgS#Id+~dgL9><6DI60)pnPEN74(nbrto!+4J`j}7g0WN5F$Lwg+>+G{`0dx!Ks zwR&m8>Q4c(gjY&w+m1@e{*&-3GJ`C%T?SbRR=n-js8Iv=hLl<2ECCk^EU>k9E%3VG z-FG*El|bs2EqE1xCQl=ZFljR*H)UtSP82}NZQDNDvSk}s4D7!D{)g|q_r7c1wCQ~% z<0nvLFq-nljWTZn@LArt32n3HcL8+wpWtA7`46~A_)&q9ZIOgV6wHDfC?xvU0FX>ab)e2orzZKrhYh^%<9Fi3@#E@FYy)#Qc*2JI zmAW75i<-ciG5M({)~+c2YX{^lT{~>=+F{4*9d;pi>#)CDhlAbQecYq{(H`xO_h^5* zNBc9#J=>q_(SBUVj*(!;Q0v8hkJH7*rVg#9v%1e=(xLk zrybopebl|vw%0oyTRgk&6MwcrHf6_20oi~5_kZVu>d;|DhDiYmFA?@HfB6f{tk}TN z4Sf=A(ZjHTgq`3ExCG@Lcm-R5OK@}d?mheV?ZeN@fddDT4<5uXpWlRUQ3hpk$eulW zVaDd<-HEEyVMcQ2V0lg#IR0jhUMv2@o^5Q1GgxLe9G+Q1Q@3qppJX0V)2zsP{fG?SGmoH3)&;dlMY^be=KqVDZ5VGR^**qvc?UVt70l@(6H#qXU0LpdLW0(Y`U=B2y5V#2upP`10?8z#9o;J+1iw0 zv_!@z5zlafVj0#>mUC)yEV8WVq(sbYnX`;-z5$Ctra@a`ZkACpCp$YA3TRdqI~>K3 zVQGcZ%E1aX7MxASXG%&cCFrmOSw8T^%>_IWXOW=HBIS~S)=+8Lz?Y%Vl8aYhO;-I? zljZ^%gd|&m^!hNYv8JtD)n1tb%e=M}zA|HhAgnMESan#k!x}oQu)lKit59O4CxNgO za65qoudoz!>xPa>nk@RW95R0N1 zL+NJDIY{&7%^z6hfxS~FE=YN7Vaj8RQXX5D^4N;B$5#0sU6=mY#`H(uPyh4g%ty9n zKC(UYkzJXO?8$s&U-l#WvmY7Ru)Ynl*t0+TQRIDDkM7QTbZ6G1A7wqdHS5vMS&x2@ z`RJz1zpT%Ed~L?#tJ9xYk^aO|o_7o%;QJr<0kSj_LxbcsK01q82{0G@5%Ul5z+;G9 zj*9`YNO<^3R|WEbS}0=J1FB+!*otqlADf?_;#^FFR*o>+iX-PK@vAjv|;VW?5p7!kr-W?eLwt9iD29w|uU6w#0Laj0aXa z64*=xq`(>~r=TJJks20pmIlNE=&)j#OR3F;uw0viT@tz-4G4ii(h*AdK?y%oa5fM4 z0vSOwPDa5;AQGyikqLJ)fv_x*)+rNxP4DK|tT5> zxWz!>tgMg-D=h{#Ype=cvc}S{j{4qUH^^F@>Quav4oi5Y0WL~pGUDz8LWw0~tl~#t z_Z%P{R@z=ATNM@7^dF!RE=73-T^U{};W>Tksizh$TEv_gj10)DqegN-N!>t!4$OU* z9C$J0&~f^VnGiSZirly%GREjo@=Kna)Ry~+?A#{}E|0IwoHe`u|Ni}+DP!h7TNQc! zvsD&VtFp9u)#cTztg2CEU1H^TlPZ0XTxoMk-lu~6wQq{Fd53NjkXhqV)OOqa6ocQp<8h_qC zxOeIU|IdXB7o-mohQ6!qEFn#nK^9Ltd522Q;(p+{1w)CjUw!ozskF%d_HX}2Hw+up z+rV7Vga`|a0geDA?gWMoPoF-GQAi}1U4kYQJ9Fj?4#7Ynjs=%d36WP#t9m6QKlX2TtL5S^a5e}FAFDGW}LN~3l!iA)ba@_hHtEDlNIIy zf|2wnP*E$DM2i}040}m;0vl~flU=lEN&EKD20F5r~W zhcf#pQ)V+C+nn{-mh8tq%6@cb&SS$HF&$Pm*tU&tcjrE~BlofGIe*!j^Z4fM$3M(@ z{JpHlH)K8jPS)dVvL0WV_2kk_mKSF}xntyj)c^kb^XE;-;sJkZ_l5iJdj0BMj~|Len82E0*ejeEXWJ&;wx-pCvD&puhcNULcN1(33!2zXLio4ZM-zsnX?xj zWE=aNFVO?uJ&!$nSO1M{OKflW-?doxSL@!7F9> zih&pZ^ZiVXC9ozYCf2BtSiO36GI`-IqAde1Q*%Mv6sg!s)mGJ)iSmZU*0j}#VTMN{fN3K1--&w3Qo%4S|fblDRbUMT4MZH!yq*OeZerw$jy_jI%Tufh-5) zv!!yDYqi`wOBPzWA)O64cL}n~maXjc@~a&?bv801Bi@$-Bouh1uxnxGuJnlve@&Q) zU}fz5>g%0f?PlceUaESvOAj@}`?Fuw|GszTl!bZKk(cCEUz%5AWj@R63TkYuU42vS zY9H3FzPWDo?e(jFRR7tX^{c68VcKi6#6eKS%NM2eidFQyHzW=uZAUkp5ab2|z1P?+!>v z0C;Ib-N}Hy5LF z$pW-odseaQ2HDNr&>?hT`GfNMB7!W827oM-S$L<-o{dRvZ{tS|vwPooV{o57{knJW z0cS+awdvRqknQ-w3++KzhS%p_Y}4k2)~$ipwyj!$u+MY6a>6!agl*EKCBti@77ZIV zZ`81P!v@V7G-!%kzg`otlGCsery&C(`K}fe0I&55^5MJ6+^T5MpL_**KZ#9p!hz!1P83pJKOmH?}A z7CQ~~*3fMg8-jvz-Uw+-P)5c`!{u*xxzN|e>@V&#ONIl|`dv*2a)yYUHe$^FQeC@* z=d5Z*FboKW4S@}iib-EI4rWeB5Dv3e&MIbE##h5pmWIXHpN7|g;nl^a)jspgGjQhV z+O7Aif9;Ok<+UEjFSKVP^#SsW9bW6&tiy-3N5zdH#as1ONQL_RpWOv|-lLMp-MGWUXwHwYF*YJI%5; zG|S%9Ec^YI*_&HtZ*85ky><4k)>*sTWQ}OuQl4dG>z4c5WRGm4>}k_-&vV&(p3B+s zTrTp~HhEiG=Y7~R@BNl}n_A|rM{bd~rg`3K&u;9 z?a<-n7hmky_WAa0+Pv7h^^2`qz0j&v+my~vu16YHU(Z=HE!Ip z5%AieMT7dy>(_5quU^x-b XsokV@?Z&lhH$tvet0B(~F!@T(zsk$2%jN~}sR8g> z&CO*w4>_++eoe3vsxFA!s7@V3A!t$u71n87rw*zzYbz*V6|y;91@-ds>an>7xu{dj zIDj)OTw-%`k(n<+F7wtZ$jXMd7RwnK0Bg+*c*x?Dft6+EzlBKzY}OW=%0;ue(wGA* z<{e~WEQ%()GCx+Kt_qlnp)0O|lBtz8jBPK7SXUSqK!(9lwEqNU_w#~+i{}6WUb}AN8-qvo=sBQ!kN)_Sxo59|$i4c!(W}p(K79xC zJOsIKzaf444CyWM(B6H9_USux$7t%A=6IUw&f9h`|;ct zpCgwnT|4mcDuZv9U6c5Qll*$8*S^@Xy+>pcNI3; z+quy`o)5j+*k3;QYUBMp?|HQe@~&5!?s%o?_E(y2dAaF_otnM>QnO7jHQV@7v-Q~M z(r(ARnGGJQR8n$*Pu+r3{1l+}vAv)F{`Y*~3t@x+S-5RVqXFy&z$huRz$odnpe?9M zRsw7jb14C`Fc)CJ2m8rf5H4i7>3~BPb_3XO0a>JVeHjZ2rmX?G?FrhdNLK9fznGzb z=(BsDY18ML zHfhs@<<^ZFwQkg~WdpFaL5q6zn%Aw{yl$Olb!s=QU8`xWf+hv|$c^*!8zC1IG(^s? z$$*$A;I)`jLiJZjC}lwxmYV;pm!~ng(B2=4(Z7{SvGSTA3Xn354YD|J)!Ti~-mU zD1eyEF2D%Os0v-|X`cATQ~1PAd{M1>b%57EE~}|VjU*h!nagxw`WGiNhR#@9m^lK! z1KiyKW&}1=C)HYt9V0+%@#wOf4rl@x1vB7wbeRm>0^=^GMymlR(4v~6jVIa73u5L1N@0{6sx*eKmaSMj^390@-x$%i z|FHf8hO<0y#DIY#2EH+J;2Wa`4So}O@Q~3wk3k+Zc+B9zV+SdD)#?q<40i81IB4)V zp2yqr;KAcX9x{H&knw}@Ih1{3CrS<;GGWkQkyovLcSyBAf4q9>`pz$I?DFEfU0&GK z<%JKrJpWo!#2*?$LH{&$jz}y>O^^TjV3XpFhfS+hcv)^Wi>i5BGWD zV4oNE_i4AUSG(OkSpKL-yY1cEZSCG}^Xu(C?AdYafYAC0ae%t0}H<^~nEvbgSslMI|jTMGe z4++Fv(KDgv3KO3E5A3s!h84esp{}kyITgnU@MRVUrUxOojZ5_ z+f!#?#>dE!V+Icz)~C;a*I)15rAxO?ow~GdSJ<{~$JVVov})0=d9$`no3;gBn>2a8 zapUJ2H*SN>@Y<+#!-lPZ*ZTEa)T`UPPMzkpYd7O~ZJM9oB)?{pyxhild5v;&8|LIN zAo9p842V4ZRb7VHbi@s)osq%f2BfDKAg86}BeaSy4FqJ9Tr)B-?G>!7my=yTH>V-0 zqKpc&vm5YSKZ^&`;%r5oyxL64V0Z1TOh(vD!goeN2CB`-_ocJxvz)D%L@OqDvH4vL ztSl!bmgOzKeGF7X_b`W$yMSS2-K$eio z5c?GWc=E}opMLVGr=EQJsi*J-<1Q;eYA%wfkJrVr(0PSDH<4R%fq$mmk{JPZWB51l zAYQ_L!2M{2>jC-D8gUFvZ)FBn3_J1(%H#qfU2M6LfjpYwX~)AI2=$f}T+{uFCW;9S zm+Q7H%7JvP<@Q^q+=`Gf+&&A?^4VX4uX3^>hO~^S4Lp387(D|b(4Qe9zjaVAAGnK`NQI^A8y`Oym{N^E!#J5`Dn{lTi&r{E6-bKV<&RcX05MW`HZ%=Y+;|9 z@yWB;*t$!6%QpPvExWdC*)=BhiITm04lka2Wbxdii{~6)!t%*wb51Rrb9(t)ep|HT(52m=&&Fx@Cxk}c&$lz&2E&P-7qJc0Wmkb zK0wK7SPy}(5R)YXVOe~&DKbl1T7l130Jc)_Di&rXjS&#cP4^X~`#?;Pw0>4*{p_rU zSy>HO&ctVZ?9a^N6^hL83N%wjEmv@vg@GN4>Ns~yLgmDBj|xJC}~W1OYA zVQjvw63BpjqWElX9=oeudl6pK7(io222Nst0(uo_jvpA~h4yio5C{a%KJK~w!~e5URgoJ%_&*yz^uL-u^uL=v{C}GL`TsP3 zSg*2}mEb1#SQ!5KM+7lfI>1 zHW(atVLk$zjKC)jY(=#QH$fpOXtuJN-hY4Tu#AL^VN2zVX4+sAq^EXDNa!?`&y}WR zohNPo%Qod2UclJnZx)zs_7_b6gEZh3OEbRUvxQl<2$e8?{D06Bc+)V+t(rN(w9w!z%Sk#IHhF7N*rQ zJ(uCQZf1Hta5giuK}JUX%#8XO8THaL>SbggAZ%S!NY$!@aqjHJM_%oSKglVzNRCaXY}%mos%+yj8ju-p>MO$D5w+#0|j%1O#GN#k40R=|~6 zhRJ81srC#wih@r+11NAVJVB_%7Nf#5&#?bFr@0|Pm~VOQ&oY}X<1XpRHKZRHw;OP0 zTlhkNv)RmUz`VW;mDZTDAZCTB-d#{#DI0!p%ngo$({evM?rqxuVG@nGxyJkv7!WAP znj9nJ17tFwFmv|fG1XX5T0piflv(Ci%R+MrX9Esf5SB&FAV*f%6xy|;4H05SSaO9! z7+!esie~yj8n21MB*C4kWZaDOZoKabI51TAb)c9EOLp5eE#g&^JmYUKd0nn%T`+h84_f_6OjG! z#~&qRv7s7gr7}w+T@t&rL24{!F=5&$CM<&~fC~^qR07MuI1#^q2jijmI$n~D-2OCzf?t?gM*LFeEF0Ui2c#yX_MgR~5?Io#{(Qfj9Bm6h;EYH>ldsho*%Y8ahAE&a z+iJW5NPt2XAYr-zk2_;VEtocK8qKDiFn$6e*upCF#v4QW^&8l;N1v`;yT95Q<6T|a zw`Ya|SYunYY6rqLYuc7f1dVJ8Y(1gC)+H-J?PdjJgsmwEn}?Tr5Ekku%U~<%n?lnx z71*?bwA6gAy$Zs@B+6dT$sWp7NT`|lh(L&VufDW88R?*EJ)f^0+epVoU0*tnx{YiQ z7L_9duh4>-i2(KiA2U8M?Ue`BPUcZxNsZ;|qw|3x4#HcBRj$N*YoJ};V0QDMH+Jf0Utn_;E{uFSG(_5+|9-<@{v0?Evo1#t9z1HuP|OTM zIDd-k&tw1d@c(=R%L0t2Je+5?F@mivFly9_t zl~8JhKqP7=t&k{YOY`SX?w**C*nKiZ)S@U^^M4c! zIpNwm7275LAq77KOeq1W6!s7k>?rsa#tdPH88&P;mq_ke4y=m7OAD8zT6CT)Du<=VsAFSW<1p1|uyrRT}al zYbqbg;&1m{<7A^%!i5Wez`jaG0RA=$n*m76G+BkPFenhHfmDF|83AuzDOYAWy#ZOS z$|BRa9NZvivKTYW8nbd~3L0B!fk*h}b8yMKs~&lG@fjj4>@1rnXNgP81A6gTUMvQW z5&(gsO;XfKIaQCs1S^pe*}@il_6jYqzzhaFW*7IOm9uYYqzg3V>u=DUL%FyD#hbBu z+G33bH6Vfrhae%#DJw9`L)5bj&i3f8aJB~~loMxp?k0fST>`f|P|I=;_%QV7*AuyC zeJJ+U#MH|H#e?4W-A2KVnjr2hZ}X+j<`Xz++3 zLq-i7`sT1y!ZR@6x(SSHh5vf%REGe*n2*P`@b#Wb4&!!kw#_pBD41DriuU-ypvx`~ldAKU}Gh;UvI4 zwAes@b{0mWBnNAzgL*vfD$hBoX(CiBQybZGEQrCH3EBd?EaYGsSP9Lv7L-;HR%ow` zu+Up;WoFmP%qqyvMw}Psp2b2JW@2&yILiWS(I*8V1ZOD%A%)kXForA}%q7n)nc05k z#f9jxaN%OX2aHgJWcd_+vNYmk%;sX_{^|%=jq1!Li|Me;87rClUokraP5NREv&@%^ zTW6WkP%5zGbs)?IVgQU=31}dUM!;xH&6qaEsug}+zBGa?%~oLk2Bgel;;XUP}2ZJmW zTX@>Qh9+~*o_#TB(X%Jm%JABY<$k?-_3z!QKRzXG`ThZv38|EOBljNIyZ3-Tz1c>e zK8SnwM!$Z8`Xdh*JYc|3Kz7ie;e&^a7&;Vz@!kaX;LAE<#F!DojXYxP2otylWJio2 zi98Ccs|doH(PGDnXt99oqsM;yJq>)_x^;^nODj_$WC;y|NlycH#w}3>+yRY%Dv%2l zgYE|8LER(T5^$kAs>&wdOByI`5Q|;6K~0 z)!MZ&F94pf^$YSb#elo4vhdi#O_c?2&0!GankM{GnQJN`kK(kZr6D6!6^n$;oTXA& z0M?Xb#0JDCUe)2Inwyc1qrhm8n(M{vlLv&&M$IB(A&;lUCKs^GXK-a@vQL`CWt+++ z=XBB31H|5zVPVbqusqHo^ONyIY-Jg5fksATC5Bpj8W|+DWVr4q8IT>=x9>oVg}`rezyM^d3pI4mAjHv!CNzRC z{rBcbeP>M%eMAM`Ix?3dSu$#qwB&ELtq` zV<&!QE?j`@&6_tRVTrRys&SU=2Bfmlv|HjVg+d^$5U7PBNwlRzuh{a9TfTie-^%^% zk;jtiN@h)*8qJ`E257ATHAw=xqR_eep=u{le`)B)hLT(l5yYf~^<$igmP(`qq{@Z7 zXu(9922N|t0Ixhi!OM6XYu~N|CU;>OL&RUk*l)|0&%umFlVzJVYl-DZkef7Vj`^~U z8)JqmpDc^@3i*6lnk>TC;3w*PPg)C?xi=@SJE}P0l;RrBeGCPY! z9h89wjZlO#CZQPzRtDcvH+Xr9u$74sdm|!@nBYn=Txcd3#WCQ+PTYFHXv=s@o7|{i z%(j(tz>JBulSDb*KR7O1D179=;m?^Vz0xr4FQgm9He#`Y$ zaF&82^1x-Bu(UE5*K-+T41J(RO62jhC}5(2*e+}ZFbeZc;SN|_8LrMs%dCq&%N5(6JsD~lVSAaJCBpXZ zEi>U2DhnPlw%w;s|31B0?u!jG3$XU>i*=q@<{MxueKN>`umcC;(Z*vAs}0k1IeQ65VfkmVcWfY&!iGs1Gnj>ii>i(*Kb#WEDpVjn;CHv!pizx`IS zRc??zOU79cO)7@YU|kZm^u{gU$_cw_k|s;JA&KnVPz$3HR7;BspaJwIE?3R6!BOht zl8;VGI#~%ss!8G!tRy{@5@Hg{M2pVilQyUu$w);MRZA`^L(#Y?Xb_DeU{Ha_e`$wq z4;>bSg?A&A54`FDvKYF6Lk@>*b3hh0HxL$s$(*nv909GS#iIw4Fa+!)Ojsv{c|u6kSzGSkA9@nrG67jYf;da_u>e`Tsxr>LISPVLBCg6m4LM z6O*tUvJ8zzW{^dG{N&#SWWV|58yjS$5~q4}kv?lvX=Oke)rhIuH&yGW>$Ze4eXA~$ zWm_*xE|x`v1zXWhSJjemDM3kVam!@GB~enck`IH5q(YPbCbJ|X5}9ir@#SV|y*WxW z-J2<`{N0KhyTqE_Yz@(N?Wvas}$^t#kgV`B9F?--@)0uRb+Td z;mulR&MB}9Wmu4GU>bTcz$&A?nDMl7@^VEytvn2+Q}9(Dz!0{`K$&RknvDaQMUw~M zV!UFCp^U_3Y>>ieM2|6}bJ^k+3jLC6nG}M6Ob24dEsJTu9S_J)%Sd8AgE`$+PWLin zcd44JjFhOVu@wAU2?5TAz{L8tLZ6jJ0-@QGp+L;URib^1mBDB}f`@RlX0SwSlyB>D zHEby`6|%xcV7St%!4jnkOIoZN#LE`DOO27pack$S^g7@g3m{9Gakh7F%7U|;tt@lB zhc@tNQx=5n*AEXqWs|M_`wvj_fB^(qXkP|og^84LmO~bdVMaubR~Qw?jAox$)|zFu zto0ZSWn=AXro$3p=~aBabySq$*EULbOE(BeHz*|o2oj=54;_QlfPi#&BSUuyh`>-o zcPKD)NOvpJC?WYh_a|_pP-QXVni5wGPjN;wE>UlOb#u`$B$i&VS3v%0oYIc+(Xdg^x5LFBw4AybL(E2Q zaewg+?_2mb%raU)-^rl^q*lICinpI_R)<64`1&kWd=nT4DXGk;@=SZj^v-_hEPD>< zgh)$rCgfqU|6nDmOGc;PgsPk+ZJG*2kV0Ij6Xw0}&RpLv=o&J(X7MBa-|mAzBQ!lSY@323VY2~yF z-f6!?xn_Cl6iZ74&y%ObY#eej?zE-a9Ju3$dY<(0_lq=OJKu6GCUutR&BvGI-nsbQ z*p{dj*;=LXsfuB8u`iWQs7rjnxZT3K&%)NQO3+f2w=9}e5ubiCcJlmbcvmo|{r40iM(PcX2v{E(- zb-kC3+F769C>f`C=(%nmZwJlVr_>T4tnbx8=Nr8-zn&4J#Q(mT4OpH4tAYMKU4Obp%Aa@X4w8tWZ`8wc!uk-Hr{VzCs{=bLB2n~fpZpO&?-Hj&*sQtf}5us|bL)_oQ z-(N4v-f3C$q5gY<^2tyH&7px|Gfr++_X{jQ24&H}-DckXUm)qAv^F*H-viRXMM)Rj zwRkq1{&o!&5pdrhaCiK>bMJrNrVYFeO9&P0*@CdaSSpXPMRZ>02vR+BKy=<5HNiu zlNoIPCis(2*le~v=E^F|L~=GOhKKvgs4cq5-o|wT7+s-bI1#*g8eL#I4210c)mYX0 zyOD&a9Wa>WjpYyjeca;|`@e$R&bh4cB!B4wCHa0US2v(=rDM?NH(D}5IlE?0IcPdg zb75$Ky^SPC*Q>d%+K}-)NVVK){aw7Ih_p~a-xm=_hIpc=J{n_hHw~`kir-ic`pTHe zi-5P79=`3kvKg-3z$B@5(j_yCuf1FR5xbDfAlmm# zisEZY!UEjQzM}I{4SF7f>yk@k;YjVm9Jloohj|XJAW{-BCTwQT`s{dFucVzA{6;-S zBOJK6$=Jb%OG1*gO}!$UEY4Ryilu_paMX#|m?DPN-y&<%J-VAr&Olk5(yPwytcJvL zI<6A0y%roB%bnmBG*h{bFlVVAhZ3z9Y42Oze%ILO}l1dv@`n@vx z%w>J|Es70d6Yy#(f;D=B5akh%Q%}H#^u^>Fu|RpWTxu46A1CU4lShzwlG|&groXqV zYL$0uNP9!BcWt`(8Yn)ASck65mjw{H2s?$>P1Bq3jPoyN9_g0*>rbxChe%LH@0*Pb z_KtYx0xZnj+}X8jT_{Gy%c;`MjEJO`ylvaIr~9FD4)~I6Y#N&i$R^1$r_m3ix&z|W zBVW044TpY3gqFvkTM@G4%(@)t2Bq!OYmJaMO>hsr_LqWK$~T+LC~GT{iHJOcPgD_j zNsiexTfI8ncy2()tH|c~a_&G>s(J4b%QYnUHnvUn`lx;86q<~^Ex z7x3fiMEbp5d6>o5wy~+5Ff(@c7D%zfeizXPz8{)~hslZe;z-qRDZ#>;J$H(BkyeKv z2GFSzBd5@1vPYq9_4PAqS@;|Hf754q+*N~|gf>+0x0QZVwnV-)2`kn)7b!FDt?y3# zXijSR?7;Ql9coJicLu0^cA*qX(QWSJ@JYYhMMjWmHf&GdWl5rx|? z6<2c(pTzr{pMPlR9|8{xFNSk$TCaVo9ofl!^j^C}O?PzLCC*N*$DTrVg0*qaO@g7` z&e)!V9_o>9O{%RdU)?a{UFkK(UT5;BQ2n_@iO%J#MBFwfoJK~zMn(&O%_fC+hXXQ; zWw`LJxvP3%x2YhgHA314wo>lOZ5>wGuXM1E$Eg`Gi9dNTUlIS&QwMdyd?OTPbnmA! zi)#=YxxVO3Q)p7i@yu9eG+u>+$rMY$)!YHBi}5_`y$n}b zBKDx&bgEQUkJj%?%(4+2Hcj$MU73un*n^odkI2N~3{K^>n+2(1>*cQ1*J{>g>Ud`z z3Zon38@x({gA6sI3b_-k^o>|jYSFDE-ck%tMU^j{Y_lePz&}U{-=&Q$?wS`Na@yMoUVz$j#riCDhuUxF6P&NK?!AH2iV?HIZd4(XEHx& z&~75WKO1k7!^IWgbJ`W@rnO|u?PBNhk$1^z*w@2WIn;X)N|2E0nCP~gQAe64A5LqJ z-S&5BuWhaqCyH|(PN-?+iy!Nnhw$XidFrRT6Mi*$%iF37M_8y|$kt-_IjxCt!^FG2 z-*M*9bYVb9AHU^yP+Y-$N6ufOet!Pu{%%*V^Cz6$DUGdqy*YG?<@&IIv5B}dUx1I` zC?k4n?s!xm>tl2kBbpf*~?sRo>bSMW=F!=UB1MKia!0 zbtwLj3fo$PlAVWYD^Q0W4XRALw}=P2`@6@<$SYhd`j}Ct(fnn3yDJ!TJg8%N zO7Zzl^VO z|L13GZ_)4|FWUz|QmU`YD>P6u_ltqNAfmPAfP0qfa|XEP_BxZ>B-!}C=a@H$Tc^y7 zv@Zb&dQx*G2JYWpd_bOKn?#)NJ;k7bRT%wU@0GO0wfXmWCUpVHFV7%A5MKYS^A?Vh z0qETH{>=0d1_YZRM0iL-N?V?CsC2LBzilvmG@#%j1$F+b8PBC;48*s`~OzK_Y?`~Kch zmx2W8=fX3g_vSza(B5j^w%;{TLNm(o$H$)~Ge6~_W!o!FR3LxVF!?nj`*XJa6w})EhKXEcnBfa;d3tG6WRW!(J>k5~PH_cZIDHU| z24VT$Xks7@#P;VnX)-qPJ6MH*SZd~ebmbd1=?OQ*qR)|$qTni6yUv!S=UH>ef$juB zxZY|mr)9kN+Y`x;M{Zbcmgr#AUKmbH-`_C!CBL>!|7G{Yv^}n83TO`Icidg}@?$lM zkc$JxdQUHlkJnsv!q@P)eBYnr<}dQ%qM8HOQ#8q$4Y@O+Dh09(smqAO9{pd{?nv(g zHkK3~{;i9ziYmlL>dZ*8;IE}(MW6S24A5#|APg8q`LqQ??}>Cq0g-@d2Z0)&Q7dOZ z38JWNMND0nBx&W=VJCP%&NY`uWR!eL9Nl=c#Dz(&@ z^D%DZ&H*Bzzl*DPKrq^Hw>q=2jfPjD-U@m!2;zWPP9vcSNFg3rC+X~o zsMVAjiB{XC;V`CdR^WCyOcWe*26EEs(nF+xgDOlVhSAvfkS|EajYxKyp}{Ve@M4^Z z;;c+Ha^I0uO7*9!Z7JGHn^}q zYg-0SS2L@gnm@fyodLlJkBrXw57#SlDNeA#nB}kcrsAPSQZLi@n=*ZK0gP&K;XUuq<1kT^a6 z-5Tbu!HC`)1zpU_`j^;&(DWatc;NDGW@)4*!@_e7A}*aifq5)2E3Y&*KvgB>v<4b~ zl+89O$>Os=Cj_Fj0_e@4@(mWf(cBPcY37)Ehs{+Z=6Y>`$7Y@v4b)W?u=x494zP<8O7dK z!cy$u42Zg5zI%H7MTd+)I8}qB10op1QG6cb11FxY0fI3U4Qx3TBi&-;fY>0QJea2L zOsq6`ix_Ch8M<3*f{kBoR4qXGMom&J_)`tD*yRCAAj5Yl&G;VEkRWZt(~<%CICk~( zipCYPo#1GSbdDj0RzVK&kIeYX&p0ySyFH41-?26yJEan;CvDFqea8#-qUy3B!GdIj zrAS-f`cNJ7{}3d7){g&$zBv;2C=Aw)zcgmG`=|2iGc)T2A1ALU6rl^ns^PRb3Ks6C zTsC6~sy1#COvVH<)h*@pA0a3XtGZaEKE6%$`-l!9t>xi>#i5jrDkw}r+?ZTa0zG8G z+`A(MGhZV!JD3d6PPl?_SkyxKxVZruxw3HxARF&^^eTnf-IqM?B#2CKtk4iF_J|WN zwIlcPw$aOt*fa5u+x3I3e!EvU259_bkr;^nc%~;k3oJfozjR_F2QcCqU95oJ$h-T& zwGe0;0dCEfp4RmbEw8E@R$(T4piDr6g%Mo?oON%q#MNyO0heEyP{5aN3Fv%e5zy_+ zr&KoT4a07x%VvB*mua9-7<&&ZKx(%fx(_4-4raG-yeV+50Z2g7aFKRd(3=arWqH0J z;U|EQ^*P;AnKXY`glZs%O7QWx6E(bH+;a#6QqN(y(^BPFoeH{9LxJ@+O-UWKiS%dg zjON5JTqfHBbc^}LMl`4^n1Q@=k|8A-BG#Gcrg?tnG;8=M3KNR*5)Mgm_m%mEUjY3> zf{%-WVBW8{pY<0Z^FmsPWg0eibb9@siKBZ8IPb20oobCKeBg(ht3V_qq)9#rCg(?8nZ7j@Y-WkN+^(^XX<~m z`-J!KY+BDW;O=jlp6u<-WN~@PSoUJ${rG%s-f+6aS1d5SRMwL(?R}8YXo}9u4g8Lz zH7R_-O0uj0oYZC<(wE6`hFMT&mUw@X-zj80M@m5-r(kh$Ms5{Wif9<%NfR%#uX&EE zck2K_VyE}nZ-Cw@IlI&I96GQbAAd0a0VNYoh_D{bW}!pRAb*AQ|GS;`Ti=2bn=LtJ zBvwFB_w~s}TbxbL>|s;=K%W4lxyl~4i$RO9!o+IHsYwV7-LLAri{7@0s($LY)Z)22 z_$1HhncvkCz-36xAlc$`aR+d=NU`8Ipnd-BC0yuaE@SxZd48zCXs!(1;vDAN=p|!s zz{wY;Km25ecA|B8!*`W5G{w0aY<^z=HMUEgARC6Q-&OzQYH3&?ZC99iFM2rl$KJR+ z6||%b95l3C5GSa`X}w1=h7!z-U!|{lxsmkddDQf&$l%i43E|*J4tsp>t|l7h(Z+7@ zcOw#Vgi^9%7_tsoxYp$N7Ax)Ur!68-4~Z4s$MAG4*fBB{^oorH7lQhRS)1b#g8HSQ zT@kxl>L(*;i2HXmQBqob_oEK{Ot?`1her01AT!TqSmAg5O@A-rYIIZ(FZ`O1kOoH5Z6Wk8e#)le6QBE2Ik8FHJuZX`|`|9G@X17*JkXcH+Q zHW(il7x-P#_E1_D?DlG}N)N8zdwQxflvX7fa3?=qRuc@>cGX8neoNx8ZyqYf1izoC zFGK;qPiXwK_}$IH0L?=MEdg|X^Y=GTGTSZW{_<>g6>e1TPH{R|4@ii1AlRJ3EffSz z*48(l=aV@?E8(!8g8-W(B?dO{q6iD&9bB6?T9a*QSRLJ+=HMB@%;jzO*aeT50N)*j z!5Z{nPy;0??e9iteOU)+OapFq_V&v4Iu!u65D$K%ChcZTUgjZcdv#J8!o$xTL+>l6 zTS0w)#ShAci$IpTcN<}?Yl|X~W^?&Lt*A-{@EHCC8tMGNp9upr=YP`RWJ7Vd-q@Or zhIuDGowdPnxpi;G(P-#*Z%i6bF9zZ*;k9p)E7iA_inZ?jM6AC~4T&V{*44DrfjzrDiFvsKeixr>n z<~8DgoAbr2qjtSE+a#o3rLS%&FR0-U6yZEe=o(UoQHNo{4v4Cl$Z#gkfhh>7_D%?K z11lhPDYt-9pYOoPj`{x?xq}@TnRJ50K75D`yMqyQT*;T!_1FFY^nT38Q!C~NY=@bu~J zWz#pYxt zwC!ATnIF(2yujw*dy*+~Wx#HCOY*7-p0Vej_r=lalxs(2P2)(UJ;^}nCv zhLWiz3{TquqTL#6}%PydpxgQkT-V7fam#+2;1n8Xp%^%D` zoic4MtexN!Lh?s)Tc~aI902>EcB7hFK7ks5N`Nt|^*>=E*z#ZT_q#ER41tVS$h*@a0sTxR{~(tdz=9>G?)#!-kGOz7ou&HB?sV~Rs)c+g zc~ey68_<}2PS9r5n<6poU>cRLK)Q>NBNN#vYXFB@Kb!|4pVWjYW#ERkjNnMgM-G^TuC?XrB>DMFdml;JN5J2 z-I*(SV5?sK+gl9f1keXxEZjq1GlL;pv><^{BIo`0#~Cw8Z?2T9Kw z&TGl}#<pPt4~39v?!&#|z;-Sei!zkLnZ6 zj}jni;*Ci#*X-2A{jZ80qf)zM9s{-!eox2gAkVjXVdD8n(fJKGT->i@WHS`l2efGy zm-;HH_&LSz4^9Z_QoBBwtBkj>@-UBz75>zPoXy2|7;SB?40U`OTH$$z9p)NX@vHjv zuXeANqEt{5StLCou{MaAZcih^S2sA8kM6TBT>{4*1)?$9m!RsoNA)syX7};0#Ya~A zZ!b7a`cK+N13jS3JT_F^f{(*^D+Pu{BChv;Zq{K)KUh_cs~rq>Kw{-(-2$XlupBN* z^$k#G)RoFC{}1x2`fud*i=}{)n}5py9+Sw}^qCW+Yazas6ycrF(v}+N@t~2?yjZ6e z0J9J?&^#%Q0it-!cmAdbMrfQw@vX=sAgg)JWrCpJ-`;DLac{AXnRgzK?A>^yd}IBg zwlkEmIFpM1D1(KlU|}W&r-!xyN4L{BiSV~k>WWfqeOXOkmh?#AdEo{bBnD?fj?JjVg#PA$&9|GwkqbODg%UVzPYxP1L4S6aq$hhX^h>Q{M{1||W@Vgpe2 zSM!)zE!!=EcOORxsH00Q6H}&E;j9GErbl036pNGL`B!8>4c}&psW&f9^{Khg zJxnLa{@?(WnQo`KO@78sFp?aBs$S{J?Z7miA47-x1$KMT*jaMzn+IE#lMQvHo@{=2(obT9VWT4^gx&f8#-4}%rO65t zp_z0hjP@?z#G`hABVFNb^m2mqZ8F<4vfx!ATgb1 zsC=h6?46qtVv_2>dXZq>@lKu+)o zO`o7Akhiuv@drHM2yKNdBC2cG7_^O4eB~(+x^KMZ mp~KdD{OG?i7J8*=OmIw& zUg_97n(-A(s~FksPxT4u_&A8tj^z_+IjFSXEl9&-j8g0o}P1%xBnu0*DC?2&q*nj#@4@uwo>wJ5bT9+>;$9n7cp2 zy9&Nz{a4&IjMWTrYEy1DxSoJY-$4VN16<0zLOcKoC)0z7+bIyO*AKY@DNe?ps(v&)nd+@)3+3+E_ zRmy@h7J=|r1irS0L5@(x)!c}n zVNpK=-?Q40U6K4i&{1rDL!R-Ld54Gn+fKpw|6mwWd7ubRd`#wozF;Pl7i(xu8lTF5 zn$%2n4k3{Wi(_Mpb;DCwT7Ya)A(o=VBKHEQVP~2SV6PrmsiAg28SY0g`Omeu**m3b z*n=7@6d%@&+Qj@7ieJG=pB;-L&6@`3$Yo*;Nz7kwQ>8zSjn7s+FwCutoOI^`I1SS> zt?DpDAWgEo1|<#NPQNbX6@uZ7HcJ~`e>C|7>};ze&Qq^{7~`+;D>FlpXjx3Y$8rGG zUILJakGX({)P?JxOqFV7SC65$qX>pTr?D*&Y@XT=<|Ul(C+a2#EAkQ_)zN82lnNsZ zPHOd*MVRlD^O>V*a(D3$uT0D}Adg6%c%o@U$+MKwc^n?p?l94M)bq9IO)2{tM^H5j z@SbUa54aQjA=RMH26Yq-(b;*_fdM+-8qf-z6|Y#VgU;j8zE9!SvBU&_XQeA$&j;+( z^DisHGqLvn5X@e;82CQ`rtXDa$}HueqEOT|-ysWaqYh8K{zAKUIn#T-pns0Q3eDm{ zpQHBKB9)}iz@FI85ae6IZf}nsach5Z0&uxaLxo{ImR~~t$tTxW%;oyHo&-mcSRJay zNje(ToTDDL@-qsq4)r`fZzUYW!2%oxRnxyff+vF%%lwLH<_Zli+k=ski}`Y2l>l}R z$0h0_F=n6p+dy7Xp!nSos0~KD3G0iQtO@5e-Qi)i63-O{t37ce@Wm9P3N0D%j;Un8 zL}G;$>LKlTfZ8n@80ZpKp>4a_7w5J&x5OVO<9?6Y92j3 z(lqA|^;YiRsl`G(0Vh2y1-R{_VCb*|B0l8L9@K#tYH8Ufw4MVw4yyW0N)DV)FoiYed?<{id7>zcy?%0btA z*rAAOATMSlQ!a_`5o|gWN+6Y4X`q(hruy%EiyrG#F;bVO<2U8O*Nw-~Rxk+=$7ONN z9&+Ex;4_e+J+1sILpA1bG8{TY7Y8$b4{MFHfNhfBS`aq!O{$l3y-ie&z~w-noq@wQ zGaa7s|9kwSj%)tfJ{PeW`b$49UVH0sIH2(aU&7OxGZjSIre#t>U69>7kN!3wW2Nq|SiRe)jtz zfrZ2ku<*dq#weq#xX8P8;s6xLiATUL4g3iKJr$O%S`Bg!sD0Kjkf5*3u#=?pOALrZEl6ug14}|6Fuc z|FN$rkI;7XG$IIn<$A*obgN=Xsu(~3S^_qsfh>{)QH_m)NPZ;?KIJzf!Ws^VkrNm9 zN4(Xws#h0p@Kc|yWY^&Thi~#z(y+65)BrVHXLvP0X1D%?u8_ubq8Q#VkUI1dWLlRB zg0hpaKt6o7d$lUAiGoBNMq8_6CP}_afkyY(LHyF!-+tN=Qfq^0MPYtoG5I#2K0K+g6$_$L301 zfa6+oVBg}-7v#bPz{FO^<(B<@=z|su;tflWd!#;-QvJ;+rB-MP@(@VU8sTiAk2BFV z;*{SYr+ir`*(k|R^_R?d!j`W*SEpaowJg@rp@ysg@H+sim<3XcK(IX+X)&n7nAHP) zeMb4OUK}$;@t~MHWXBb7?9m{4!vLZs{f*8L;crTLm2W?n75_zx<~CQGVJD#byybQm zz^{rIm)IfG80&3ZHWd#nkgqC8{$D`lq(86Y`tUmI>3hHHgSg*61af2yT~4<$3SYjV ze|C8?YV7kLD>xSTg+Ji_Y@#�GLjJK&X0GVdkBdTNFQCa&?(7or3zz?-61maCq8J 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 F_%A3JjiLYm diff --git a/_todo/image/seqev.png b/_todo/image/seqev.png deleted file mode 100644 index be80fbbe967a25a32855f5ff9b70685d059197c9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9980 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 USr8|9)ssL?<*sstqUGcN0{kRF!Ts#l6hzEJ2{i zvmj7x0tmDZh+@BiKw&TtXblMhX+Hsh1a1{~+3JEod}Zdw2Jky>nM4NcC(D4tMZ z&ew99EXNi>-82f~X3x%qh3OXL!?(e$Odj@%S{{jexUD)dPhA1&&Q%4$O|AnK#*z_h+IlID$cOL2Uz(3Ri+t2 zjrUHzi~Cgyy>nWaOlwZyfbO95UzEkzNM7;jo8{TDT#}5}Q)L}hI;~~WeA5dM)zZ|R zTax13pqlNzO<$AMF0qd0>Eqt2$gnjH$A+Z2sYSFpdouLYH(6O%V2d9sR${%#YJ#`$ zN3hXXZeQnx{Qdh6XUGbzglZ!06UqaTi^7m%#E$T-`bY@V*4Q~t|JQxBZTR`3kIyfW z-V=IzpFVvW^=gJs_RYq?zpbtD#0#j*ps%w7?1Mm3N0lN`6~)?Ljmg3dv+s}Bd*U5% z?rv_8^}HGfgZ5xlkSOMv){hoj5um%6lMbln1O5pWj^m4#)pUp!!uZK89w@WMCQtfu` zCo7rZB>#x4^a6E3A4s*pjirEqF+=a)jv6oT87F+aClVU)dpx1e~I%uUk*(4YI^xK%!q

    ^u`5>-|$I~2*+yz4@} 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 Aw*UYD diff --git a/_todo/image/svn10a.PNG b/_todo/image/svn10a.PNG deleted file mode 100644 index 71d2c4589a0ac2ea7b467443e461bb10b6cbc55d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21690 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

    dR* z(3euZ0L=yW=3~;fe;WNRUqa?y8y>wVaWz+nGo%C-nHry6qeYp|HCn{=GC3K+9S3Nv zPfKc1@Q74{R}N>ScklxOZ~_a{sFc3U{L(W@#FA+89^H;oF|Dt%K3vJ=%jUtvlx$^v zf?@5dX};8g0pjj7%B)pJ{j-#>tNEuMjvVkZjz#t8He7IYWKxAaDc~jX=l4IVm=Qq~ z6a^>(vMDrEt3$}|mw1W!6Nn;HED5gW-w49})XbevqcxgP9R6a8{4ybaIGSd3b@dPF zCJt0u+Sl%HzU^#J3l#h??@BbTuO9mid-G;uc2o;8H8nanSLfkazhp*;tQjMBeKRRf zISAk{E%X@qr5IY+y0}ZQ#l!2=m6#Y-JbG4(sLk#g{OcXh&*d}*FLwn);E?8;UVw?F z=HlU7<(=y;0ru5SX-13JyOvZbB6X3}8?ZYi3s9~^ee(Hi5vd7v^fVaBUT z>NoVR+){;6wA?lQ0KU1=E4p6KP+(;8+6_nB^+l@iVELs}S}*kI1S6|O`G==Y3*$o& zesus3Cx%#l7C&s$MNWxU7P85f^5E}+s=$JN}kEiA3~eo(wnLI{wB@*yv9$WXoh zxaI3nkZPU`{NzZV{lLH-a&Q4QhSzz`AAf{pcFm@g;jk`L&3^r0O(IVi@HR zLEs1vAJ1JgAtEE}G8CS)kOFM9W&9VULpBaiAK93vVCVK4B`mzUUiq*wqDsZbMtJ|h(4Zgoy9dmsP>^apxoEQK8|T@ z?p?L}@F?`br77rK+IvUeGt+6E*q_5;vg1REoqurjAk@3SCHH0TvrJ{ARo5SgKr|3r z;q$2_N(AZK$UlAdn$+L=h(&~ID#_8Vp9>36V02LwdlBxZ&6R^q>Cb>9fCDMEHh;zT z4iBl(T_+kp3&S>F3wYU{(Dc`^uVZEI>Q@EI$grr?sU3=#z?^%yVezuHJ1IsS$7TeV zQoMTH&WO*!qNZvXy^#cw(`^{c+a<;7dYL1L-pi5+NFSTYA5sdHx^Eg>mMD>j!N+th zw`%`oF87t5DYENc6%uirW;&3$HVW>W;fafCy+&x3dkTceb z=H4YFOGs-T&s36mBQ8W(6rfE`hZMf#)H47P(>)Pxfr-6+NoG>@aZB*auc z_hbjgt0ohrn1~KzCU1kg8k=kuBUkk4?Efc@5qQDeM(S2;{A$GJ(qV#(^ zP0*F1Kp71wg4n;Re^+-0PNVGne4-S*!h><`5ALK$Y7btIvIflQnf`a1AFRb0r~t%R zSx<_3;|Q!4Y+=M?dA@mZv5L$ZWfo#-WrZuIACvKX0+;1g;w%-x==6r14$Y09y3H&6?l} zyrIFL<=VPPeNSCr_2h5+{OF+x3g8wVa4p}dN1sl6Y_Q;htsHcB5a~Pm_w}|I@$wMJ zSsV8RA9PyjLFGl}HvEgUnBOhFcl(}b9w7s8tKf;3!+)JQ=a0f03C2tZ(;se%c~D$< z-b(+vs@zmat8Y2Wj~JP`U^W9wmxsc;%>{Pi`bqhfyLeP`z%D(}>2N3gVT~UAh!8n} zjz1uyZC~u16IK=iSul3hMd49#p`|NqN#X%+Cg@D_fBqdQc^4mA{^S52Qp(`z>gTe~ HDWM4f03>hG diff --git a/_todo/image/svn11a.PNG b/_todo/image/svn11a.PNG deleted file mode 100644 index 58a31f1ac08350ea1b59339a7d7908dff85f803d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13828 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 X3pN6*fYA6*eybAn(DYect diff --git a/_todo/image/svn11b.PNG b/_todo/image/svn11b.PNG deleted file mode 100644 index 83a98afc7d52ac35b3f0a00804f917e9eeab5a9e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44594 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

    1LjrP!KNAxnyJo=fzx6+{z!(sQFiB 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 diff --git a/_todo/image/svn4f.PNG b/_todo/image/svn4f.PNG deleted file mode 100644 index 876ffc65c60016dc63997890a177b84f513873d1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18993 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 diff --git a/_todo/image/svn61.PNG b/_todo/image/svn61.PNG deleted file mode 100644 index 2255f2f56b291d0748094f3de5ec8b64e641ab56..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4154 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 diff --git a/_todo/image/svn9a.PNG b/_todo/image/svn9a.PNG deleted file mode 100644 index 7f66c5472f84ae15fb7d1322d3326aefb960c192..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1340 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 Z(zv9qi}nmyi=LBJh_zV7d|x-T_zU4xvg7~& diff --git a/_todo/image/text1.png b/_todo/image/text1.png deleted file mode 100644 index b86810cb25395b539eb00cd29d0ad3932597b6cf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 704 zcmeAS@N?(olHy`uVBq!ia0vp^%|PtW!2~4TuRi<-q?n7HJVQ7*IBq}mf55=NRN?93 z7*a9k?Oa2@!v-R4@d5b_M?@_g+gBBbmZm*myThUuQu;i}z_`)DDP{qW+qB<8`**ad z?0@`!cFgfonfkuBHd>cz_SkYWK1h1SHX%NPiFKAk;=|zY{Qbh)7Ds(+Uw;0(IHzyN ziK?x0R@hG6bn{(J)xy5JckcDxp0VoZzpAg9>x4Bfuy8TY%9!P*dhT!DG4a!>4#LMD zUsV6}>&o>2X63VfpdCzfD__^iSti%-+z4mvf!` z)?Zi}`d_Nu>a z$hZ8-JnFW?l5K64&!X=xIgC8pmuMcopfNup^px6FqTKLU1Rr<0%qIhm z7aQhnJUr3#jzF@&g^PQWe*e5a<67?=8!djOsLhjEKFV*ESoTEXYT2_8X_k`x`_6PS zs6A6T_ELgHWa8JXNC%dHR~$^!5|h^Ll|Pi8BLa?#Mzw$ioH&_HXUoFfLTc{4;r9lmx6a+R`$Mg6ijUO)zT>A?zs{T;r2Fe`>^tL`T#(o{ cX*|TQYIg2%;hc@iz$D4w>FVdQ&MBb@0NExq9{>OV diff --git a/_todo/image/threadim1.png b/_todo/image/threadim1.png deleted file mode 100644 index e98531c6d53cbdcd4f93ccf357c20d744c901b84..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6891 zcmV13a00001b5ch_0Itp) z=>Px#1ZP1_K>z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBV1X-PyuRCr$Poe5Y}N4CdF@_p}nSu`)1@69)p8F_#rxa4IJ;}}6P zhDbtGBx;DkAgFNzX_Q5l22nr|5Kxpxc0oY}LyGee_Xs$Rm$Dihqj3=|M!W!M5@G%P+sM4dH&p z`9|U2#~yoZ#flYAKKbN-P`kTyiy}q*2BA->S+2W`pMW#hP?$KO-|A2tNz#uAtbOSF)9VFiuB$Y}-f`datLU-;W5*{9Y{rdG;vu5@6-9ion z%0()TR4yo_p`oE(O>W${;qUK%@7}%hIt#K&+~CsNP}`OvgSKbNI;eJL%DRXq^-{f+ znbZ$GeDLn!gZB<6-dE@c*#|^=Kl{MF?4&!;ELne+>~@x{FH6>&CA xic&II@OM> ztYT{L@H_J=jT0o$OQpq}9;+vNJ z%rnoxB^a!7n3YcHnqo-C`s$NFe%cAgg_@Z+F*L zHXn?EwjPXWI~a27{yG7Sk__*}K(;pCWFn&s|wGUiqHA z+kEaM$Mz@3-cF9~OOEYLj=f2>OBQ=w7TY0m~_;sr73E@{0!dnxpf+`2`4I&&u6rHEKF z&_Dw~6%`fb<>h5%Wu;WkQfX~%_3-fM>+550xeNum=n!NT|JLHpvf{?bpo@_~m#8*V zZH)|SiwtUy4C;ssy0IsyYfn)3o}ivRK{4)IaH9WHh-f?3!?Q11+7m6k87=LKmR^TO zN!z2OSEHn@QPP$uX>*jciRz^&X~)T9OJ`dOp~KjxW*3heH;zDurNes&L2Wx+ie6&de!8$G(5p7k>wFN= z3sSE}sia9NxgwRcNF}XO$<<&1^*S&0stfdL&COao<9QMEKbK!7O-8u(zy9^FV$8&sC<12y!JG!(0yHcdh78sKee&c<;K<9%J9_kJ zc6K%@EHg7RBO?RX732oNf$zTiZd+R$d&>o1`x7eINEL{1zvvKT6=^%WEkC!+-3?md z;a2J4R=vfoc8hDRr)z`f>WdPWCW*@xiA#&brA^{;jcSL)CCY6L&z7ALd$6A+xGHgZ zpXz0LI5N55>00MW@~qk7R=LHkVvAe3yW8dTq}QiS5<#DNu4ORj3f!Tgq*tV-@Z<0* z_~M{;?AS3R_~3&NUVH5|xNHyvN7Mua8{2%Ony-FtYu&eP+qQM?6$t3kpCg~Q&nKO)YW*8rtVU%ZSlt0t3=taZgS%#&v49jO3R?af4o@H1&YeMMj zcKlo{XLiz1d%M~{PpF|O&(T9lW*MG&(XeQyVS(j;9kVn#Vri5;gPZ~Kl*q@>x*f4Qu@0^33zN>-vnkd>d|xcbDH z)R(5D&zX`rXUgF@Q*x}PEfa6=bbZKkrwZfBUgo;9UX%r;z_VM4k&CgTfy~T4I zG(A0Q!2;Wgic0pDsmB)5bbDY{NG3cAS@{`1(;$n_e8m!){fcGIE0%e$63u_rvdC`6 zX*-Lvb{1u?Tb#4EsI-5f+WrOMS%`HzE)ngiv3~(6EA7cqrFIs@b{3~zn^9zES+H>C zv4u19Y-b*^ota}hGs|{n)o$sW-;5Jk`jpz653uwdJ3@dJjdcP&lypJyHa0evLr2?# zp$Bv)C#RN{wlgIar;E$E1_noJ_UY?3Yz+ts_45z*@eA_y4TNSLKKkmbuUA#ovbWoO z0+_n4C5<@^iUd3{&nm$5_l+4zISw|^Tt}NcN1OaNZ3>s!6fLtkv&^P=g-zKCn+hkJ zN~d|XPIIB5PRsczb~-I@aGHx(;U1O@>7iwB*_5uZDMnVy=bu_WzW};y{;@ab=Rud- z)+9vE{q3{jCSzS6fzI0L3WHYqc4p&>o)O{B_@cdtrVBRUwegBJ34@N_ZPVqJs_KTa z@>-#moUJ-_y1byUBscHmk)s6}nYps$%zgV0#qK>285JKM5xXNaGB_kc8XO)Z4TB!d z&9{HUp|0)%wgZE9X{{`)z-dO8b23i2IOIcDI~1;VC|d1s#?7JF&7pM7l8UuUD%UQl zd2ey;`o;Ad7B^76IJh<{(jYywnjVf!kX6Z=rDt51o^oA!(sgM8Ha4!RN;$A-;sg~h-O<&68g#qRHxx;vM7I-m1&u9P^}N}SJc zb#B<^-01Cm$@?AX74MbJ8ugO*N+fIaey73Pxqd6j0g9}UVc8bvQjb+7UasZa-5Ub4%OhEAKa6yxef% z()s$v+Pa3C+WP96I<9Xyz0==+x2n2MgH~46LN%wsr;#sB>u#)X&PjbgC$%*vrH$&f zqbco2Q#x{qcI6#{cIO@Hq1t==K}wS$Jv*>7?-0p{X4nSJNx6C~t12rsF*tD1w8`kH zpbH|rUYcF}fIuHVZv403ejA7|7yi*#7QvjL7ZXHqDA)h_GrbU_k?if%P+q?Z{9pBD=S1L5e67p(*XQLMPSYnrS4^L{eA>iiQ%&BSV(e&cwA9?lVY1;8 z(+P_v{qc>7&q3F`Flo1=9eU=;$;qM?idoY~1Ufc;i3xey}iAEVe;XJ>@WIF_wV0FQ}@oDJMcn?&mdZWs3e*q z=heFFs^il85(-X=6_`iwwF2kEP?zVh?&qk>R20Z*t?1E&0iAeu=LMA|C|zM#;$-)%g#)mn7%(Td{{cnfJAy} zvmN%nCn^di5A+H9_JRI^0|x;YK>{Y&hG`!-Z~(sv;6_R`ewdAO;_T9)f%t&9sUK8~ zx~QfYK9kpuJHy4qtmSJt^iMzi6wry4Q|@w04LE*_C~5GI1kfH2m3_Ur*}q(^PRtDpoZ4YN57(A9}E+(J=LGkn}dBMq#( zJ``cl&0D`^(8qo9@h98mR?dA39gh|mAT@cp&n1mYsodUKPZa{=-Mt%BBjGxtqCl7k zwy+1a0@g@?WX!-(N)%VoJW?@pPEc`0Q9;UClZy|vj=@a+*W^A#^!Vaa+kPO>$Bi5R z(MKQ2i_U(pimRE5H>5Sdnv&$Y7bKO3W!N}14Y;$(0Yqpu@OR`RYT82Fnu%+0DJUu< zt{r!MU0t`cemoj>f(w!A1&2~rObHNQi-aSng0Ve0TxQN(cw%0cgEdan zjaOvgLg?C|7uwSxmsQnX;y~>iEx1p;`XhmkFaTQ6yivt$8N)wprV5`i!KSQGkxyR{ z>`{Eck5S!FPpQ6#PlnO3!KMxjCK?VLN&yB-Gst(+w42ZT!O)e+-A`}-Sq>c?7FLlg z27t~h&`;7vOvgk>05nD1r+559pd-qN?z`~UgGvN&bW^pE0f&bk_MMwHZPEe-4nYOL z>V?Lx2|7}1cN*|Tr++jFMtUC(=-O4-$UI6%=x`eYTRI|8!VmC^(9zOICO+*-r6Y8} zl((m8yIJX85E^7{YSz@oUm@4wFiP)y{| z(Ids!0)nno5GYK%W3JecL&wMwhIP_X$vnVR z`ifx@6B85d7>O*Me{H>de^#U+Lf86?q62k=j?ppXz^582p(FN^mz#$hUmzIh!C0EH z@k0+?JEKvrR2`wCWk|=-=vZ1ofgCypF)(Wd(^t-xoF#hpEWC}8v9WfAR=0F!IQ&&; z`=V{3iSe84crk>x-HFPk{*mbL0goLp4J)d!BsxMzTnqD-xhSDyxQ<4VaFYbNO#+6m zN9f!qh+NHpo=4p$2_adq)k*PlLaG^mAn7@wDF|}5B%as!PH{X0C9E1P#)6a$j zy3l5YXoO~{Zu<|UHXwA7X{)E<7R~K?KqEjh9ie~r*=LyXz(oliGrW4bdl2@*E9A>B zzckjLdr>zZ5y!!-TX^7r)E=0#sG2orI84wn(?U3DS$QG7fA2oKhXG^x5L|GLhqLvf z0s3Hetu^$aXE;pIad!%vtQ6dMj?BNoaq0K7Ry z{^?vUOmXoagD$KReL-j3mC$kV6iz-t<%|WqICnil2V`Yv7tq-NDVy|j;ldbnrL7Mm zbUup{++pcsgBZVtrL&2g%-(f`&f+_xNpu+_ohpu(&Wwhec?t2NLv#E0`O-63!%%^MJ zInu6hqxC2ebZ}RNF28M*OkW;@t}i2C(1r7a6=8sJ<4HT6w9*yrbP{{fa^y%~#T^~_ zaOiw$zcR{5!vO4V7u@O+fG~j8q1|DHrAr89SPM2-<|60-tc<6VC?mb04$5LLMn+l= z*Zotz+lW2spwMx59f>mfZTI(Mk;XCTdaJ|-Si1bSU3rwTaYR}AfFo+c;5ZN2k2L=S z=x`hSb}g}cQ9viR3F3k~(x5+Zq;0TqAH5l^RvB^VoICgFsH39s96A z2Y2Og9iR(`lrXF}qI#qnpbs_xJM^YGv%0W>dF&Ilz2|5+zJt2I zRv&lf=N(bkQU+akJH0se!f(a^^s#`KUaW^h=iF7IjKVvb$Dr$lI5GirOjG2y(<|Kz zZfS&j5#C9z%RNW>D(>jWhePMw2exz!A&o)TSCtE)Gw$L+3_cNQ4EiuZ2X__d!dn`3 zxno*i#T^~_h%8+Roi!Qhh%`n>Nz-u*y1uHML03K&&YnuA z(jyfC2!8#1gqF_iT{&{Z1~F(folPJe8?Mt&1pzu9iAkT1CKnaxB(&>C z=1H@WqY)Kl9GPAGp;QZp&bcdx>+mp8@-R%MzJBoiTHkXtl%o9Wq+!spS{k4;?kdp9 z2NXI!tFIq}t{=nT&^dQi=-!I`J|hnLLp@x_ES-xAbYHrgJQ9;aA5l{eH3i*!qSBt?#bW&(Bgdmxp?|jzQ<#Rqn1syM?vh@rqlgM^rogp&qW| z&>45tyX$CUkv&IMmm9r)9ZMHAB1iHVDV{0MES-sRm7vgMS8ql$j@SxDShZ%#ecj(~G&?_w+kAM-z z)A8&hcy`p1sVRH1H0FEB1$SsDM7dMBC43MyJ^o)@(BZ^$x)^aLfG%IV4$I<_`J?iX zx<3}i!NQBG>&wg6DaVh6No_4zmU}R%sjaQ9uE7GleDPhj{;p84y0lQRz9tj4-ZU4! zY&1&G1nWYIgnz^ni!$Mv^D~MHgSWybZDGM+(Hh}wy>PaoFcYklEfRGaC>S2Oi1lqD zD$uc_`i}JM{h5b(pq<6sSu_%zC~t4NHm;W!Ig~DrOBTNMATRFj?pTDI30n=9ZExP} zPS0GNa@W zEO-sU7ulc?d@l&QM;Tue0uD@sC_sa)B@AKQeUj5*=~&jx07YEr?0TTI5{tDU+9eNs zkq|HmfYAmfe36%ewTFkh2R{cprSin&LyyfAI?98Rp`0i&gRX%%gYpj%cc3zIxQo#9 z1(`W_tbb!uSZ(a;{>m$_7@*&ehmfv`ii^t5!!uvE$s6*l2Ss>;I1C)7jcRm9r6T)H zn|VF6>Sk5GiF`nJ@*;cZCeQ4h znY@bSDNJ6t5H^UfNzXMqn2Tuu_`U{VTkZeTz`*z=8^^?S&*B=NgQ@&d3*PjnLH!B+ z=>R&Rym8aU4T^JOVd#yU@Z(d^CzZm4K}RXMrHi}@#|=Ng{mBDe3S-R{B-FrtD6WS4 z84a#RpF0drDELIAGL9O(c600d`2O+f$vv5yP zfP?@5`Tzg`fam}Kbua(`>RI+y?e7jT@qQ9J+u9P3F$K~#8N?VV{<700&6x%b0e z88qv@e0b~LM56`)^1mb`uMp025Km=682~Zr82pZ!68dMY%WROV(aX=B7#R0_u z5d@r#n&D^E8h zfBoxUhYcI{#1l_+?AWnGhYn9Z`J~mxjT`6BpFe*5_>m(=?%A{F=bwN6pT|mm`|Y>c zvuFRig#@*~g;M(W&d{KiO3I9Md|z`%tc*j4z5D~7dFB~!Z*N~;-vtX6SS?+;6tI^q zTlV3HA6~d{Av-(!EfrZINw_2tlB`_0a@DF;Z@>Na>eZ{?dFP!qYu2n?yLO!<>({TR zzr0`%0+1juqCgNADIguBhBR>sI{%w*zWIhE%a<=l_7nw~zjEbD-@bis-n@B2UCQ-I zLqh}3^}z=pXe5P0Cw0ixt5>(r^}AhhqBb=FTA!BCAnEnAgc}Bpza#10wD|kbj2$0j z?D#Mv?jv=@QG`KAguf?6MD*Kf@i)^GZl>?Np1$*{qz&mi>(UeNl$UtBzjE!`wS7nO zN~)^YBqVq3+1Ja<%g4vZDj*;Lmi^I3AMM}2UyU^F=V9}t2{X7xMn*!KNa?E{6KiFkNDHs${5b?H@2$H&%yzOcVQjV)n zj=Pc^SC_K=R!PB>;RfDhTABHUVToyQ>0`!>u^KgMRBCD}nr)-7i8nKAX49}*z$3bw zB-y-q^Oh}JVq#*pO0sR+HvGj;5*$JR1fxm-`~Z(c$kt)#gq)c;Y))?C1Y4W82JGX< zkIRpO_u|Ei<-Av~d3Vy3APq$T!REm`HelM#6Qxz#--Xufh_2lcT^Ao+A0OQiAALPO z`bI+Zt%T@1lHN;*zMl}iIczCA#g?$8A0)hszibbVA`C*_m7?5EFr)xQQb@2NVN-ql zrYrHAYU4Lm$8Wk-ls9?k5XKv2yQAWwTfm$VBSsi_|N85%+OU~%3$V$o0Sx4TkkH1) z#%|xfeaDU+@$vC!4tc>I2#&_Z#UU6~0z^bbL5)FDa1{(WnK*fMo;M>+8@08y@aMR; z;^tDME`<+72!f+426GNeEx1b16(p-?#R$tHSrG@7KVj{2QADZOqh&o614c;3w_Smh788T#u6&mxOe)>s2Z`dDMHWGqe!a!lEAP0nC z47!PliOI>yDJdy%8;~?k@N?I$T{x7Kl!Raij3}rgppHb46cQxlaO~vO1>QXDC6W;D zy1KeNO*vvr5c|@lOX#}ZzI|IrNe}O%&851!dg~OAYlTP8My{xgTyaj)s>l_WqQYyU z!fT_#>!ZROqQb9j48O54{MN?s+Z)3-Eeyel{`Y|h+cOvxnx7?+Z-D5wlihYlS=0Mq~kMifwoxx>#R zDI`e9;XkM$XC{uG6yr^n&D;0s)2C74sJ&1WWKvrY3oaS=EtfA}7E(Zo|Cc1#;F~9Y zKWZ&6rKP1&?v6G4_ZH6ghZZmNFJ0(g9_)W2*zaVp-)$`IcRA-+{1zSSYVwIRM& zB&`qe-4HO7B}-?-9_*(82#N4e#DyY}Ga-H_L;O#K_?IsXC<_iK2@WV;II}7>VRWzV z;LUEDV4p7^uW96sdu}z}7;}*;bht2F8iOgv((`U@l z?qvD+2I9t@mxP3!E-o&}o{$vJHHZ`W{<#kXHF!mrXDYTurwq1Bl{9m(-Cjq#EJxe@ zPPVyDHbO7efsoCOHZFM!;e?Kv%~s9{00I{pFSO<5KLlY;~X3vj~>mR zVUVWO5EA#R5P1b+`~Cd`NJ-FNedD<&Pj87#?AtY|Z`YK5T~hmZ$?V@{kNpc-_Al%o z&^dQtr=x>96%6WBJg8IIpibq3I-Pv^`PHLGv2#(%bW-fc(Gyb0l0lt{26f6G)G2RJ zCnR#fzH|0~F1zi!WZHL4v+ugAf7g`$-AYz0c6jD*;LVSV^eeyC$Q$EniuTQT<0$+& zHQuNx*bgKCLjmBE;hf>9!4DP;((tZmz;-XPvRb?cE$gLA#oOGiMrFn8X`-#gtcQ_sUZjystilbesqg}eAU8a*= zmXl46lg)l78-s}tu_+j0Q{-w}=4w;!X0zJkb^b)cHjbWfvng}4DRH$$lmZvqqb|0G zoo!*HVd$U3zO%A&g61v^oHL&($_s;T8iD{bX9dlg zJr_DVa2_-vA<4zX4Gj^tO-*V}&;n$DX;RXzH@f{tMf{f3VfN6BVfLBB?6XD~bpHtZ z+>!l{jO=%8WWT~!`<1-buk^J(<)i!Z88+Co=Qv@{iP3$_4BEfwwf=>p`sa`8e|S{? z+>!PN+y`X456BumVE6C=nZpO94IgkkGQ#QE4#XQmt@ul)ZW-YX(jdz7#!p}X445Fc z(L*8XFm8Bqo;Pkt3}~0;fJbd@8SyskagQshuExME<4tWj8glpvwBm5-XerQZqb3~o zP5xZq4bmh?-QM0lC+Fazus0S2hmp=-xY*Z!zIOYK0P_|sf+8?!a!UHpq3$Im$LS|a zZAQQX?W7POICLqmyHYb(*!=VCt{s^kuF$>XU9-l!?w{a#(9<>7(>2f2_2?wm!bz^h zlU++EyPTLj1p3YtFLstSQ@qYhalv1<2S-m%aekLUH|i0@a9Lmd!D}A$XoILn=G5RZ$eAFu|bVDdTK^_*VGv7+aQvS zqblg(jb0(@rXp_!n|M1rJ0Hr;dwX@{l4aorUD`~;maHIM9QKx)Qh@Y~EccP4(Hu3U zKnX4jU%D(puFICMRMh2ftjgTIZ$-~87czI{_ zcgSzt0c-^MlqJTEweDPBU(XMF_c-%@Bkv!7{84DXdDvv%=r@5Ywco@Wislx7$)Ce5 z!@kiGBY)m#-%Iwvhd1$-fD6145$=Kcb5tYp=hR=5^X6e=8$AYexB>$M_vPe9ZQQ!* z?a1(mbxc=;ua)atE7p(-hqAH{j2=Di)agn-1#CyGT(71pS4Apn&i>q0_T8&;GIQto z9+~f(H-Gxk`O^#Ldlv?Kmjrv4hIpR{@jkW4yJE5T*)Z>OVbh=&!=_eAdTGftMLoY{ z+W95kl}o(OEb*yW>~k{Ipk<*xr6E2=!9E2GeDXv6ik8o>h>K2G_s+7{M}jxqLX(x- zReosTjcL&ze)xg$7D%(71ek8V`F=YF%kYyr=hR5$dAz{WWwB=oTE+ll9Nx&jr%-6V4x8i}6>dd6enTa)$UfGja zw+PLq1P;MJq+uWr+Ny*RD6wWQs>dw0j*M(xwM zF|~Jh=;YqkUcIa*^?Y&SOWizsbe+(n>v-E2#@Tcp+r85m>*t^|`&zFbKN97PZZAJ7 z3gmVdK5OLt?YH03%!D8`9SI@2G^7d)*rxF{+K+J(^s~^A0~@Hr*4f}1d^NgbOz@M2 z*bo505Ey2Sh=|U{*Wk&~atnhk)LG+s6KTjINpN$B-oDg!C<{i-v_&H>e@N!xyt>`RFB*A&^UXIJu!%PU(0nMFI2%%h??qXoHlZ!YY2e<$ z594Jtgihno$_eB#Yh=}M&1WB=xHU7?28}=HL)=@2AlD2LD-KYaz(q>K*mfQ zMQV5X+eY4>fBre))bV% zMv*O8L&|I^3mZ@~8@AA1^Ng{sK@B-#wN!Ji=Gz~#Iah1o70s2wdg;oKjl4hm>@z*R z0KVB^{y^v&u%)YHtmOGg=qD|2rHaDe1hPd-@=4E@_2D25nKy49ZDn{$mm zotz^B)bq-JH}d}Y7*f2wkM#m7FwqVXwO)!bBCK_wQ zHCB~t#L_sIMh=Z#T+?wg%2p!^D|QeR?yY*&|JKMGD>8ZB2nuK0#UhV$34ox0y!X}r zYvg_F)-ArjhB|^P#h}|CEQ+g89`~JSLH^)kq|<>QIPxam7J2`xeF=sU+X!!fSLKc7 zp|$KAxLd^<9??l#mp3@_&2$rQtgz?rfLqa@TX?rr%_D!#50N$TzH{de8{xt&^0{;8 zEcV?Z<=(pX4UYW7yiL5ZjFXj`Z9$NfU280gE*Y?6FPE=C>){SP#=8rH@23k`fNJ$Vpq*pMxXKM$&V;O}x=d z!s-L8Q^2Ak2%bA?3%ps0w@A@bjnT>5>@x}xTbDQ1BV)km4wy9Y#`7igBqb)w@E6NfA0ys!|EyLyQie%-iD6 z+eZ~K&YL~BYiYmR0dga}`3JQ%ct6Zwvc|+EKl7+|iibJ1{^0Th;sdwS1o@9kE z+EL^a|H6!pUfx)tF6XT_-}f+fVAAEa;EA-8lFxzatfsZUpB>S#EyWpC-ao1NDn0gU#ypMMR4n67FAWp>YxLj=iK2b; z6;@su*+r_&6U+UZ+`ffVki}@b7R5r;wiUHBwJ%Wc*ot7}MXv@!(Px+1wajZc06q%w#tV-a@@CKb zv&I|m{djoZdTjI|?b}q|iXeI0Qnc?sfVUdImf}tCxN7Fl@c@xFZ{}XKuU~NHtiz?@ z;nj>%PeJSPa%x!;`j7Gp6sm%732I(cqXdjL%xVUpR5o(=5*ZT;ES$d&#K z6L0?8J59XtqAvc$$tJxI`?2P&p8=~JCc)5;M~_P|DK*BMAy?*&522XKo3Hr7Jd%8t ziCvh+RFd4jg;P-JYgaYJ(vfG652lu;_5}*ps76kHy%bV@6>40~=1t$_5_z*v-k8dp z)ee*>luNm_2^3%x+S20V%CCJY!_Xo@?s8wa=jWkSLqq-~B z5~D2<!)J*0hW7=#{LLJkG<)suoYZ|$q&{i33?F>2Wq0QQaVt?^$^Y{r{N z(}Th$@n-qccC&I_N$T69D;Xwc{zO+mqg@E@A|OVx6z_}ECLYkxpU_#^JcKIFx_I` zj|EZfOcL*)pdcV8>P_~ISE3VddiDh0KEQA~B3R_{EdkKX%gY0AhP;t?$BrHI^YaNd zJ$r(0Qvo^qxV7R3u-ON*`HyO&Lh*9^fs{$YK9N#fTwGLCM4#3uC@46_339^Z=mSB% zAxAhl%t`J8ImF39PVgxnCio_gT-Z?-iBAgK>=f*@d}gpsIfPJ_*(LCohHYFd3IACU z6a_CR91{AL3<(vTAXKU(tf*-N6p*XUn>Q10Lf*)G#E22AQZiyvQVBMMEn=m0PqYRK zLX)Ww8h?l2b{=RY#^75KE zaiXWE=Y$Cp#!E6z5)TiLv674#Gv;+kMvor-nk28j`syf2MoQxD?vDIJh7TV;Y}l}& zLx;X1iJK&@uC6YU3>h-S`GGh|;^^o|8`zDb5ClVb2*pJrNDYEykvL9)b3y35$N+Kz zL6(p=2r`M>LMZ3B1iBVn6s`_}%Y@*1CrN^9pDf9gDN|4s5R?hT+uIxELo$8(bQBk4 z#*7($4+LdM5)cqTr3yg_qo|pnxA99JT<4SN&4z(}mH3uW5P`4!LY zsiDVCE{#vtp^`G*@M-XDWZ&Rzo(~sb%Y8T*v_N|B;K2fN4d2c? z_LlPP%(3h7?IGRD`~BD_E7`p= zcjlg%ITNj}Dvyaqh6V!zgQ=(>qX`28O9ee}P~f0vNilU6<7cb+pT;xoG;iikW3;zqz(R7$@FF;bdEFKC$5{6VYj3P^Hj=m|rckl*d zKhkWn>tvnMB#qv6vdpB0ezWDuQrD7XbFIJsobUasT5jHtALn^_d0BZY`sGhp(oSmb z?!POZZUx;d+n=4r)B;{!@4Md*J_bIXn!IjI1>80EM`G(dCcHl+e9*p(PU!i^|8lq$ zH9+1R7?V3xm?N)Z*dZX@gY>p<`SjUZ3ymw|YenS^)~OnLBTUOmakWj|Tx)e;+@zzU zTFcnwEsB<>vuEpJ_ux;gcn<1@Vryz%AJ&NtV1>8qX+0zR?Zcx^__Xq8S@ zCqJ6q-~Y0Srx3h86n}p_7}xdqyR84ojIPAF4H5CiKIN%D*3@-XQW-Z%MuaCTHyq0xkx+x%qn@@-)8qwSvo*c zl9FZt0g?fdy$@H9dqeS&ag@T2>|(?5)I1*Rne`UKrn&*JF1t8F?p%12Vrgh4Ldy8j zsMa{*{ z%!eg zb8@KK)10p8UX_`GAcJ6AB1Lk?x*@H1;?7d-me<{ijri-o#_MZ*=%8fU2>ikwu8tGW z*V}|`=Z~DaU+)H@QxqQR(o&e!9uMX#Qpzla&XjD#9`{oQ;h+56@8*BIk2}?vd~2~B z6s65itA5C_d|Z+W&}n!v7>Tgja?rbr#Z(F)HM|5|(=cBL(qj$mn541GYp`5unLG;2 zfN$Bl*u`gGe-oAW-zD5pxA{4Y#WcB-i*7kd+$EaPS3;Z~jZa%PpU!_>cwB78zX1`7 zVhC7s)Q?h%ilQGXL475t_(6;NiYZWmE30dKB#`-?Dd_vBTCmZ2Dp%Cz{O^kEpNTAC zo0{c39_0K+>peD<>qH!1gdL2bI9PZNiPC~P784jg$ByloXfok|`J;NAf2N#Bmx=L5 zKiDtx*irL^erA%;n~9+C>_&>0spO9msFbONN>FnOgav$uAv{PlU6cPvB3EyYZB>kq z3SpAwd3=1d7>Xn3GXG+{i6V!-@k8i-yD$_98&|*zn}Ia0MvdDPXK%h%JWLNx!T%Y{ zG!et4;mOMS_IJrtKvvc(H}|ttU2v{GBwxlJh7WH#+~w(Be)NkNO#kuG{1;eLK7!<2 z%x(RMm=oN9ke__UU>eI=hN!!?20O#dl%%mmN*4m{H@=4KI3^VdJ(P z?N+t^B{=b7F&t+Ssh3vZl1&38Mk@Gzk-hzw&sFY1tP|?vi-LZ}lEM1(K0Y4_`4|?q zi8fkfoxCkDO*ij(^arn9tzp{-T&WDq#1J~YX-&aB#HrV-!685vv=%!tPPK-n)wZU7!OJ*R% z{avQ%U8d<{&E_n|TvdE-#GDw=l|t#JwcK)vz_OrE_dI)Y4_+*jhz)1OTRUJF4!?{r zoxmuZYJ~-_uNwyINPPGqP;8MAfTj8An{@#zJn){V#QphY|B6k?#>7bId1!WpKV!13 z(|$77%JrNh|K|8wFuykQ<{(DU1pU!^Fvm%EA}gC;GY@WU3!Le&8Y(jK$n$MPm#rLO z#Af_(-9Xi07%>b- zI^3bV$EP5+Uyjo>DAtF^PttJN4AFYx2QNC3?OTU8deC%{Y%K9d{dPCf*%+&FU3QbM zWbtrQi@^q~@vF0BMkQhZu)%r8oPx(`({H&2D#!k)!qZ~v{x!>~M8CeP$2tw9FZA;L z>~-5ekUJ7#wTsA9a_l*o>{+w5dPhI?Mv7;7SX7a)pn)mObhM{P@2rXMSM0L>G z)6byKeGW9wR;7K>(*p+Uz!vh_&S!Su(nlWb_lgyCV{!U*Nbc{UCT{JC?y^0EqGc06dt1rLhiU+iU5M@woz=DGK_iuiSy zcrv}jR)wNc1Nr;acusu13qpFAq+v8dBxZF1>I%2KIGBD{-dkOVoFN^zlV_>dItIL6rwKwj(%tJAO389|F>L-?i%~? zcdn1sW@^<<*?OjlpKHL?+2f#RxL;S$eih=N$w!vAl@N0RIt%ONyp$B1|Ky7Ls7dj# z60++nb6tZiV_&BKhN9|Wjpzd&LX37A>SA>#-BK;FFt3;AY!7-hX9^OM9;HBpLr=;15oe{IrsI z!ck!Gf8dEP@dV0Uh&_BxbE6N;cl%4ccKr4DfuVh*f%H4wT)0qTl8hCC#U}=f9KTB* zU$K_~T{zBZ#twP2Uo}R*HjlDwYPVY3e5W==*?s-{)?B);4~_^-luMdLZkptca ziGAi_dY6*cMFKVe^Bg=KSty)BVNxk zcJ`F(Wo|?h%htXetPc5TLpU)>6@&k3V#4jPw^l3DJT*vrPs4+DKEcw;Tf99K7h=bQ zRx`=c%CNs17xK%uxyf!-PZr&6;p5{`WP%9rr|p8RWfNSRl&4jZpP^ZHd1zHc>?a|e zZ&z*@K8H(m{D|TT@d}AEDH}v4P=guNVFejneCcqCBxw+V zOd2mk4>5Q2|D+5hL9K}Wyd2cG15wl&-d-jocmK}BVHQIvI=cQI*9#-_$WrBECqTsf zVbp}snkd`Z(;~~uy`{gJn)_ys> zG4}n5EFMx)(iW$!mDX=5CVURbAbo$SX6xmIu7ix<24Zgye<%2y)>nTu`u(j-*>h1% zm=a9McjXYj_meyy3|VJGY+FKiaU|GZ=NN0#O1)9km@H%Hx4xr}Dw@7o2oqg?*Pr3s zmsH)4T>miEsgdam=Dh!GcK)+(9X*^y@M15dg9p*O?B>SNp7r%|&}JK_Z&smy;onFa z_1h(`)Tznafk`!p)a_B3$lT?q%eiwJu}r!5ff{8ZPuNo|r=4+J2PVP&v}azN@FgNHKS`(|OlPpd9i36)GRRvmqfWu{`7!;#zuay|*_k+{b_n$)qLSI%| zVE#>0$)7?mCYeMNBhG_TX?$GKIZLz4M!Veew)wRaWJ7ke`+9s#`d9nOA!AB#V%IDa z$E=nFEXkeP=Z0%a@pXTP6ticr>{Eyj#qcLUT}}#bvez zy)7rjgO&MAN_Dl(jI=D$Du*onn+xdARbiHVq&3y(WJia`<1ftoO9QYu27hU{-`^+f z7m!($Ra`A-z^XO;5iwJ@5$#FTJH&MxMXF^y(d_kURwcXHeya;!rdRJ`%S1;9X)3G3 z?B%*xUKgV$buEZ+d5FqSL&wAU{SAHubpq-J!9ME%+hJ!2FeW63`)FCH9m$`#f?)Y6 zs2Ct}4GY(!mpefY^X2uI?0&f&Qg75+3Y09-~a<+FIvj+8fo2=p$x_!U#a@HNFkSuU7jFVPSE zd!l#P{@hXbb>A%3WZ`+pd{Fxtr`tbFODSnQFoY^G9p|ks3EoZ9r*)X@Gpmsh|LA&6 z=P;P*@J4G7j`}qn7ZTO=Pj{v-z(gDVPN{!f7xqEP!cJGT(RA^I>2`^)qPs@%6;p-W z-f_{?t`SN22mkV1$J^T-2kr&z1eN-Xc0uwf<;es{dvqDBHz zaKh^*5+`g9t#j!ECOXZ_O~beZGHHuKnhmd1$;^`mfn$Mv68&hs3rL(a$SAZz5Fh8X z4=Z+4Igcbv&rmnz0qUR2Oc10{4JS||d#iK6thKrFi^!35^4cv*9-~C|@PwI#<TrY zX?``Pdyd>Sz@@jU0sShE3THYPh(hP{_#1^w&qWy~!RN#LgW3q~?z7CxHaL1Dj6?u+ z9R9--%3gmyLbODz1Hs)xn|V8^8>hhnAzNVDrZuiGgVRu?h#ohBt%};a3`uc;;h)a7KO{!{4o_%u zpS!lkZ`I^gCu-^R_0ygQGqt{R@=T-3i{4#U2x{qyWI(RlN*1P=!MURBZD>n$KV6R`EA|x7@>X;jo#0mt9nkc_{>8I7|14tJNwrN$WF}Ed&^#RdDcZs8P5Semk z5>_TS9Ym7kG+vm!mn2?l(N5<-W2Lvc-I{@CY?z;a@GirwUE97={yx31--KEG(_@E; z)w#Is9E&t;FfTsS@P=SkYZIXz=BtePj}f4BY^FX*zMeJU%T0I)Usd0S+$)PhwT z@}6Ma?Q=_J<>h}@qgA%eL&d_j_UnS49YN9yo>;auJQKEG5oc|f^qcKN7!7hi$ucvq z0%)2yWS8{8BPUaC$Say@n1J}Zp%^a9y)64cM4&QanW|5y97TT73B?qRS$SCW&0)y_ z{SZq0Qf(Bg`+SfcI(c?BKb&hVicLR(I!x#b3n>PH1~P82`V1Tc1A=ybUT0>}rl_Xx z?a@k=@6;C*KAL4kw_r9r^SHJXl?+!G6jtSr5e6cS6RuW6t5{zC1T6&kcC+_dQe^f` zBjjNilM$B_*9&$_WW2Tzv;OqBuF%;=Buh&yOUb1H%M59$h>7apEPrIHB#a1lgJvPd zpH?fq{ray+Hn;pGPVe^ovbW@%CEavvIyIze|B88(4r}~hWfewGvuj5-mx?lrd+j_Re@qRWei(U<$L?Nh z{kt*ryy?(!pPS*)`Fh>lVzRmVbf5w@*<5})NM8Jyp~eQf6Q|UWFMPAz{rM|0mg#xO zjF9KKNc9|%^C$CX%+F#F$92=z@6(=bjE9r`UA?{{>K>QHugFkk4W$`rPsa0_BEjtE z-2D>uXJ=j_g1J>7Su#Q?x{t^7(+qEVx&*F~`SbxfH|aMNYQQHyJTBBpX`J15S|VrE zs&LK%4B#}UvIHXx4;;CRsr3NE*H&36FjEX1#aK!}zS^=d4uETq9SQiU4|lU53V)VmJhSRLZ7Qs>C3grS}=HJnY2M+Um18)ADtw_sbkmSIV3J7@iY_HFYh2{(cM>si!olNg8 zC8Z;88_~ZO{hi#VFSsiZ3 zEVX_u@wM317fZ()Q5yU`o_7f>OGj>ph^+rym~jMu_q6k_G(aC2aLhf>XL3LDYc@dl z8xzI<qzg@tB zRI=axRn$^3K`M3n=`?`dHika_RXK3!0vea`tbLY5hP?JP^Ym~ejA4s48zfe}P4LXl zHyDuXphdnQccUWr*P+|fH3>q^$)Ry)^m-ou%0}2DG(RUAVe~{v)6egG zOy?%Ip>;}>t+tX>59dJ8%Yp6ZWkAjdj2l4(`~dGp2})rp6KM3#pqK@ke&1J!!1#i_ zJzs3oa-K*f<+D3QC3=~)iXT*8VvYeHd=|oKL=ax~74$=%?+8x`=c`~^ovy7&f2Iy! zIyV}+b@l$X6-6Ha0jTnWZ=>FI>LG+xux$^{%3hV~jwHX$dyi&0bgE+~@rr?-=CNO% zKw>e&{_E@F^T9z`y{P$@-l!x*dU-`w3c;}tvh?!$mToiUT(UpOo8uky4yBHNICQSs zNB(ncZ1l|D=v)g(-Si0b`6Zp@kYL>;nzwLg+09q>)bi>jvDPTXk@+)z-E}kL@Ly1K zVv7G-+P#BkwbQSD{j)LdwF@<;?vI_XdH?Qy)p6D7K2|bPGb|C{O4YZ@E4=b-k$_$w zrvk4AlPY|pxuk;%4hySbX(teA&%e6|#jRWuvdLgr;QI;6(2rqJAuz*%T`imZK#Ene znMTa$av-QPMtOtCdV2&1Obua)_U~~T!CZ&i8##a5e9U5ur2Bc zpX$1BRPAx`Zhe1nZmV@GmpCx^B|dc1eUV8_1dzPi(t924sf@CJCYnKKH5Vj74leJL zpu8Or(q*5JtqnI|DQz5J$uU2WLP6>!te3>ffd+)tr-e|RxZ2N-yE-Wv-) z@INAI(ISRxmJ$*mDVWWC%2)o#-jL+5c2CgtFmT}T^B3~ns&M&Imt+Ms=4Sx;{LS=q zo_yq;2p{|H7uA!jj`_xZt*HcsPJtrk{jn%2UCd)|cZ7j|%m-}(bhj@f^RD#1xs;oy zZXAlD|-9ZYq4eS5tEgGgcvKl+QX3McRxr*J-*CMHzBI{Pg-yWyBS{rxP z5UQtt*6<|h_l+S{_o~xJMrH1);SMeLn_&zfspX4>CYrK_bMeszeY-tL3U|`+cHO}> zyyH96skk0`nQe3WQo-$pDHVRe>^u?-Z}sc`?@F`(b3{Bj*F~Iu>?1l6UAt3U6V8&H z`dR`J*yUO{OsszpR$Asz7LvG)2PmZjR5j?K4CKt8xuHEoZ&kup z&y;T~SZR6DoM@Y??9;GsjW9FAZLj4tgt&yLq;JR2h3(HoXNHl;WW{SQIf}MJP5n&(#94!2lQ^Udg#kQ;(;N$T)$ycA!eR3A0~&DXCf6C)J3TVM zV=Qg<3KtvX+0M7nJP0Q?RybR*yU+6<9#^9j31j(EKv61=O(_;|#2JVt=t9wzuQoO# zPje>h@%VI_Pbmgebt!on(O_l%PJx+f!Teos|EL~cv$S*evazx3V@6E}u>Bf%9CIq= z=m_-oof{L**433JoTc;HFVUr{fK9f6PjmTxOV(}zpG(=e-VnrFBh+xw zH?$!-DE;B&o!jGQ>uu;MeaKkOFRw>eXIciy{ov{0eS&wH#6kIwca{oF-@(6S7zTNo-|h9!mNpNk*7748KwmJiSe5Yi;vBu>Fr#=lrd15DB$^vC6D$-b;u2H*Nc->i_YLd^t zlCaPy4zs3`og%Fuvm{g2Z)Mu)oQ6Xmj0c?`i6us#4fnZOHgTdI!z7V=Qc+Lt#@K$7 z@yV#u)98DMghrVc+syxCCwgdr<`vO)FA7Wa=Smp_azp=B+_yL+V|+EZcUoh5Z}q>n zI6D>H+=(6*7Sk`bcm?K?Gq`&TRVekhZ;&mVZL+jI^W27s% zj6ZR=&0N1aZl@$;XmU!NKd)GI$gjTL!RHk(zZYQGYxB`s>kj?OSna{-Xjk;ibo5qS z#__f)aheeLLT~NtH<{3_tJsstX#6uqvo0PH|L8Tspw&+>k%g7DH-@ma^VSqmmE zQy2-E z!7~m=!QycCa=vs>Jkm=mF`5`5`1fxqhR|VPoQ@L?tmpSD80HY7XrgNT`T;}5b_4^M zT4bL#fv_XI=xOs7bq3>{UTB=l%v&UVWPC-hzHVC208~9k=$UkdCQYr21Pn#Cu_%dW z#TTH#8Fr)W^%)ME2}W@VPjcLBmE2|8z&mbM&;uoC4+bA^Zu|=9z4j(P#uo^PnZ`Z3 ziAy0^XMdO<+)@w2(K*Eqd_M9RdN|Z1yhZ%IW!4lexbnzO;v((e$7&+kQpa(mPi2b7FL4Ec9jb|0=K=o2|@n>`yWo z)e&?JW57U$B>{);jzQFl%I>y>yRj5m5BvBLBzfND249=>AV=G+u(wx-i-Nb&VIzee zxY&Jd&~NMi{(28bP9J>=Q7Mw_ET`C5jE&|RxCmOR*5~Aw2!SomR@5<7-1(46lgZ8Q zQiga5jkTfrdL0N~2MryJXY8?12nW9TrH0NrKNF)3>pKg1)D+}?+jEv?ppZKH-g+&| zE$6J+DQRE4a;Z3;KLkZQMj~7`sv$(PtuKB5vQ>QQ(rI!fQrJc|Y4B{nhuIczm*YKA zI=;$c!2XdY;m9QZZ0{JxHgXq}?2O3Tizox9nJY`zEVJtr4M@W1RtIvV*649~puGmr z_R5Y%S=4QyebW4ks0os;Hw?=yh|z-4lMW`Tm-Tu~Mu_EyA*v_LRQ_!vVGRM$Y5lP* zig}mWQpXRL1<{(bOAQslPpAHbBf630uV7PL-y@^D^8c&Aoxk2sep~ypSqJQX-njSz z@ydp`Y-qV^PUC3D#betZR2i%@bt7ijFry>-N+&Ya;`oU7R-*kwue!~P%UMcwA6Y|y zB0NaD-91BxmNo_^6sL!fO-Z|v@WY=N{H`>&D;xzTCduo9BCC+!Ph}$NE`#)JycLFA zKttDm0JB!42R|t(HujpFW4IjHfWiW{9$o^soxc$WE|SE>R&dHc#}P8qID9??C9lsh zc3^+jX&>=gVPrFsh{ep{qKYClvh46XuBZy+oPIiU3M9t^ygLur{L1t~%Ak_l;W6J1 zQ-tR!4a)Qqp!0*^;av>TXUOCWPTkALlD^|*5^4YolFoO}~0Wj^M*d7-g?}j0(rt{WNZ{1L30Qj+Rw9x&=ELG)md(!>* z+sTy0;TY`?>E|299Nm6j?OsG4ZZ0q7BwNMD;me8@u9Wncwq#H}+tD^=k;D95G8lA= zVTCg#6LqVG{}rQ<+<-R6Ed>*7rS@C#Wm+JRmZI&F2KBDWfk1)oj4hLp8j*p*pZgWq+g^h8&q9z82Oh^x9wm>8HdX|>sm+|(RSS)FGgEpYPH`?)Xz0&aaTw%8$x0C5Yi|4yUtg}@~&@YQfRZ3yE zbA;pNpIY+OGsmlKS}h#8?e1sm#Rf}M8^7-U&WJWKBj6juVBi~9`1^!%B}2qIoq-tt zIKSm)C8ejKjvi&F&9pd`!o-n~bN1lC;uW0OBuj?YZJA=EjJ~9PAo2mFc_sf&qzzR# zGUHqEYEJXZndb~xkMMFK0MT!|xJF1`E4W-=%CHB75s1shaPEx|Y@G%j($|?Gp#HlKN#hG*_>GB^pe&` z0yPRx3$@D+nIWVu)d!p*8OABmqVA@}PhXZl)}A-m{jeuk`{n_sGW6NF=Ame42n`Hh zBY`W-;KwVw%f@y`kBx;;BvO-hrw%tkGOos(UBVGWP5ojR;zL`&thyuPcUY>YqCB_e z-7mkpX<_(tX0UFXkd4-qm$M0R5AGw5y8Fp`lU5lArH}`#Dl}~y0&!TYS0Pu3qeI-lO<+s$_z zMKX&&z7c3TIlENiC{K7)@WJCIVxp?y`O>}om@_=F17~$Z{?dOiyLh8f2j(;smK$~+ z*_KO%Q|lVNxUVnoN?6slUNR!712U)kaz8LZE>kJjpMu?JIdie|>RJ^8q8)D4<|JPL zc%^IAsGgo#c#e0?DrK^LA7p%zDf7x0@u=v-gnQ>@u!)3%pAA(DaX3hswbf|RhgGv8 z8{4YQB*MQDrOz?gsOE~fUZ*Cel+`0)B&Up{+w}zdB3<5IV{y5Qf4o1c_Ar%M=4TwVY>1rofwLYMaeFV zA;_@ryn>rgA!_LH4`qLwYh*@R3X59YBWzz_zZ{3XnpTijYLyH9ZVh zdceewWs+u6;VhXs3k-aq4JOKy2MmkAkW%6rGOzt??+W|4;IKAPzZs3jz{t3OTLH~Y z^U79g6c6puiQX++bOejO5MIw?DKFDw?~CNbySj{)T7C$APxV&ME?JebT~Mvmufi&k z`z@4!?p+;GA1umiw_~thVeret=qk&wO2ZtqWsHT=e zyiXG~@wJ}I*>K9KgzZCDWm*nH35SvjE$>N^i1EkctNr#wGN}i){R$`#jGZ@pzC7cl zHE}pOg_>Bi{~p?@nry==N0+mbeW2nfufJxoY6C6w#823caRF>JoGA40yD8arNx2fS zLQ->%8B%7A=WoDWi;J&FAvd0A&U4k;SBNTFXHgv zkKHetvgkvV#+^RREzqbQ5FQ9$iBy+Z`)AL6GXIylfQM9XD{A;26TtyK5c`$itSJbJ z_C?l{L1t+Ys{j2Piwp+H8(?_4K1_TqPbi5tq|8DhELm`i18|!K9d8!%;$$HOE$+RS zEw=F-4kxfPz?v4v1}z3Y*NQl(^F}%^Gh<(Dc*C80m5#;0)))xR`fa4qoDP_`PvxxNI_>EFGJ+Kdo%WrC2am-mXUj zUaZPpRS%jdX$H1WfiPuiVFeetTgTW?xE5!z%>I2|ViZ9kyOc-49m0VJgl)T%>`8)r zUdb)0V1IDG8T?ox2LNXN1mXvTFrzAr`s70xBtaJ{z&RV z9uo$@9?+;F9Via-%k3Di*3YvT?NJPGvxoMiEE~^_ z3LHFE1skk0J9v}9M4*~CqWNj1wPGNQhyUy9;i%EqM@_-Z|5OxxpetAAr zMFnTmP>j{s{?`CV*V~ibt(o;sk(Jeu z&~9?jajzcZnRNSVFOpc?VyfaC23KKt-DTJS`J{W!-e;B>pIjQ!9*u4o220eA2bU97)2OZg+V+fmAe> zs^zM1J2X$(YJ<@rnQR?;2>D(MCZZpyge|zW+PNS|=i-=`dZ#C8c08rOvjqJo*+(YY z0w4i*bNQ3mN*A63&wGiN$;xWe?eG7}1Cthmc**2JMxA25iz3q2Q~02r@G5O;L?HT~ zsl%4Z9V-`p$5vS-|Jtn0MKT3t%#nq<9kF|2apwJ>GRmaPCck_v&i^9b{E;A<%>JdW zObQQ{ryk_lx{8sbO}$*S&d@e6p^JHECWznpcnUvKx;Do)F!lwJB@h&ccYZg)>{+GtmSLDlcF7o2{A6%5m+ ze!W|B(yh^xY;ZY{5H9Sh3OQKim@DG@J5lceSvT>RQ- z_Z>TbJhhOqZ}h5&i6JLY&a3>i1%o(n%m4lc%2AVI0qeWoPv#=XjH?t29e&dadA3&F zpItXWG<-wL`fU|(Z~Kq0%*Wy2OrSvfV;eMbaE~ByD)2a6se@Ve5jQ$Sc8zp#6LuS0X~g(`r?LhE!!N( zrM*?H4$-Q_9J8#6Z=^c4yJgv08H7}K_-Nh|>j$R#L{%tPnVcB&F!6py9ODlCs;KS6 zxu74IT2^poM9t~3U( zLaPDBe}8`ZH>YMKCaR0sRn<9Mf?I*kudBrtyqI@l*j2$_PT2><*V~G2q{yPk)B$U5J&` zDnl|As&sv5E1acbjH(b6iVY#l1<}DJ~XSpkv{}4Vlnz(Jsz5Y zhd6l?Zn-ZCb`w=j8v?@?II*%q^}&geVcM`6x$NuQ(#CJOZB16oU#u;)8+_OnRq-50 zv5bS1AP*5tyjhF3tq`Ch92h`XAAVhYTV?WUn~~i0u!~+h-N4rjRwGFV=JFV5xWU_S z7OiLenJ^wvb@KJrv^yvbOZ2vnPiS1)cHY477Ru0JvlLu^UYJ!DA3(EJh*Z~Pm}#g9 zc8S)>6>{G`3a)aXbJ*%K64||>^(mUG4SYTAq&ve!b;9)YW-B?7L^M{k*eji|E^qaN!xP1Lb##zrVOfpiOQ;ucg#Yim1ke7?Ft4EhVq0G3HOiTisvfT= zLSPecFtR>;9CXlk50lZB1=>wO-g2ZVs#H{-5soDsu@Rw#ZX-JhAb{Oj{3D*9ct`DW zq|SnE;L9GhlV+bZm*Zx;`ziI?4)rHs`xXeZbq2-&AmHQGjg9v!0123&1HOaqIjEjA zTepl8ULeSNx%S}A^wR|wKNC}^fnQ&OZe1>aCy z90;xQd5_Y*;-)34g#sKMD8PX}CPAZTRrRt>iCN6AcOzE95d81yY_6PLPdpL{bgcVc zXq)*M7GGX(^55fb!}X8{kDo7ifsT;M8xSVR4Uj~7hbn-<;}veYFP?$h?1z#8V8ibJ zO@oPs)LY3lnch2ys?+}=HAx@I6;l04vO8f?`LSW zXBLsg^iVMXKYYTNgoAKS%g%xZRSv20qGqH_aW1C%3<8K^_vO*kD-}wlk~k}>XRg(s zCuP4vc1ut6a-wGXDh-XFg+bE=y`jj@GkuIa;^KiFAI)%6jq}K3t?K|<#f1FY!@DwZ zM2j8wH$UHApOFg~+sODG4O>AKo}j9x;Wv`kOg#bv4XbwfaW`g>4-;hHlk(U;)25wv z;DNjRpFg+1c#`(pasjtLa6?LjitPWeVAmRg`!%$dN3$FJe@Vi)UNA8)492ZH}(v-H*9@5m}5>7 z{sS;{*!xfpVq6&RdV$Z?8a!DrhP*nS&ZA{z7}cOUCEM z5?z3fz2yG2X*xedFw95%6HHhE9UBm9tiH3fi219(Trq4{`W1SxVd?GZQefQcZjbTIte7DG;nP0$>(9MtB9LN6VAtU2B8 zOKeCB3n)n`Q)OCEnFYzNCtgd$>--afX0-H*!}(!uiBLhbhy}b1!r3y@;hr4OsqZS) zNnMDMyO|u8(`u-UM;VLW#<79h3)1khf>u`yujur(O73px5fcA4^$TnBXm{a1hBwrf?MFonkM4ncnR5M62L(S3K5xrZ+Zn* zvn7>}rmM}BtC+wB%asOOo|SWm!?z}iId5?HVCu^61YUQlH6eilMl~}ur?7A$W3%-} z8#ToYC*C3Y1WuqA9ws~yCQxT1tKFAVHv3aDC{ad-dTOS@RhmwrZ8Tgpj0jr!aOu4}5IxdIa(%es zSgu=O3Tz~68F_LGp&-!8I z-s2`{MZ7L)rjy+smvE97;52t}ZR2z{+IN2237Sl;AC347s^EweRmg=G9LTNh2!%Bp zH8&I=i1ZSsFTeqz4CM^BQJXIDF`d|a)l3x727l%t0T^UhizX8rA393e)cNUGx12!6 zpKTnWX=vv+pg7y@(WI=P2(d?`1*k(j=&klCg0ArUEd@Z^$xJY;Ij{MKaiTX1^7@&Z zp3PdQg7AYKxH_(4P^hQW$FnkHNEj!3LuwrZAFdi_HV4QTM}p6PEi1CT_rP3>H_ z3myywFG}q%AShx-o(dY)62FQLv+0ktYQobgBsAuV*9qr`)eV|4FJrGJnDq^78UQCE zV^P3BH9cNuV$GlzAP>P+(P;5zhX(w;L3HCy%t4xM(LMj zdqRq;MzA9gXmBxi`_flrMIP%}5$62d`TTP33akRwo5j68-+LZS!@6;qT0~35FyLCIs!-?8(A1); zk}e-gvVsq*R#s4;8^=M1gnX4a%UBd?Zg=0qsRXbEV>Hh-W9dxM>BUy%%8O?FFu7yY ziY-^Me|@aS>gu2;gRdwMHBwFVv=v#ia&-| z^`y2O2eN*zkfBpGTWEErP@lI12Xt74B)P2=3|>I0oFO5+-gT-LO-3i$oD7GwN#6ye zm1kmxZX19ir%o99U5(g(U`oc5H%#cO9lI;wIe`xY1kSDblZ`{=45e}RXKVL6kEkul z*}o02f3M9JJsJt{K{ZSLXV|PF!fnD^qMiX5>Nmnc#kNIj2@%)jFabSz%7SRRA=(cVq2-0yvK?bP(L~12i-wc#E-SFH> zb7KWl6a|l6)RR#_ObA4>tii}7!{NTdu==E@#YAFh>Yuc)Iw|^$tkDb;${Vp z`O^eEa|H?rua;-|tVwL}?ECNQ%cZNqi{~4^wgR3VO40v}w?xzdo1hg&SHeUO4(QNU zf&6AO4RZBhaY1v?hFyXhZY2KTDpXxtHhq+488Z%betF;M)NcAed|OcP3UaqK_NN3qZl`pKK>6+OzvzPHcg_s8#_{jtZk`?c%7ujlo=p4W9>GTbcluX`Lk zW;2dMMH|F}vL~-M5}?$$z3oXwcXqUxW1^b=!N1Rq)r3PoF*mf#DOq=xlx!_Yi#w`? zWsN6=y*h$F%$yC|S$Fv@OaeVaiYr@hgJ(LfC0%X3`?>FUe!jUk*-_+0l%39P#gdF) zJd`hEdQ%>5ey_^izRRn>xK47UCohR2QNvl&A#?(H-52gyhUZD4?~38|7UAl(YO{x6 zm)S<{L9ZtduUZ6>`^PRPAI1@b4u^emsf2_bVeVk$C{bWq!myGhYsjmS-s)$4(HVpQ zwMs}4oqtOIR8q-W4QotXH^9%>I#evLul@Z$BAQR_`j_HU3?IUgb2r$)0yb4nM}*~i zyx2vOF7$IYZks6E7V8>Qw-(zSS53S_$#)sS&E1SDbAifa+kfsuMwyRH`j5}Uksi^< zvvAJE_gYJV)z_!nIbr*Y|M@F^YoVpn$h!H~gI3t@h%B6P(7ortuVIz>xw-NyTh-Bf zyU`eNeQ{ZQCXY)nsVe-<4saUJA?c3qi^|IWa^S>Gw}l3So6XDKy(8$&fjKx*_Qw6Q zE`*oVNQuqNM&G=j`YH;$(DZ%3Z+^b}WZ&;a2W=CF>)MdCc0Z;}|1v9#C|;#8mDkau z94f|x=K?VZLjo5WhcsM!zt81tum!J+#?h-fP!qpz*oQ?wzL=-PMM)1QS@%(zr4s-3;c5Bm$3$|;cU$M>`J&J{s2wK(@F#kW;S56m2wKZIMxo1sfS2n)`JM(4YR=>FNs488s-tydLOc;0xwKsmK zZA{U|2*Ym<#6Eg zz&zgMHl+GtKo|gi`x<;>2?DEwgmbCqssO?|l8dzQo(pW>*t8C^yk2Y9WWkdRa@>(9 zx!<(T$R+-so&$W%NGjTV7RLu?Y^{EF{16E~;&E%!9HdErt5s$1cx?di-Ms>=_2T%^ z=*v_1*~4p*r2(&G-pGQj3LICe9OR4QsvNu`H}AC(Q=NW;*I-4FFB5T69wTP@)q~Cm z)F~Jq+DB?hGjH(F?5dXm#}R^_LiJbGFqmozU8=*zc)KddvjD)LK3ClF7y}U_ZQ)nJ z97xi04;38pPQbm&$?G1K))G0L6!N6&`@sus-nP92)fm-!xor*Y7jcb)=!=~|%D^Z1j-j81|CcRk9sX^y6)A-ZX)K6! z_!hMy%B{wn=pkT=={qj#B|&K+_yAOh4tg+5NRAo@hGOhP<7Rw9A>f%c7L?KCSw&>u zE!_Z;4EoIPRD{8^hOX^h@z!nt9H&FxZH#EYwd@>0WL^zUwe3o^zQAkRhAR==yvBRv zkK!50zn%v4#lcrv4y9b{PHwW8tcqzSFtMD?amIqp-d zx2JY}7>|kv&W^rLvZ_X6G_8*OEO`@*DyATe+Q2Eg!K>(g8ol|fokWkE^}i+?Y>sH* z)ju&U5$kk+pgE1EvLGt=5Y4WsjU0i9dt9qK(*IJgWu@N5g}|!{ZS8qt#{>UR`MxGQ z+3bqe=N6nYSEL*`du9)TzW2nr`TpFqMgC^;I69VI&zFdEHmuvi4WMsJ`b(dUsQfos38`Fb};w@7DcS*58-JJt@HzN;ke!mIjm?A(YYMh+y!jWu{3!K_BObB7FqpYTK)vf#`})I0?RDEj z_2=ylL$bn`nP$8Ob|&%%#e+$j&0O(xqSruO1*X$DiF>~sR3*vz+atJ+w)N!9i@qRp zs5>vz{=uiz3kZqvLk21@cGVVApyQAaf&y*J2i3>`c8(C+d{>M7mG)yKrfZuo;F)@N!7-KZ-tZZgip!9UfY-rUs8oRjQ@rk3Y_7V)l@FXi!ohQsUaSr5p%o|b z!)MyhDx2Ysvl=|MXAWp6*P>l#i0Gd#@IZn5=sL)0p0*@9(L}~%s@=&@(<)W7H)yIl zABcEtsJFD-B$?Fz?-19{HWo|M)w!mHS8|ZrpqO+iR=%Tn7#W|XD4&@xyd z_fD<&i#?|DFSXeODC10#v(FAqJm+R8S^ovaltk5z%CP4&Qe+-fwfM`^@w($GMHbe0 zt8VU@#+GpBjW1L$!SJ0eeu8HBJWKe<38tyIq2aXX{ib3NfRvclaB~X z2&_?VLZD2ajq)s(K(xtT747^In_fW>cZC@uW2*8Xu-lw>YK$menkR)x>~N+iD1#R|`F@#vaJ*}$${=RKt9C-mrBi#CSzBS;GaosH$_~TmakE1i?n4mr!Oqsw$-GGw zvj~x^9jP5X#>A>fr1SGsr#zSDTOt|I@+>)ffixq^`j%VNk+M?w+^y};@su2(c^^C( z&~avCrunxM9?}-FYow&8qJ!U_kVr)LlKaqUgaEos z#AuDY-b7$1p99B@&3e-ebI-RF>Vo!1_OiwkW!)@{!ddu{?WFK&S&; z?{BD~Wtej=pZex3R7mw6P$VFtF?`uJ5xnl_Q#Ua5g1_!aPIb5^7-8|dBI^+?vf)D6 zrQqJj2~_kZwnfkf>qnL;S65gQ`_fV?du<=MS zuP>YrD9x|8t%G~g!GjmWCGfn-^Zdb$OSuOMrmjT)(v7wb7IN(1HmTlzt=8Ndq2*p) z>9-}WsEPPSE6&sAIcJ8!``1T6*7)@cr6WuPG~5hses%jFlLVQ&$Xcy93Tab)QUaDM zgEtK17&@JlvfB4$m~RJfS{V&0PX$*ou4DVU2$9-4q^c0o^(gT%#&7NKQ)9K_WlN6J z51Q&v%XIJM!cEv>Fs3)?6}mb3Rm>+VmHX zR>tWB{ba_CUEZW~E_HDwQud^ZjX6Bht4~hFKK7nK@SOG}u z2(!ze3!z@x@)${z2^=xVkhaZ_;!ID3inN2qL(mBDF0@|6(ozU(M!A7t#HVJ@^rzA6 zeKz}k+|y5I9N=@QF>|n6BD~$Zi)%>YUTgl!YGIYyo$e};c=}4h5B_7mh1z>N4eK`XXDaBv{8l(q`@WU zhuvK!!ad=%Q-R}cH?6WKo;UUTTbEt;Ka*N$MHFxPN^^7Km7-PXNFi6ZCrGfm^zPEh z45fQwt>0Z?g+Yg8JbC@8GJ=^GU6t_5Y+dxr$X5@ZcSrMG8^4=GZ>_O*$JnXRB7K}1 z-;^sT6mI`#pirnANkqP(XQJAv${8Mo{!t0T2Qg%1$im>4J;}0&bJZT26E4Z?Cn$?7S0C}VfW_*@dH%d3|1n}iS3KWgdA^Sub>DA zR)srNKLj32pz`00Re#b1T0i82jk+PH771A&cxG$p`~rlC@ac))WNuY6PC=VNCjX&B zNH2HJD1Smi2Hog@h%m3K7q(!35D*fXQDD4K6J7eJxoNFxBbJ$J_D97%9<>tYUgHbV8IRqt{CRsS^^_37Lr!l-2 z4K6%Md}ALjIqFqZe*33u7VfJSl9L8je@_mc1Ofr~K=Ms=A51U<$Ey2mfzr6$#V}Hw zWUD5FsX(AlvF7n(B1(z_Hr_qDYfE4!u%m?72nO*#yMBKvv61v}mEj;*Vc<0Sq;y&y zx75D;B@jgpnc4yvM@J7{+}_ps)xQ7!Ean+-_~xF!dfXtPe@&t2et8r4Dp#>PZoB_5 zr0Qafsk3`dZf@>s8de(kSj4};%BwvXMMcGLUEhVrxdxUltj+Z$sUlzUcZ!b8VFR0p z;zyHfj{Z?O)CvD+fL59cSB!!dA8$}Vn%wF*AX)qT* z8QeS};nZ)Nk})y#zDZ%^+$*fnQx&=A$`TynwFfd6ORpq=8$ms+ug@w4!sZW$cX?IP z!K6jL;4{8U!pkdKxO5$tz)9Eh zWybYeZQWNIA964r%QGI6urh(lWT}2kHN~Tw{YQ(vdXunEl@zeh?72EQGMdJL;Np|x zQP>GD?d7zvD)o#tN-Orf@5^C$id`ArGQWy56hl9<1Jed)|E^E`u%k>yefwY_<&Gf9 zunjm1KKSz@rQx>^U^7=c&~kVD9#Nn$3HMg6BzK`un)gVddH|_V>!P!ZTfv@>c|)_4TSWGc_p9f{4STc!{NmEmd>P*L zKdA3P8$k;I;9Bl~IC2+-SZiD!H@4uyS!_9DOdo}%$xTXntrd&Gq7|Q>gga< zkO9?(LOuHgC4WvAH+iDHdUV`FI<9E_&{t%c-tr?OF58&pv8p`6HNT-z^j0Auf9iC5xbkRTq+MdhPWaD^>{^ zix}jE{kR*k;_ZZu5=f#Aj*5-JNYd&O?tBZ-;$@C`V&}3y`icZtyfI8JK4nZ<=V`Li zTj~_-i{7>Olp0pA({`;2x)PwiV-c8VQmEwvS|qrqx4kR=+K!?GZ0#}`cNs=5()Hbu z0fetBMCXp5-T(fw*q*!w6Xa@bD}*~Yt_Ztmv86QUV5FjV6D&ngW2PbozB3KK&_a&( rLY0Qc*(J{k9ODITnl&{wdv_E+y3V|{K4t;twz6F`ziifI;+gn=OqpY| diff --git a/_todo/image/view.bmp b/_todo/image/view.bmp deleted file mode 100644 index 6df6a235d0ac60356c067c58896a64f49cecce7f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 337014 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 eqpXR*Yz|7Lb#ECsiV09PnRjMO5nm diff --git a/_todo/image/wiki1.PNG b/_todo/image/wiki1.PNG deleted file mode 100644 index d3bbc7d46b4919c6cfc5cceb46ab1f9b585df777..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38056 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�&UgvJ!8u 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

    O;@+|Mb4 diff --git a/_todo/image/wiki2.PNG b/_todo/image/wiki2.PNG deleted file mode 100644 index 8396e1af36cff1641154c4baebe4d7966bf048b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15286 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 diff --git a/_todo/image/wiki3.PNG b/_todo/image/wiki3.PNG deleted file mode 100644 index 8ad5107ea5f8945849dbe02cc87be75c977573e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19440 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 QN9!1mWmRS1k4ysp2PAHFF8}}l diff --git a/_todo/image/wiki5.PNG b/_todo/image/wiki5.PNG deleted file mode 100644 index 3629c48ce616abef703f9213039be8ebeb39acb2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14930 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 K@--A|Sno60q?qA}UR#1PdT7AP6CJ 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

    Z6N5*6E-JWuy*R} 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 tb$X58jRZjPe?St1m}fuvO#fh3pJd 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 diff --git a/_todo/license.tex b/_todo/license.tex deleted file mode 100644 index 4be767e2..00000000 --- a/_todo/license.tex +++ /dev/null @@ -1,215 +0,0 @@ -\section{HISTORY OF THE SOFTWARE} - -Python was created in the early 1990s by Guido van Rossum at Stichting Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands as a successor of a language called ABC. Guido remains Python's principal author, although it includes many contributions from others. - -In 1995, Guido continued his work on Python at the Corporation for National Research Initiatives (CNRI, see http://www.cnri.reston.va.us) in Reston, Virginia where he released several versions of the software. - -In May 2000, Guido and the Python core development team moved to BeOpen.com to form the BeOpen PythonLabs team. In October of the same year, the PythonLabs team moved to Digital Creations (now Zope Corporation, see http://www.zope.com). In 2001, the Python Software Foundation (PSF, see http://www.python.org/psf/) was formed, a -non-profit organization created specifically to own Python-related Intellectual Property. Zope Corporation is a sponsoring member of the PSF. - -All Python releases are Open Source (see http://www.opensource.org for the Open Source Definition). - - - -\section{TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON} -\label{python_license} - -\subsection{PSF LICENSE AGREEMENT FOR PYTHON 2.3} - -\begin{enumerate} -\item This LICENSE AGREEMENT is between the Python Software Foundation -("PSF"), and the Individual or Organization ("Licensee") accessing and -otherwise using Python 2.3 software in source or binary form and its -associated documentation. - -\item Subject to the terms and conditions of this License Agreement, PSF -hereby grants Licensee a nonexclusive, royalty-free, world-wide -license to reproduce, analyze, test, perform and/or display publicly, -prepare derivative works, distribute, and otherwise use Python 2.3 -alone or in any derivative version, provided, however, that PSF's -License Agreement and PSF's notice of copyright, i.e., "Copyright (c) -2001, 2002, 2003 Python Software Foundation; All Rights Reserved" are -retained in Python 2.3 alone or in any derivative version prepared by -Licensee. - -\item In the event Licensee prepares a derivative work that is based on -or incorporates Python 2.3 or any part thereof, and wants to make -the derivative work available to others as provided herein, then -Licensee hereby agrees to include in any such work a brief summary of -the changes made to Python 2.3. - -\item PSF is making Python 2.3 available to Licensee on an "AS IS" -basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR -IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND -DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS -FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 2.3 WILL NOT -INFRINGE ANY THIRD PARTY RIGHTS. - -\item PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON -2.3 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS -A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 2.3, -OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. - -\item This License Agreement will automatically terminate upon a material -breach of its terms and conditions. - -\item Nothing in this License Agreement shall be deemed to create any -relationship of agency, partnership, or joint venture between PSF and -Licensee. This License Agreement does not grant permission to use PSF -trademarks or trade name in a trademark sense to endorse or promote -products or services of Licensee, or any third party. - -\item By copying, installing or otherwise using Python 2.3, Licensee -agrees to be bound by the terms and conditions of this License -Agreement. -\end{enumerate} - - -\subsection{BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0} - -\textbf{BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1} - -\begin{enumerate} -\item This LICENSE AGREEMENT is between BeOpen.com ("BeOpen"), having an -office at 160 Saratoga Avenue, Santa Clara, CA 95051, and the -Individual or Organization ("Licensee") accessing and otherwise using -this software in source or binary form and its associated -documentation ("the Software"). - -\item Subject to the terms and conditions of this BeOpen Python License -Agreement, BeOpen hereby grants Licensee a non-exclusive, -royalty-free, world-wide license to reproduce, analyze, test, perform -and/or display publicly, prepare derivative works, distribute, and -otherwise use the Software alone or in any derivative version, -provided, however, that the BeOpen Python License is retained in the -Software, alone or in any derivative version prepared by Licensee. - -\item BeOpen is making the Software available to Licensee on an "AS IS" -basis. BEOPEN MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR -IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, BEOPEN MAKES NO AND -DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS -FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE WILL NOT -INFRINGE ANY THIRD PARTY RIGHTS. - -\item BEOPEN SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE -SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS -AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE, OR ANY -DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. - -\item This License Agreement will automatically terminate upon a material -breach of its terms and conditions. - -\item This License Agreement shall be governed by and interpreted in all -respects by the law of the State of California, excluding conflict of -law provisions. Nothing in this License Agreement shall be deemed to -create any relationship of agency, partnership, or joint venture -between BeOpen and Licensee. This License Agreement does not grant -permission to use BeOpen trademarks or trade names in a trademark -sense to endorse or promote products or services of Licensee, or any -third party. As an exception, the "BeOpen Python" logos available at -http://www.pythonlabs.com/logos.html may be used according to the -permissions granted on that web page. - -\item By copying, installing or otherwise using the software, Licensee -agrees to be bound by the terms and conditions of this License -Agreement. -\end{enumerate} - - -\subsection{CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1} - -\begin{enumerate} -\item This LICENSE AGREEMENT is between the Corporation for National -Research Initiatives, having an office at 1895 Preston White Drive, -Reston, VA 20191 ("CNRI"), and the Individual or Organization -("Licensee") accessing and otherwise using Python 1.6.1 software in -source or binary form and its associated documentation. - -\item Subject to the terms and conditions of this License Agreement, CNRI -hereby grants Licensee a nonexclusive, royalty-free, world-wide -license to reproduce, analyze, test, perform and/or display publicly, -prepare derivative works, distribute, and otherwise use Python 1.6.1 -alone or in any derivative version, provided, however, that CNRI's -License Agreement and CNRI's notice of copyright, i.e., "Copyright (c) -1995-2001 Corporation for National Research Initiatives; All Rights -Reserved" are retained in Python 1.6.1 alone or in any derivative -version prepared by Licensee. Alternately, in lieu of CNRI's License -Agreement, Licensee may substitute the following text (omitting the -quotes): "Python 1.6.1 is made available subject to the terms and -conditions in CNRI's License Agreement. This Agreement together with -Python 1.6.1 may be located on the Internet using the following -unique, persistent identifier (known as a handle): 1895.22/1013. This -Agreement may also be obtained from a proxy server on the Internet -using the following URL: http://hdl.handle.net/1895.22/1013". - -\item In the event Licensee prepares a derivative work that is based on -or incorporates Python 1.6.1 or any part thereof, and wants to make -the derivative work available to others as provided herein, then -Licensee hereby agrees to include in any such work a brief summary of -the changes made to Python 1.6.1. - -\item CNRI is making Python 1.6.1 available to Licensee on an "AS IS" -basis. CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR -IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND -DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS -FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6.1 WILL NOT -INFRINGE ANY THIRD PARTY RIGHTS. - -\item CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON -1.6.1 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS -A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 1.6.1, -OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. - -\item This License Agreement will automatically terminate upon a material -breach of its terms and conditions. - -\item This License Agreement shall be governed by the federal -intellectual property law of the United States, including without -limitation the federal copyright law, and, to the extent such -U.S. federal law does not apply, by the law of the Commonwealth of -Virginia, excluding Virginia's conflict of law provisions. -Notwithstanding the foregoing, with regard to derivative works based -on Python 1.6.1 that incorporate non-separable material that was -previously distributed under the GNU General Public License (GPL), the -law of the Commonwealth of Virginia shall govern this License -Agreement only as to issues arising under or with respect to -Paragraphs 4, 5, and 7 of this License Agreement. Nothing in this -License Agreement shall be deemed to create any relationship of -agency, partnership, or joint venture between CNRI and Licensee. This -License Agreement does not grant permission to use CNRI trademarks or -trade name in a trademark sense to endorse or promote products or -services of Licensee, or any third party. - -\item By clicking on the "ACCEPT" button where indicated, or by copying, -installing or otherwise using Python 1.6.1, Licensee agrees to be -bound by the terms and conditions of this License Agreement. - -\end{enumerate} - - - -\subsection{CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2} - - -Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, -The Netherlands. All rights reserved. - -Permission to use, copy, modify, and distribute this software and its -documentation for any purpose and without fee is hereby granted, -provided that the above copyright notice appear in all copies and that -both that copyright notice and this permission notice appear in -supporting documentation, and that the name of Stichting Mathematisch -Centrum or CWI not be used in advertising or publicity pertaining to -distribution of the software without specific, written prior -permission. - -STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO -THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND -FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE -FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT -OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - - - diff --git a/_todo/programme/PythonSample.py b/_todo/programme/PythonSample.py deleted file mode 100644 index 9388a38f..00000000 --- a/_todo/programme/PythonSample.py +++ /dev/null @@ -1,4 +0,0 @@ -import sys -if "PythonSample" not in sys.modules : - PythonSample = imp.load_dynamic ('PythonSample', PythonSample.dll) - sys.modules ["PythonSample"] = PythonSample \ No newline at end of file diff --git a/_todo/programme/__init__.py b/_todo/programme/__init__.py deleted file mode 100644 index 155efa1d..00000000 --- a/_todo/programme/__init__.py +++ /dev/null @@ -1,8 +0,0 @@ -__rev_id__ = """__init__.py, version 1.0, 30/07/2007""" - -import sys -if sys.version_info[:2] != (2, 5): - print >> sys.stderr, "Sorry, PythonSample requires Python 2.5" - sys.exit (1) - -from PythonSample import * \ No newline at end of file diff --git a/_todo/programme/after.py b/_todo/programme/after.py deleted file mode 100644 index f56329b6..00000000 --- a/_todo/programme/after.py +++ /dev/null @@ -1,18 +0,0 @@ -import tkinter -root = tkinter.Tk () -l = tkinter.Label (text = "0 secondes") -l.pack () -sec = 0 -id = None - -def change_legende() : - global l - global sec - global id - sec += 1 - l.config (text = "%d secondes" % sec) - id = l.after (1000, change_legende) - -l.after (1000, change_legende) - -root.mainloop () \ No newline at end of file diff --git a/_todo/programme/alltest.py b/_todo/programme/alltest.py deleted file mode 100644 index 959d7fdf..00000000 --- a/_todo/programme/alltest.py +++ /dev/null @@ -1,46 +0,0 @@ -# coding: latin-1 -import unittest -import os - -def get_test_file () : - """retourne la liste de tous les fichiers *.py commenant par test_""" - li = os.listdir (".") - li = [ l for l in li if "test_" in l and ".py" in l and \ - ".pyc" not in l and ".pyd" not in l] - return li - -def import_files (li) : - """pour un fichier test_*.py, cherche les classes Test... - et cre une suite de test pour ses mthodes commenant - par test..., retourne la suite de test""" - allsuite = [] - for l in li : - fi = l.replace (".py", "") - mo = __import__ (fi) - cl = dir (mo) - for c in cl : - if len (c) < 5 or c [:4] != "Test" : continue - # classe de test c - testsuite = unittest.TestSuite () - exec compile ("di = dir (mo." + c + ")", "", "exec") - for d in di : - if len (d) < 5 or d [:4] != "test" : continue - # method d.c - exec compile ("t = mo." + c + "(\"" + d + "\")", "", "exec") - testsuite.addTest (t) - allsuite.append ((testsuite, l)) - - return allsuite - -def main () : - """cre puis lance les suites de textes dfinis dans - des programmes test_*.py""" - li = get_test_file () - suite = import_files (li) - runner = unittest.TextTestRunner() - for s in suite : - print "running test for ", s [1] - runner.run (s [0]) - -if __name__ == "__main__" : - main () \ No newline at end of file diff --git a/_todo/programme/arbo.png b/_todo/programme/arbo.png deleted file mode 100644 index 088e387bb720bfd74abe384fc24e7cf87b29799e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32279 zcmY(r2{@H)8#TNYGG-nUnF^)MB84(15(z1DAqo|dOc_E+NlMC;h)gLe$sC#yB9$Q- zlX=eYudC<%{_ptS$5FlZ-uJ%mYdFt!uC>l9^1yywW(Gb63WdVFS5M1?LRqyN|Ncuy zi$8!ERvs!_!($Np5yqeH(*={+S=L)#~BzIQ%$lIW(^GtZ0+n)i>28kZI2(Pp*T0BP`$R7-MV$F?THigqN2;H zZ!D~;aB+iCIXSuO_wGgAyvcdY(NRQRo?~!uFd;D8eSUuaK$hv7j~`pkXDm$rPTLbg z`?#=BtNIdiW8sN|7DtY_x|w8gZr{HBx_-KI<9(V0CHJ))937!@W(OnZBxGvipB+Db zd{62DAu%!9@$vD9Yu9wooRPZ`8yj=|dXTtLlJl)oxT&1n+~m#5_)|DWPl)?U<6}Eb zg_CWp_65B7xyq;bc~@(5vuV?0RGC#$`>BptF%PeF0lwkpYEyc&VAmYv9vH97X8NJ>T8Uw zR|Tf*@#!8NYFgT#cr546GS%8^g4b}n_fLI$rcvi`=w@te2;L+jAwl=hC|M_jmU(RE zo4Z48)VhHmCC?kid9#f%`8nJ>1DAJw$vI5ktFa}{{@u;Zyh?8TN3E>FqH7=R%`&y` zEc0(G^WQ0DQ^usEr1asA{FyaDcV!@5s*Yug-J$FHBVq ze|;+J(k#)OZEiH+W3WaCMX6q46smQh7pY3s z3?FMTx9R?pdn8`@w8-MpQg>gUn5RO9_?0YZ<>hvSiLoaZJextNBi=onKzt8Mtya zl0)3S@53Elxnp!cfBp=Ou8ptkV#9rBV!~ei9VyYyLZe^Dclo%!wP5xf`M$%)*B4{`6LD>BAnn?VIlKCnr%py%+S+y< zug=HI9cL(8oY*(!Ze!LuPRHt?_~BFH&hhSWLHqA7PPY}F;IK&uF1>+u?a*F$f>+Un z^W1P-C6C>4FYc9N$8ugTR|NZ+2rkb)tAvoBHWKzJJfCdu>Av7FofG zCb85W88NyJnpz9y?w+2I&!0{BRef(>5fr$i=*s;i--d;9C`oiurCyfv$g`7`;>mu& zZEY59?d=Q#;j*RJumyZwSQ@-)e##>qrC0hs-enYcXm*h2cK(wSeu@3OmoKhfgLFi{ ze)~yQ6$S_28gh>n*dUD$_Hvx;EVCMrD6+Pa42s^MdRf+?R%pkLbywFbajUF#@U1=@ z#4GPXLqntNzfdT2)*vaV^USX|Y!O-_9}*N9BO@azK`ALIP8%dw7Lx-O=n>*Xb)qW1 zK6R2@EMHjJeyTk*DvHTa*!V}l*)wMpR&2_a9>&?Yy^dfzAi>GCY_qgDQNk~IVfg&$ zkKeD(`L9=SW~FpBXB`Zls*ksgkacXhpO!{Xsj00UDs>kW6kN5Nq9=8mgU#5&f|p82 zU0ofSQB>r9XejkZ2Nz_xUp+mV7cXAa((=TzV)#Q%O?^N^V-*`4f^5^znk#!t_deQR zKGg62{Y8PsT3qklr%wTnJ8+$kJ@{BcKui6$z;eIjUcn0s0bbT6tlz(XcOL&)6FglX z&x$?yp&~3al$C;sbu%Zr8@TIdkTWt%E~a+zy4n#ql*kD;GK`&UsfeK2cNZq6Jn{ z-W-$r=y2=St(K8;KlO!xKlzf#PxvTTPGD_lMQqACc@M4748yzjgP+rb@4d)-LSJ_1 z{P1y(5H1E9ZmFXYqPo$*Q>#`zwyj*1IGz2m*ZP@(mraQp(yhX&c21{H_x7wTFVVcM zh-dYoj*wj~&K@Zfu;??~UbJsOBENSqvc^U34pTUb;H9Hd;mOH@nb90p4 z>9I-ER=bD(7L`X=RP0u8@8Cx`V|##mBMD8h0&&Y@dg#!-9cOh0Bn~}81g5MUE!iqA zzNTVDU>(ik!M5ICzf#Wjf3kS)Ch+Ub4qV>iPXJxqQBaYV5-T<#g*zk+99)j zdo8wyF!z}#l_V=V_j4Wv!mAv z3l&mD3-~f~a+p>YTFW0Fd&@rDQF`}^pqbNYs@E3G_5d)9JW^fbJ#}MaV->kao+C86 zTn`Rj^=h``f<>vXVsLQq*r%PNbOMpGl>kK+%uSCDNgjRW!*;5@@Z!UV;s`S~qWODj zrX=O$*h_tOWWv}nQ{-9P^RmWHmw2cdtr+gjvmuBD^%^R9bYB|t+1 z?%wb3pXYDt>v>f8I4Er0h-bhW)uHqp3TJB^Kg0{SarLj0*Ye}t_vLHX>Rx*Neti5r_pknbhY#_x7LRSI5I0CR+tY*4 zY?<@o1@D@*{1v!>M|TyC@{S#LNH_!ysCW(tdG4A?c=F`QWA{!qZ)0WT<*VPsh{~QDwqO!a;jFE#)zCebqtlIBQn?ht%EopPJ8^NmPEc>}-ituN z1QP)*+_xzY@Vmpj8ubkTGl77MbEmbmv?`jLIf3SQ)dP0noommYJ)7zvXXZfWRzOGV z`ukqGwQF@eJY+O9HSO%}gF8wuq!C#8qeN-fu3Z3lt5egy_yYaCINd`lW&J7wBiy|> zKM9-}5*y3$s8F2R^4?$>0TWCGU@l zn%m0P5)%`1F*8%*XsIvPZ7C}aXJ-jS$p+Lh1fVYcoeh8fTCm8!c+`wjjO9Gs=KrkO&O1$J=>l+uY=0+&4&+Kj*enC^*5nh{J&)mK(wf^Fx80@CnUCQ zqoG(FKDCt7xP!fGpvXCFLxAS5ij=in~<16U!Y>grpkAh1x z9fd3wL_e1#S4T%Py9Zeh9#Ee@e?H-_)`McRc3@-*C2*uIaiUsI!kMRnD{c^X5Yg_zWEUz?GPc5Q86`shA9@hxea=pxrv0?d)#<5j%2 z7#J8>FBv*Um2#7sT!oFB`%;XkZq=txYjvaf&yVyflOpuP2ZIL>AG+!sX@0)A=!b8| zy#Bv6`&d1HI%2M2<3S4xx;Xvx6W?$<+}zv=e}Rn5%*-guJBGF(tNnQC6_TF53B@~~ zf-_~`zI`Z<56Fw8m+ehAQE>Zikv(dR1%Zn65^w-B9^*AZ-`I^4)Msm_g2*s`0VuN@ zYR)2+69Em8TK8iE`s$OfH8dQ+etk7@wz|5yySw`$vSunabvw%}!}9W9cfZMxN^?uI zosFrQYe)d)m9-B|xx<_NXU>V%!N4_w?)|N8)qh9JuK{&;BLk^O22gfO-7cR|%>Vx5 zN8@vMo1CM?ChxPXt$u&WE%5()4#8|Sb_`}bw4`L`{$#ano(i=t+sHUt0;ol>sLfHZ z+iTj3Tnp@L7!s|M_V}~c4IQ1Dj5SiL#3*}=cBpO>yWs!l+w;0I|Gyr+@3_c9K;=}6 z?`PxV+d?iVKrYw<${-S)MK>awvhS3{;^LxbhZA-v+4z{zR=4W9x;4mtI=goVamOCA zdG7Xu1Td24Py>^2NbP z!oKWG`=@(5$X0D@YZKbFi(f#+v*AeRnPPs#jog{@At)snh&z?bh)s5;d+6(hBR zS=1Ln;RHq?q4bakzpx46c&@d4 zIc%N0qiy4T?Y7bjN<*#r`Lq0ujg2JSnzb+diZvP=>()e0Igzevg)mX|U~jBP|0jVQ z%OZxqv!l9qx1W0K+$aK0hF;)W0bfY{Y7zkJt_eB-1u35!=H2ez5rz7Q;f7|GDRv;O z`2Kqh?f25&#)^YbSdS$0S^vU<$$KCtl58g>e;Dp_J~^&Qc~P18ysj!)N5lDQ1+kz)Lwl0 zR3167F~e|us;IDvie+}1y31sLeH|Y7^z4XL?(rEYwLCl?_iY*0h<)E{d6#09bnO}os?-phz@0mCni=h6Nm_WzOP*JslZU6ewUr0Mu!F#Sw;w8? zMd$<=DJdpdNI9NztAK1m@5npZV_Oq`(D$!~^VcVvp1J+Fd{@c+zGnDZUR7TO-<@*ml>fY})!{67 zFqWuw^0eL~-`TJWeaW0Kfr;9QD}}20FLVK`1t%sZHpC?DGuI7@Yc2D?@M^yAF77RE z|6f^ZP(vDk^=mimionBo4!5yk;D9FXfnaIcjA)i!9YJT~Kg~s$f)96wVq_~ zhB5)0x)9sz@Sp`Kq87)hSrEL24K+@l+{(bfFl9o?Vu?ghO#Jj$j#EcRCtk*Gm0M@o z)s}4Y9*{YqfL3ZtQwI^{7_ba;<%V+w91O&F@t9CQPU)x@KNj`b{)T<*|SXNf{Vt&3fVIxR|v-8~WZY-rO~PfphhmwVWy@ac_Ii;G$F+85zEV?nrMGmrmjFLm+G~T~lA?ogMA0 zyRUs^?7eh(ir4QiSXzQ}D*r{?0+nAty(GeevyR4|e(~Z3oxormMyzy0qT})7VVe(T z*aA!yOH`Qa@@HogP9Z__wS1!M9x?e4ldfFJU|u21}(UP zduslCU%q_7YCOIm6%-UGrrA29`7`_7yLSu(5uILH_WxIE0sfQC>`)i2VkPt>ArkZA zQVd21JHr8kMCc%rNaF9@p%?faw+UEFUjE=H%>m4QV|id8NeKB%d~)m8uScF`X9!!h znwF_zYOtw$Xy`IF;kZ|=#Z|Hti!8v7#OPh;P*|9s z??#EBXJF8Lq4UxQaNF3(wIA;)HIkJ&`DrJq6tUw`s$Yvv9kWQhb`B09;D?4vM-wW(eqDEAcBCdw(j1CJ7&5cnSXX64 zL4lVYZgvF(V`|h1(B%QAnRExqLrh*kF3?MKzE)`FUnApO;Y11Y`6pl6O3U-5& z)IkjhXc`us&IL#rapej}A?1vRN5v8M(wf**n@SXzY{2u0JH3A*;DE=k1t_?F>lWzL zT5@aK-@JPljFRJ-duO!z^4#hxJkoguv5Ar#z!D-Ft$9{7q^=7G9upQ5(`n#WjEsq4 z>i~y=T48;*S#H(J@~nE{sc+mie&gDSJFBVhZ<5 z-PYU^cmMokUvMAT?n@}(wx4Vha*j^OB%`|HtQeTZaL^nK2*p}t?;$K`rkfzUwCo{Q z4N1gq-mqZt+74FYBD0Ln^4q*l|n`J z_}m{$wQPkZNwSYq1Lk{qKHf=0TxUFTBCzvZ3R1B~-RE_2 z`eDFnmHjK3fXFD(FN3N6!if0X<0Tz zq0r?=c24%6xziBiIRYSx!bUNkO{gpRZ3AFeM07N_ihgc)S62{$+lakESFSMXMDr7Y z1R23>z&YpEKbrL?cyt0AfJRvP_%5@F>d*=7l?D&rm}x9p==Q^MK!Oh z_UYg3R|s2Ve<90S1S#2%>{=!iGUo?nov`?lmBUL!(Wyp@*>`mCSXnEQgbnjaw%h;(9^?Ah%gH zVnX~yNO7d-FPr_a3Y!Y)6ATQ4LNAKa@{V_qY`ns^@<5SA~a!TuD?BI@#GjiN_XMm;ieEz7zNVz%PJ|=l`l_Aqt3Pim?HT= zDE93fzs7JJ@NqoVJP4|>zPs-B6+u)GtrRmwlS5g#xWe#ge8XNJF$%J$e`=ll_KaC; zqvt)9I%EQHk*b^wGz1}#1&Oi;5I7zSlDPs4lC}#VkVGNwtrkHbw+Q9M%%{Mra;pmp ziOb`X@@Aqi09N+^Td=F>Cmsi_hk)IKB}?)X3HR6!!n<}I1#1>W=BEPMYvV&BL6Avw zC{-(w9huI()=W;?bv_u{;ksYc0~17@#Lze(3}7%P+n>8%1IiNJx|K}%CG6{%>4TI|L7NilFU{}DUbSeNlJbGLfvbr3Yk zoT4%VUg-MyGZ=U%6{=+ZcWVq9h@KGC{ax6aO1HKiwjZ+@(;&1ZWHb**U8!li%t50P zVU4Jps=l1yNc0R1wJj|z!=&>bxqN>i3&N35P55zgaw7QC&CM;-JU?lz^`0N3FjsW_ z(p55Arg`}AI>OWVO*QJuC@JNel^`#YOWE6t+|*C+L&=?0{GaSD4Bd~o69m=2e9rb& zgU+kq+&}@ZfyqN6xn#N}3_nFhMSWku!nJ+<3duFKeN@{Js#x~;#N;F)l!=~<9s0s| zdJE(mI0V3o<;=^S_>!}Z+;NsE1DUan?BIZ^KsUiLfcwG3t{$tGUU>D2&`7(pOhvYB zV+I-w*GSzB_6tQg<^sDHNPjJYHq$yeYH01!9}-YDLelC&@k>Y#sB3BA-kFX=?M0Hb zOuRusL6p=qX9$WtuOm6=7#TGI*s*^j=rB0|*cT1NG!bZQU0oS*TRV5|#2lv>r|D2q z=8xx@WF5dDVo8JeC2j!yboQ*QEDT%==N~WuAg041eIgHDf;dfRRbFL}lutTht|i06 zCm~JQ_P&dA{``QxY#wlASC@?h(}D=|ZFK7G zff-yFFF=Ziw|6+WCFH)mrXQQ(J9*(ZFGs!*EH;D&-gWCLp{J6d0Ura>c*@gd*K9aU zwpzX91m@K#4_G2B(CgQ)!DRIyheLf#xUcJ9`W%uNkr@(1DjOTwi1p+7^Kg)+4@^#6 zU7z(H{3vKRb`B00Kpt!!X`bca;4n5ZS%v8)V+JY*xy`vXPXKa8WARxh!r~3w9w)Vf zq7Ed7<+&af5^X?Qgkoc$Xa~_P>)aspF<(MB)5y{XH^r~!#|vzziQp`2S4HhNR=EcF zxdJIm25%$+TSJawB>*-V`qyCb#bO6bR{&}4ApErzx$+QF59;?iBD}&K(Foxp{bcFgrTP!D08ukY=G|2kC9pzzsL1@8fwiko{=R*uCw}e4ATdH=35txQ zM^cdW9ywZg@~g>!53Q)ABqQ+6KbMTA=4lX%yUtG#dKi(AtL)WrxjU6^=1hi`mVD3@ z@q?;X`1U_uhLsILxuL|{9n4T=QxgZKnoDKmDbQ8i_3OIy$gh0lPfsn3_A1=aWC1#t>_57ZylxLdb|asy9c z3uTZC@$>V)dHp(6Z2vtyY<-P7cC9^os1kRay+n%gGhSYsV)V2SCYp1PC?)LlmiqJc zX*iH*X!K#p-rn9u&|-s7$5KHR$HEgvNBP>`{uy%E0Bi~mA;YISu(LtW`p|_9+6cw< zO>^^2fO+THksqcrD&EQik zU-`%;s(4-ghXpOf<8IzOfaSL|@m`up_w12clg|$WDq>|CA3l6X=qol7Z7)b*5FzqU z3JOw@vJSujhXQB>wcoFik^N#~VpCt8l8q7M8e*9AkvZ=qBz(py_4=ZV!ShE#KW1;Q zf#vB5@hx$B(@j`YET1|ue{E|!0NQK-SJ%+}{1Q$%%i=Se&inWvgoi=idDo#aUJag}Mx9@rwWbv~e=SIHo#cvgS#%%S$5BUDQ zv{hL-9uifiRmnL{4h~Vzd*&GjBnCjyrvjrH!dIHDJ7D%NBMOzNQ<$Tl1T4 z+XU(3uLnY#Hihj{Rek&U^9{_OxaYks#VFvJ1ypWEMMY&E$~K!q29L$= zRpD+*g~YZ1Y@`czLd3^zo%OeFK?Wx46YJP@$?Xo$ zU`OfBkICvbu7Bd<;$pxylQo0)6n=3tJY->^htF-o$8i;Ql}~4_iqC`rdFv2#c?Gpv zJ)ifn4cTR|;5DHpev9i`K6f+3|7~q&;gt%C7Xst>=KJ@15GRJFZZ9>#R-+Hm+3VcK z%*@OP08?kopQYeX-C+TsDPGva1kVgZQBM-VIcUhg=K6z`0MhX|p)fB$|@Sbb7O zWmi8qAmNOH66P>x$P!bysa7{Q%reX|r@saV_o5)^{b4Qr81fGLl^RP)YM0CKo*07x zEtGqW7f<20g?Mq>#_U93zASJv_}J!wSD8~&oU@Y-p7B^tZxVm@qz~cof9d z3x67g)Wp@BNU18SrnUjEgaBnVoMyU(Y3m61d+I}y>Uz`gJTne1E*d4J=PovvgCb-u z%$$6+H1ln2cDB{zWqTd8YkW`>t}L?m^e&+=BHYs3w{HPIszEGTbTbS@9dc~WG=@!b z`@+m0Mt67jlO3<-Th=$a>;=33AS2^OT->3=??sa;phGkF#)=h!#Y;^aFoajv8Fro) zHz&l2W;m+U)>(7W(9+`lT696e}9(h^^}ORGB1Jz zz(Hh#vGv<9MxLbeTZM!u#C->P-vdiL(Fs^p2lfG|K{=CUp`NfJ0Z|oOa-;}CAA+Fj zbK!!k?45vJrFrlnb)gz3HWe&S%&5CP)1`s7rw+SVh_n4qt6JQz**1$cA`V+PuN@$>OwioJ@trR8OKcx*v8Xy~5b1P&5| z*Cc=K_XW*n$gVeU-6FiB@9%?j=K0pz$lBR0wa5ks@G+<;E}P>5OrPahz3`xdXhI>P za@2aIwG>a4A!XdxQT#qVJzeFu1Dx#xO%GYH`0hVd^XxtUjoML}+`N0ot{m%9KBRr= zqqnfR&jK=HZ3i2OHMx`^At|5v7176Nho?%gqG1TTU-e{&`L^E1V2F)3Hto9}6EkkG z6ZcH!4QVMDrPas$Q`3{74WPzQfCGHfeJ)pn*R%`eNz1ZHRAl5u(=FN{cnfb13u@%J z4*l#u5fBhy>3^#C?J+sx0?|)5aq=es86r>f;lI+cFns)9n_*=bj^p z8*V2{{pr9^>(=HasuUxWs7XW8}b{>EH+nA)z2(@Q8ur@@Y696_;+h zr|p7@fsZ(ZG2sqxCMGU@n6z%5ZF=;w4C0#V^KE$f<6jBtEK_|DYysVJNGgdX$iP$$ zZwF^2ze%7%ShbsqiYlQFBIwa>&4sDS=Gm6@(L6;qaVt&R!6fBc3pFZRvi@jswO*(fj1^j_ZI9(bpsqQa@efx;D? zx5cJ{mYRCkS*F{W%~`7e(YD2JwEi0=&LPYMUm3;ya?O}c(PWxk@!xo6@@oy|;O zyIAa7XV@Wq2lvsP?fZ}l-uzHWA~w_wtay$4PW1oo`ikX}>rwM&8;@Sy!otn!>dC+& z)Fm>f=GkH%y1NWj!Ef;J^KAEdQCVr1=UcQRUXC#^G36A#@$Z=E&C;d!_w%!kpY>u) zdAGqlUw$Y?;{N5d!y2HU)4>ropc1ut!Cy~huOc3&PnA+tc0%}Mdm%mU=KRQa2F(o9 zEsX%asSX2R)Q=U3?_Rwdh}BaiF#SSXFx_X#EUj@S4UV*7X%ajL7dVuQogCXA9Gf9Y28 zRz6P7P$H^9YqLy_%5_Dgs)m8Q0aXj~rPhfPo3RI?!J?X#uu`Qnt#`B-l-1PhSbp)K`3>97p~m?iW=H? zYJkegsh>wW^Szx!Z8NIK6VS0N-Ff1enjU!<$0cuFm^vd}vhv@;DTK7@0_KKPZ?B|< zkCq2mxt74mwl52?fa_9Ek#>Zap(;!Is|k*WMW=9~U%!86$3ANTm6!=ycnYk@U}5sR zOz|Dk)~_s{-W?pAwOASjD>N}ae!j0XZ+LX-$vMdj`;Y(Dp0~0Yvf5XF#9DPUbJ5Ls zTI%tHxo*CGXI$3MLS9D4Ci8&VyQ~{_`Rqo;ob$PI6#;^9;*s7SAmwJ4k|CBX->Srg zfyjsIp+o*tC@T|KWS3W{HKx^8-fgEF>Q^m|F?DxN>Tn*c0)_8P)aE~$dH@`0xQ6Q= zUni*68N!;EoYQkBrb_d&t_>MW+bm~X5v>Gg+LCXR463H6W2OmuhX!t<`RmcN{>>}P zx63ze+~~ZV)T>@URDXVc@8`Hv9M;Wl^D76RTLt`0O?sU(qO0nyqZ&RuIMebzo3U_0 z_Xt3fnMB*8cJJf2zh;u>OA5-pA}Dz1kckOt)5xCaPexwiK^pt@>z5YtC=$~U%Zd4F zLr6Ar2FCZ76^j5-h!vYZD@|>qssDwA>ZPg4ceC?ThCC3X_n{1h4>vt_hPe{jU8Ylg zlBKIOzz{a|02p#h*I2!k-w6vmUdNTJIM?DEM6vivqZDq%#WiBq41tM}hBGFY-|f@W zYv8xfTP|TWPEYQAr`Ch#d(@uy@@l_ohSZ~=%et1T?nh#ilJeI1oA5~Xw$?qGS-QV! z;P~$g=j-n(=dr+hGgY}p@Ve=ibgW?0!5t#^&EwN+EEEafy)s`P$jZTyR`gpT%c$_s z5pxHaK_OFgLrv4rZM;L=l^{hdO3vkeY3GM&9_&ea%hQ=JeO}wt)di)bq~=gk%esEq zS~_(H4J%~&_P=a}WN%4g-SuczGrWP zfjf4AaGd@)I2$@hcXTW)z_&XI#>Xx;AiLPABqNT#p*I(%TB7j#_`ERtmYZ8P-$w}d zQiDP>BKP6CT@coA%RQ)Ie1G3P(TRV{I)30SoxKZ6lUQwF1XYHV5_d%q*0u~?ls0&@ zZDzTaVR*_zC8ZCI=B@8y&TY{~^Up0q+Gx_`;W7Y&R`BJT$62^xF`+WY-*Mt?rX{8A zukyezttF}|(AsoB!B1$~3a+Ffa;6R{mW+ z2VBplGaUjw0~(UJGIF19i_!BK>)I0<8rs!!O+7E}toI{PRaF6C400LRAEi9`N#O*0 zTrfNz9X>tGgn|xSS$f`35Kjdrf>!Dm&XRD&7=s;m93Q3Z< za#6gQ96T5neT+4N4#}wsp}Qb(B>?$=USMxO^od8)^Xk3GAa>{UIwg1D87z&**@&!ETtdE75Zkj0-!!ra`1_V#mdjHqE!& z7OgKkqmMx3HTXFUB-A5+uCW9uWa*9zqpB!6Jr|} zkp?b2an|V#k`cD`{$_BQxyiTp-MxI}3aPi6VKA3dR7^*fXzG1`J1n|pN@H*egyKOI1r7fC58F$k*QSrj0dCMF;LdH}XE7}D;( z0keWNwFj#llvg%3$c?P5&0O5vL%H=}`iC0R)_}74jCZ2Xz`)&~ar4fdcQcHV_lv|t zfI2BU_vMs7==wBdxfnJ^ih;W*P9^D#SBqUf>ZghZ|Nrr5aF&n_h zz~J0n6?W|8Nds^RpBL7pF@J<~oeA4RGX$pg^1$+j(}iH!Lg3ud1ktbw%>0vQ&oY3K zKZ6dPwmk53s2CN!KgcQ4lCf%cu4NGcSb(z40buf5Zc zfN`C{SEEf2ow{0B5d(jocV?i-9nad%WPmDMV3*HzutRSERw)M{ZocX4OvcKeRucgk zAP>#dt{IXpK0AeujRSgm5e+eqdSQ4WOlJ%fAJCvtq+i3qThmz+Ya3O40~jjmkH$xj z8i1F3h)qV`N7&CpWzpAD8R+R#y*ti_qoAI~xO`cP@QHyw(vJOjRbb~WtRX5Ah6oV^ zCN1~VrzLiM$csz!{mD}`JT~xK^MIncj^}3Pl?e)%>t0jI5`b2Mb%n4b#ej^UN`d~` zfQ;bM{HqQHa{`(T$?627H~=$o{kS3ehb%4iQImn$mjlRU#Ury)o)i_O13flf=8_zM zAtK+OUDeFk*q9B~Q9Af8tFwE!s% zDX&46SqD=JH3BwLHZ&_>G~vi!O+k(a!KL&u7enp=*8Ih(E2)rTDzJ?`mKMBFo#BUc zilTxClR|7NzOy4&k!)cEUyZ_5LpP6;(El`R);NIa;)QYiOP6IppkHnP)2iz|-UR~0y1A8f|$5eR!;0n_LY%H4Dw;vic zz7!ZGA}UG?x-zjliUdOgz^ZcmbT1O#-J;r))S(S<{gI|15G$a4vOo-eNZiSTUdb>pph0!oWf?_vW@y% zk?R`B_!n)ANe4dD7sPWJr%(JJlGO#lAh1Si)muHw%%npH4#Z9%M`iRuM?o{9kal6> zY(@l2MF#?oA$VL+a1p&Cm~QMboF)JPHW)SlN(EL5X#|0CBN34TP&msh0Oi~B-yQ7n&G52g{#tXMYOSk1`)j~_qY4d#kM!M=j^_#&(_ke=XQBQ_U+ z0&+(g86t{`Trer<;w4H21ZIp)Fm!BUqDHl0e!|=Z`kC6_VR>Tpgm=aQ3KSfOUb8wa zR3LmXxec83(07Ol04ondH1+{v{L$_mU_x;x|Gxv^UmppaPXG1MSXf%R+}fu8#1z6e zL*UbiZxThQE?L>&UBQfBM@4`E{9pGB0x(&|u*z*fuj+?hTO8X!8iw#c=rpUKiKFi* ztgj5JI9S5MB{M#1Wb-`>V0j9V>=*mhS1NhnShPGvd=T5Wb7Pw^glSCn-p9EKsLz42 zP;#X{e#{Ez2#|fk4?dg#5sd7F+#nREZ|CZI1w*?VEk>})!FLfivsa5)*H{tz(A}lr z`enGNGo)QV^#F03A_YKx2yZxT4K&6Du__F?X=dcd-|r&3wrw+%H}QZ~5sP6Dw%?{r zG^BH=Y6om9P%5BnqbUyZ!DhG+fXeXYirO##J2K+w)3Zg=5f^}&4H8wj@X)XJ8L)uh z#du3bJ;7{35m7xDk1;cBT($W0;})CUs*sYw!6f|ceQxXmPX-n>>@%&L2aR|vF+12Y z^-=o|A34%Gcz!?1@(>Lz$PslYuL^vpUC>ug4|6ieOCjU?C&Ys47ojf_QWfk zU`IW{^)Hss zjO^NSS@MtI-1D#Icl{3;S6)4IfcxrwiNi9%V#W%mz3*l2RjBn*$d|p-dMqkd>m$4` zJ<5*84MF#Vk0=EFtP*)ACiFz&UG$qWMNjo|b-$8;prD8!rb^%IclbLOyc}t&DSe*w z(kpul`EF08%xbQELA+rNZEX?HJA4^oGS|h{gHScUb}$SXpetN3pn`NjK?|J} zh}J0f`b|1W=hvnkA?^3%6~TZxD#S*=a8ZtggoHWhA2@pB66zy^d&+EB<9^{aGOz6D zS*uGD68JFsq)CAI0<8U~50z=&hy=tZ(rtmuGV~;(N-n)lWuOc zC|k#&0{<(~p^9=1W!z*Ebw5cR(QOzIpawgM@xg;3Ko8R;7;8^YPqJ%J+`~qmH0t4l z^Gc`{6&00t?wl0Re@Fs9UPDzl_50TvpELTyHY*D}P%Fn!XxJg?5|*#iPSzlq4Ad30 zyOE->y}kX#nO+9eo}aw+&dB5Z31X%tdKz+gXZILHX5yS-IIo@nuL-dW0o@;XQD^<8 ziTI=A<0Fu4U%Y(zeBph|Y3jQUMtVpV8(!YMOwXq()gZ5}it&BUaMi6Ah<-uboR zN~ldu-ps3`x6o(yhxfmO8lcJeg*WxXnM?XZNHQUvH5j7C_V#z)7EGe%C)ctzJ+!yC z?;0JwhQTDg%1g@%nn%!nhy1GP<)sK#JS98(y|l z4OWvX^#JKkWu7~48NODa3hRXQqX4T~IbNH!<<+j%35r)c3lAPyMRDfVmC*2MO(#}U z`1tsU#|$!CG?%2=n85zz_pl=#KfVdFSB1C4AJTjbG)3OC#t-j@KfD%nCo%>La2-r& zlLGA3Z)o=6@&xzoINL{jztE`!9`8&*y( zYQms-8^4fF-ZI!L(jPT9{Is4}f)NmSwL(#|bz|2P00K+G2P~yoa8%U*7v+l+jGd|I z45ffpu0s@qwYt4mbN?N2;$K1=x&s=n0Z&7&US;kSmi@r!Ai6v1`{L-zvNSyJLGI;C zw>GH@&{3}f6+$=(ki?;S8-MQHSPV%#7<@;k-R_O-!v7H#%06R4`vQDz@$94(+49H{ zS$H^(zVg8?VVRt-dm616xzngePP7ccze$V%nxs-5L?vc%M7C&DQH}CBD)ICI9_>2ru+g4Q2_w~ zq#oi+BJO@1aY0%rZt2PCM_#4K%89Z^l4BfzQDO0o+N7>Jg{CM1FMU>)W>5eAvaPH- z=E|>M$KcQ0V`OygIWLfD7(w)~I#!Wpha>z;l>ltS>kLSSh7eTMA!K-p3-&fd87L?y z*kUKXIQNGSMXRjWkZGBw$rkuDA>P5sgzczgYj0oWttY1l9p3rGiEdoHKYbA^nW*m2 z@B>gYqN80&D;W4ChGBRj!MS^f)FT|YfIdq5%*%7sk z#S0H%czipB-&Y+`qpHP5+@_Xry~F0sRq?k$Z6H z$c3B`{>Q7V-25Pq$fnKqQivJg{XwaUFv$aX+d%j4@sxMvH&UL0-qT7VeJ54!2`BX_#G7%Id?(QJdgi+ zy>(9rIvc>BRjO+Az^mpL{#wS$J~rh}|E<`e6XY0oz3SB zBQdl82GAg4B}RG`iuA4XF&xay%=|mgF>!HmS-kYjGU@b?+Ppc-sDFi(4Ky3TGy`76 z0^Wr%SA&+It0=8W4}#CqbSwN}ZxQjE)?!#TV4qik-T`b4M^LS5Xt+LleW8eS2w}XH zFU)Ku-3w*agK@RBIvAtr!Np_}_JO>}NmR72<-c%#B^E^lIy88rTn_mm9bqi7mCD|C zBl0s)M>tl(r)2f~=7+~_z6Fh3fWxMUZ58y^ubub$&%xtT`0UxtSGor9g#`$DXw6## zR+Oa}l#20xSj4OZ45Y-iXk;{TZXY)s_*K~P+0 zz>yOpoQe1DZJlkh!JRbWN?s}G5{Kg z$gqg)FwAa7gQM*tQCJgoaq|f0Hts9%L5t1OH;_(N6lbS#;swf`cST!uwxhKhC!w*x zj*ns)&1PYv*W;-oHtqg!kevMiy@L)wsRn_@9m%3h(|-9Hn5&sT-@?&ngcih`qaH7b zM|xqww^(d9!Y$dXczF#-sN%TlHy!XjlGbs9J90E=Hmd*~GPgEzopXd;J89ger(Q+) zw9ZtSA4I(v92hv@;>kOU2*)4CND za)&3@<_ z5+S17{}AneIcP8)N{`6q&GbY;LN7h%PnS%jOv?2Wt2lAk9?Xc{i2b!##>byo>x^e+ zWkD|q2m*ORC^dA$ki&Z#nwx*^RLBsti%nT0BvM6+w*MU+2U&|e0Zn9$J#=_c*iFze z@JgN96E~sk(M16}ARar-#mQL#U;C#|pFon>&ZhJ2CbBj1CFr7V3>t`s?wuPml5Oc5 zD4JTNC+6SqEdL!Pjm>~cawb+*%s8-*E=&Wbpp7qlc!r&-Ard3Bb?b0gYfD2z5Xj)P zmoNEnpp5<`FRRYE&rMC;qoXW{$b>Axv3BGO1Z~d-(Xzs=Rle9OJqK4WSwdI?@*1f) zM}`fVwhGR#_rG7!A2tjU6CwRX_#NpT+80180U`m?WhGiUPyk`Tc(7>(*I2Al*bOj5 zQWI%gLLiZWT#3d1i?qR!E&v?wKw2ZL?J>AuSd$FcQ_vN~hY+C+s}@$tF;;=J9B@Je zr-1PPi5qkBj&`)>y-Tf1A=kEk#S5yj3K5y0u?YcoQC*NMZ8+utxRG+?u}_A!zo0F=WxBqegx;T(vMulHm!%q>EhQrYm2oyr^BA#HO0;`@x)J^+tbs;mO5*~W`BsMnI4vP>te#%$ia~q_DPa}pk zg`%u^1?28`pb#(xuKx~n5FUaXKZ_J;OFVR#nN(AmK)jaa8w{bT_s*U zJW=iG3g#ZYvYM{0k~kj($ADIN>qW8K(H~HUU6i!X5z`tu$WhEF38&`ZslfYYeGRS>0HOh_w4WUmoHVkmo3fBc|Zur$jAiY+?&F} z!X(LO85v?Dsln*V4A=P172kauG(G8IBh&+gK=AN}&)>Ix`EoxmZ>^V?7nUCt#q`jj zqLQ34cxQe%J@8V&L9KvBxbDAlhMA8V6E-k7xW~q({M#8^SeF2H)M}$mJN89QG_|(E z7Di3VZ){#1xF@hOslL+md-{;Mxu!@=3Xr0GLA>jliY6~XpUCU@i`h zuIJ->A)r|os?)*5%$$nBLfrs>SJ~Fa3$oX!w6&?Jnjke4`Y3?d;3V?r6HoI2vIfUw z=i+i12WvP$^@zB3Ej%e{1HR$_+LN#WQvuD%$mHeS+FNX;YN;*3sbOTq0*x*hzEEsQ z98-G{!;d1xZh3KDMp024UVJo=e{E4UxR!+{fhP#(&b~$odwPE2IO)^D4B~n^n9qmm zIIO4+F0MGYSVjy5FqJ0m8nXxjtD&*+;;mcU zOiWCa!usL#si~=yyu6MPZ-HwvO~+^t}53 z49n@?rr=@V-9~N81dWt5pn)3Zh4g>&)G1l}*K}w=eCv5vei2uxBa#iyP&wx0BnquM zdlIF_FBQ*=yD0#~h}GmQ8Nw@rti*6CnTT>S6#GgUno?krqpZ3ZB>A*Q!ttAmq1N}z zOof6+SoNn)ZNp#1G3jJ-a7G;Im_zdt=njMlrOyxY@}d!VYzG=r|J~8alSFqShg%@R zpMR7qyJT)?pT zO0?M}M5Tr<$`YkXAw^C3y-xGHpXYdvXa1ODq^a-qS#N&a;iY2rDJGb@vxwyTG2$(NqGAng#>WPfFM-I6JInjs zKT79$etrfB&23n&PS)(-`3(F4gL0`uc$L;cn2&&bGUFJG#SIp4ysFv$u` zTN4@pncx%+$Uf3Z*b!!KF6=DfA1>2!cAadJ6 ze#rW@wEPZ8vy|iu_^Jh*X$PQ{Fa4IZN$wvuk*pDFEvId{ zacOZMy(QBxJ?Q!BbC)hY)~Znt_GO^>YFYErVw2a)^HnQ&Dj23`pCi(K-eM6Tc|hX7 zys-MWMzjzeIF86!_0(T#Vq!vs*dnfJ_nSlebCLiBnP40Xb6>V($-#__J{-wp@@=8? z<{AV>yzD((Pr`yF=#CqZjDcw!(_U-WieKO2z{rih&>+W3bjIhJYwaneuz*Q>=}axc z0f8d38_kTE;4LD43VQfxqJ%I>OvJwq)9X0pWVDzrZl{HxYMx1Cwao7BK6leo&YW53 zm)eqvbPbDJ=HjwuM8%_Sty;CBY802FFo*20%?*anIW`$7jRXglKX}W zgoK4-Pwo|7zrH2tRZYOQ;E0Ig;e##B%#0Q)tQ<^y$+A+#vic_puI}E9M#- zw-Rb}%9JS*PB4fh>zJ5+0MvMHTj8bvgFa_FK3(<}(jPkQDJCYs25oTQh;^9EPzfil ztdx^E!`N;)Bdv+*hn9K4o>h)(6Y6tQX9h zIDuEuj0>Vffue{~?U(Ef5cZnd+RYIW5m%fa-7s${8xP(6_uvpRF~o+j&T8_^M@XWY z1QTGJ`)fki)`j#tWM+v$7{o=jZ40=FSoA5IUkLO|NBF6uT@0M)Gw=tYGJ&etlG4t@ zUP`acaJze%%z$#5Iddkihak{|7gUApiY!iG0ji;X&VAD=YVy$TFX){vY-k#f-B&6h z;jY;O9Xod9nFPs{omN^}bH}mo$R-n(6Q4F1hchUkCgvDHtTksAD#+fz3a%TX)A6pog|SHywJ@hIKOIi&O;U(O?$p7*4{& zoT?#)ng<=``-PISdCO?b&Q`6&Y7`7hxtO8L^0+O^38h!Gu#{BdXKx|h( zED%T@@wwf(^E*Z(Q@mwVdIMAUk2t5s#j=~$*4!v27>K})BqJ}Jw@8%E4%t+pg9NZ5 zcK1Y{{>PbicJXv$bvrdI08Gc}>wm9!|M6oyV;77KNq^|!Ft&ntTIpWeEBJe&5_^^` z%(kG0sVd2gX6qPHVj;)ToJ*DxUN~#EK*_UFt?na|E2q(1;h@uF_`K%pYVD5jp){W9BKR%ngyv@53^KDSzEotjNdcQqBtSob-6vf!F;s zLjNSpqlG3bwxO})%kcbjZPI51&_Y+xis~pZum9YkW5;C)7Y;aIg7%Q#Mjzn@o6)s* zZ+fBJT9R?Z63Z`rUsq@UCQ>W^M}UBrRaKUhdAKYrh+251AJ>O0&KMj|TY78YL=EaY zDGJ8hoV)4Qtv5#I?h6k$rE@Ay0{%=sWmMO&ZcireqH*mj>zBkt2e5>u?Qq?b&lWBLPqpx9UUs zuHNH}z=8TxB{x*g|6&HYF95dQ2c)p~0cG1O(m@Rwj?b#fa+{W7S48fi79e6!+N59K zZtD4J9XikkWNq15Spo2JhFC7sZse;}7D9;06m!z83)*7Sn=I>rN~Ll=df_9fso~YD z2sjQPI&ZpW=ldMr>sF5aw!al+;%Le_j^RUG$&-p^{pm8$keh2XusG`=HaIxAM~8h2 z*T3L?m*v1)D_&K38Pi3GHjQScf*+N3Eo)FB_3LYu&6j<6%^e0}$3 zWK4`C>MlITCtNXR?AUzs5$RL7(71{R=4&opN(4aC+DiM3tL1x8wvESJ^0~3`gT{_L z;?*+ys$Ly9LXKTpki>%ilhWOEZx>{AmB6s+PEP4oCOOywPtHpXq2b!M+$clu z;fRce>equE!jlswfDGK{+BG#cei3dOJlDZz+f&|{Ac1{=2T!B&A4LCCwbK9UR~**( zD4R(1c$8*B4{@24HP5QJecOziqK)t?EReFf`wtyYObpz(vBi<<=;#xp!6az5ycZB) zgyE!W@9Q*9{BO`Z3u(YbKcxPB8?B6nmB}T)Y+$*5A}%@R)T!O{#gdWMQ{US?A;-I6 z=xO9Ml=LqU7xQC6eY09^shxb#z3ux&>=aSI3$=}+D|p2m>}!MJ@wXC7(eYN>)Z}hJ zAzTsm{?Qw^NuoNW@6-_?ZcSH|_0ahF65#L3B`DbhO$bFj(HNPfO zliA4k+&X_k!e)ZTK3$OA>8h7Nw?>E>kp_%!`jVio3FLy50>XX%+skX?X)pzaGc;5L z=$J&c+^C=)Aol07Z4N*m{Z5jvDbKXC(WyAs%)c+UH1&nYIyaLMO?O26TIYSKwA3s;Edgxs~`*5vmA4R=i(TO=%uRrp>By;=t{PBF{ z?Jy1qaYC|hJazjcJz)J)i|lpm6rpO0+KLkAIhDsKM{qSmh7U^7 zLro)r5iE&m9!qQ6RA!dt`=<|#9a}2sDJHGIp2Mnfb&$fES~*&+DD>WtvUB5? zRP?=2^+6fu|I1*vsc$bhSLk7^R@QH=%ARrXMKyqEv0YEM-Wp-P_RQ?gBYv?ZWTfmK zvcRR%bjFNgaV~e_-r|P(zaJTc2Y5RA&wpcSV82=I z$Z^lmn8dkr<~+c#{4%*2`X`)biqGBSa>L3;A4?+r2I}hWRNO}dc&RB-S)^@w`(o?~ zZe4rnX^Zlk=W8%RxllmMU^;lN$QKp^Z_?DRDoq z9W!|Fc7-*;DyrMA%a?1#SWnMvs*6zFE+1CtpOg6It#Sg`R#iw+ltmBg8_9J;$c`G0^*_Q>W_HA=*~(aN6(^sbMePyfK3?-s3y&ec}A?HK(3D z&Y$`@I5?z+eMre{3POt7&7)7}%FLxj{`E=CKIiA5gA6+{LAU+P8_9){Ks1z|mG5t) zM%FC@aayu?u`zX0{Jh^PXROpc=JoSxOo)*kn@n{gl}|2)HcoPD{kLf^gYD*Xr`_Cs z%V}6q{_KklkzSwaO+4N|J?E9&r=pAP%^6$EzqmB+Sfx`5<-^_nW^aBH!UNHeQ;+TU zo%6n+L|t=g;&J{okm!rlsOFGkCr`%57;nuJ3w-_AsJ369*rzW1-i#jJbxy?|lPX*; z#=5f{u~hTcgG(OuTb(?Dq$)-dhKc`{_Jy}ek&{O>wMvfMY(IDIV~_A%z0P^*Ik`OY zD9%0aXS%y*oN*x4N>!kB{8Fzm{WFw-LnEuItE+QQI;_vgsPfF+Q8s6(sZKlZKSvKz z?o+0iI2dQ=wHe^#;LvT(T<_vF8NUMMNvs0z%$gIuPpA9NY=~}jwht@p)NUVK>{y{} zT<%-8JuNZAw(jB(d@N{WUOsy^dC{2*R=3mWO5I#t@6&#DJGAR;vtx2oO0E9XY12H* z8X6l@iYG=Ytt!^Xy_^1e>iH-4ZmS9}+S=GmM!z5-70is&@FL~-PZbH#A-i^UY~mi( z>vURQLwA--W~FT`!+%bvL{DiOLRU$d*(Hega2)Nc%BeA#^LVZc7`-2=xVYoT%|&JKz*rUi*^*Mq zkKRuDAXMqGkR;)1IW?8*bQ?GnqsPA~*CjSe8yfm+2S`VhcFk}~5^tWMXR|wC`(3Lo zhl=dBPcfo48OT@237j7tS{x2YNOW6&%JBwdh)0r>_ZR)rv+Pj0@}zFc%94TXV;V~d z!}|E?P(UC5e1zzG!751aA%$uS<$UI#zj4(0Ss3q}GjSySQV=%+L&PF&dyj z;}CcBs41Rjn+y6;btXHU9k?3Zpt|JC{H>q;+jFEFZUc78e*E|kI!|M!hr)l*&r?^f zh)f0MCrS1X?kVzFDpObPd_OPD3&=NL44X6$&Ko{2#S-eDc%|oI9S&t2xR!A-F_X!M z>oE3Df3hA(7V5_fEu4p|FX(DaD9C6eFQ(W{adO}kGFGjvJ|taq84&d_oaq)ug~;R38*L{6!*_A&FQ*ft|768e!Q+j zW?XOs}aiIPgSKsU*Ihjf7&nju)R>F=Dg7RzJ(Gw@) z&;=c!tDq}M%x^q22vA>7qze+zLoY2YHQ2_T8M{YyI7zD{k{b!!{I|C~%ncddyLV=d z(_Nm48hsBSR0~bk4xmHy`hWiJvTQ-fvJbSH1NhCjA`eoQ4_eyt0iBsFTGF<_a1K$V zS_8d+c<9Z<>Lhms+BCgUqhi1YhNvRLqPNZ-dKd~*q^Hv%jWG7Q5-LxQ|KO)1VqAJ^ zNu*N)$4>-~VM#1{!1c>$HQ$Us24S-df-w5sYm&Zdm3 z`}DOW%uduFbi*-7W#~(0bBsH$E9(Yh@J>VPH=U0kks$p1>!*?Y!Wd{V1QGHM5EOwM z4K+*kuT7-(xLI`oWf8K@j;Lq;tM(x|uk_Wc8*fJDFQyLwY`lqNybIC;Y6Ot>1<>FU zoD8ak9q4I7W1CbRLnYw0ygpA1PXNORpu{`{cr3{a%+i)Udu--!xq1uo5OdBiuCSIM#fV9HW@?3w`v=*bs zj_r^51)xTyi+O_ODjC46++8?xOXI_wH?c)luC8-ySzr&C0YZPF-)Xd>XyD{Ua{}vvHj5tcaT4h`V8DP?p_d>`V8mqMj)LTXN+3FQbG3E1nNz2>CX#3; z8UV=&rEriR1P%;V6&U8czWrDE*`rehMMV;dD+%9(_MtjZFjca0#A5*rhScJY&jGVo zY$tpO(I*i8BrYk$T|$AASct4fcn}O(kaB-bx0zH2e=fWMk}oF27&3v{vftNttzOr@ z1%-grf0L2Myqf)rwFPim6tT}h(&UFjbTK_$DptmT{*KnY=yFzO%{5DcHl zh+lSH^zE=$u@;}}Dqe8mkr2VFU@>K}hJ?JJ^_7>bGR82h+bBBFG43yVHhQUc_nq%x zweahI9r1tZG!A)dN5^lV!YNceX5C{=0vx$J=1fLMkFH-16;Wv(J}l=B5?_g@a)uz0 zcTki(8?qS%3~CY$4gl+#MKG-%slbw}oW!0)Y3&MFhGkFA!oA zDzXr#f=P&oTXbl!-L!0N<)Ytz321+3ef^hf3 zu)&P-sj+J9^K960WuRds0j=^&pbP;9QzJi8N8noMP-@zpnq()TLt-w&{v-rFk;@%8 z`ciX;ILrd*6LXL7qY)81sW~K-0JfM`0DfJefb1ZPlsC_|XThngyv+jpvTKl!d!($% z^sOHb+FtwdqvS1k%<_U*={e4G0OqHLCnd+(g!~kdYzvqAf7w?)i?xl-Wn^!UwYLLw zRr(aiOmbB!C4Bfooc<(YnOTaiN)+3S`4_02*RYo`uSU#-8U z!u;ZIndt2~%32_PP{4)%f2=>RGReAis~s|sk$QTYD3)RKeraCjw1Q`5yTI~ogw0x0 zO<^ex-Ty}tFmDqQtdTs5cl$%N>CC&nk$p>^TKL5E>&FW{1}RNY-*bv+wC4&1T1NQq zedf(uc{2plbRZ&PjebYI`t;N)Ev1-fZ#)#?%n>J*Ub@rBmCADo@x~U`xVx?0-cbf;|~Dv^ZbW( z?GS@E0O=7YXtH^tzW($A00J*FL$o$N)>_)?+pXu%?^K#SCrGBRFD27v27>F#nAQA6 z$8yzp$G$a7N*24i-qPMAQ=`t9W~a;NhxCtVtn+X1Ygu5czCA9#OSg)~z`!;I|0>ZK zM44+?c9EUk%TQk5&z1Ayo{#xjcSFi4)e=Llz{J&NKg3fC%E-sYekd4ZS6uIYGs|o1 zwhM8_<9j>*tKV9^-HgX|$c^9LL6mJVN{0udwy$(dXx*}fkF}=d37PX#r#i)0-_o{+ zzp+|d$iLHen~iERXIvBd56p{Z>#HswMh7(TKg|EU5Uq!2-nJ@L58D;DeU_uL)4urZ zP_Mq4mT_Qol%|)PqOAv^2Y6=Ne@>0T5K#Q$+`z+=^dM?Wn)7i*x wua0bmreD4i*lSgRBCbY5?dw-9<~R5oS%2zQGv?bA1^<{%oiQcRXu+oc0l4NB?f?J) diff --git a/_todo/programme/bette_davis.GIF b/_todo/programme/bette_davis.GIF deleted file mode 100644 index ca19d0a9a967db9bda38713feaec6382a6414a31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16628 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 diff --git a/_todo/programme/binary_file.py b/_todo/programme/binary_file.py deleted file mode 100644 index 6742e06a..00000000 --- a/_todo/programme/binary_file.py +++ /dev/null @@ -1,24 +0,0 @@ -# coding: latin-1 -import struct -# on enregistre un entier, un rel et 4 caractres -i = 10 -x = 3.1415692 -s = "ABCD" - -# criture -with open ("info.bin", "wb") as fb: - fb.write ( struct.pack ("i" , i) ) - fb.write ( struct.pack ("d" , x) ) - octets = s.encode("ascii") - fb.write ( struct.pack ("4s" , octets) ) - -# lecture -with open ("info.bin", "rb") as fb: - i = struct.unpack ("i", fb.read (4)) - x = struct.unpack ("d", fb.read (8)) - s = struct.unpack ("4s", fb.read (4)) - -# affichage pour vrifier que les donnes ont t bien lues -print(i) # affiche (10,) -print(x) # affiche (3.1415692000000002,) -print(s) # affiche (b'ABCD',) \ No newline at end of file diff --git a/_todo/programme/binary_file2.py b/_todo/programme/binary_file2.py deleted file mode 100644 index 2d04861e..00000000 --- a/_todo/programme/binary_file2.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding: latin-1 -import struct -# on enregistre un entier, un rel et n caractres -i = 10 -x = 3.1415692 -s = "ABCDEDF" - -# criture -with open ("info.bin", "wb") as fb: - fb.write ( struct.pack ("i" , i) ) - fb.write ( struct.pack ("d" , x) ) - r = s.encode("utf-8") - fb.write ( struct.pack ("i" , len(r)) ) # on sauve la dimension de r - fb.write ( struct.pack ("{0}s".format(len(r)), r) ) - -# lecture -with open ("info.bin", "rb") as fb: - i = struct.unpack ("i", fb.read (4)) - x = struct.unpack ("d", fb.read (8)) - size = struct.unpack ("i", fb.read (4)) # on rcupre la dimension de s - size = size [0] # l est un tuple, on s'intresse son unique lment - s = struct.unpack ("{0}s".format(size), fb.read (size)) - -# affichage pour contrler -print(i) -print(x) -print(s) - -from struct import pack -print(len(pack('i', 0))) -print(len(pack('d', 0))) -print(len(pack('s', b'0'))) diff --git a/_todo/programme/chal_mono.gif b/_todo/programme/chal_mono.gif deleted file mode 100644 index 4ef603cb8c6d13c9667d89e5f134fb10eb6ba3b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1522 zcmb_biBr{86uzb@q~l;9!kGJD#X4{iL{b}VSlk#LFp^#120EC5ONJPrVyI|ApjTNQ ziz#5TNUX65ZveY3nxZJ8rlu_8m;x%Ix9|S`hR)2J-#hP|^PTVe&hNQAx#K?z}ma6*LIgp5)`8KIm|L8w$kMhRnt zal!;)QuT65I3t`BE(n)uR8S%q5u6A?gknl0C6W=zi4>r%fE6^bFpO@g_NZW#a!LiI zQmsYC7-gI?L77x6P~?nqPPw35DpKebj0#SLphAKpMyX^}aw-Lt*b3GF18J}XE!40W z*nkEWhNTjuas+2gFea5gtVPB-N=%00U{TL@Rh;F|Yv*EUBDRW#kCKxl~3%AJ!rhf(r>>Ar~xAd8bA-JJb<0g$hX{t!|?6P{0~AUI$zW=0Ouy&3QR)3?W9uTD{fk zKS2zz&+t8uQeE?217l17_R`#z14i>!WO|h4=?|Gv_DRCB{I;XBZK4Ov%I~|S&Nn`? zsv~u7TgC+UhJBuCcg2af!t+`?Vsxvr7kx22Zsa`sGi!N@>8V{Nk?S(txl>$`W5lmN zS`{wS*QOVD{@|OnXOh)mv3vPOuhaz--;Me#Wy@dXS!T{*{xvakdh{!+w)7l|Z5#il zKiV#+ey`z5$I;4?5d9Q$=Rj-or^`Fi>_RKMjbb`4oOH1o9CdN%Z8_-mdEl81+g4pI zo^ru$@y;E+zn2CWSH#6uMBS2K*$w^XSM}s>`TprkXS%-l@{;&|+Tk^>9}e{_$@gop zz2&mKz57&*^qSGI^F`x>?T>A9oa;w22fAvj`r>x$`4Hk z9^2vPdC4V)kN!S9`uf`3;#?wyFWSo>g;Re0IWuP0j6KAc=< zTleq9o4WkLG0wg92Z#IZj&;2A(bl+;PQR@ep7r@{ZJBJG@wnM&!Y?JQQ>Pb|R+G({ zWi?L%txM|Xx_58xn3on?nl$58*VAabdo>Ol?Thz2v@IArY_E5{$= 3 and self.sequence [l-3:] == [1,2,1]: - self.lab.configure(text = "séquence 1 2 1") - self.lab.grid(row = 1, column = 0) - elif l >= 4 and self.sequence [l-4:] == [2,2,1,1]: - self.lab.configure(text = "séquence 2 2 1 1") - self.lab.grid(row = 1, column = 1) - -if __name__ == "__main__": - root = tkinter.Tk() - f = MaFenetreSeq(root) - root.mainloop() \ No newline at end of file diff --git a/_todo/programme/combobox.py b/_todo/programme/combobox.py deleted file mode 100644 index f9fb8a35..00000000 --- a/_todo/programme/combobox.py +++ /dev/null @@ -1,19 +0,0 @@ -# -*- coding: utf-8 -*- -import tkinter -import tkinter.ttk as ttk - -root = tkinter.Tk() - -o = ttk.Combobox(root, values=["ligne 1", "ligne 2", "ligne 3", "ligne 4"]) -o.pack () - -def print_file () : # voir le chapitre sur les événements - print(o.get()) - -b = tkinter.Button (root, text="print") -b.config (command = print_file) # idem -b.pack () - -help(tkinter.Button.__init__) - -root.mainloop() # idem diff --git a/_todo/programme/command.py b/_todo/programme/command.py deleted file mode 100644 index d46a006a..00000000 --- a/_todo/programme/command.py +++ /dev/null @@ -1,13 +0,0 @@ -# -*- coding: utf-8 -*- -# la première ligne autorise les accents -import tkinter -root = tkinter.Tk () -b = tkinter.Button (text = "fonction change_legende") -b.pack () - -def change_legende () : - global b - b.config (text = "nouvelle légende") - -b.config (command = change_legende) -root.mainloop () diff --git a/_todo/programme/conversion.py b/_todo/programme/conversion.py deleted file mode 100644 index 2a307ca8..00000000 --- a/_todo/programme/conversion.py +++ /dev/null @@ -1,51 +0,0 @@ -import py2html -import os -import os.path - -py_page = """ - - - - -%s - - - -

    Programme %s

    -
    -%s -
    -cr avec py2html version:%s -

    -

    -""" - -l = os.listdir ("") -for f in l: - racine,ext = os.path.splitext (f) - if ext == ".py": - print "conversion of ", f - appliedstyle = py2html.readStyleFile(None) - data = py2html.file2HTML(f,"0",appliedstyle,False,"1") - block = py2html.makeBlock (data) - html = py_page % (f,f,block,py2html.__version__) - outfile = racine + ".html" - file = open(outfile,"w") - file.write(html) - file.close() -print "end" \ No newline at end of file diff --git a/_todo/programme/cube_class.py b/_todo/programme/cube_class.py deleted file mode 100644 index 64135fdd..00000000 --- a/_todo/programme/cube_class.py +++ /dev/null @@ -1,22 +0,0 @@ -class Fonction : - def calcul(self, x): - pass - def calcul_n_valeur(self, l) : - res = [ self.calcul(i) for i in l ] - return res - -class Carre (Fonction) : - def calcul(self, x): - return x*x - -class Cube (Fonction) : - def calcul(self, x): - return x*x*x - -li = [0,1,2,3] -print(li) # affiche [0, 1, 2, 3] - -l1 = Carre().calcul_n_valeur(li) # l1 vaut [0, 1, 4, 9] -l2 = Cube().calcul_n_valeur(li) # l2 vaut [0, 1, 8, 27] -print(l1) -print(l2) diff --git a/_todo/programme/cube_class2.py b/_todo/programme/cube_class2.py deleted file mode 100644 index 074a63a2..00000000 --- a/_todo/programme/cube_class2.py +++ /dev/null @@ -1,19 +0,0 @@ -class Fonction: - def calcul(self, x): - pass -class Carre(Fonction): - def calcul(self, x): - return x*x -class Cube(Fonction): - def calcul(self, x): - return x*x*x - -def calcul_n_valeur (l,f): - res = [ f(i) for i in l ] - return res - -l = [0,1,2,3] -l1 = calcul_n_valeur(l, Carre().calcul) # l1 vaut [0, 1, 4, 9] -l2 = calcul_n_valeur(l, Cube().calcul) # l2 vaut [0, 1, 8, 27] -print(l1) -print(l2) diff --git a/_todo/programme/dicho.py b/_todo/programme/dicho.py deleted file mode 100644 index 8ccb44ce..00000000 --- a/_todo/programme/dicho.py +++ /dev/null @@ -1,12 +0,0 @@ -def recherche_dichotomique (li, c) : - a,b = 0, len (li)-1 - while a <= b : - m = (a+b)//2 - if c == li [m] : return m - elif c < li [m] : b = m-1 # partie suprieure limine - else : a = m+1 # partie infrieure limine - return -1 # lment non trouv - -li = range (0,100,2) -print (recherche_dichotomique (li, 48)) # affiche 24 -print (recherche_dichotomique (li, 49)) # affiche -1 \ No newline at end of file diff --git a/_todo/programme/essai.txt b/_todo/programme/essai.txt deleted file mode 100644 index 10f095e4..00000000 --- a/_todo/programme/essai.txt +++ /dev/null @@ -1,57 +0,0 @@ --1/0= 0/1= 0.0 -1/2= 0.5 -2/3= 0.6666666666666666 -3/0= 4/1= 4.0 -5/2= 2.5 -6/3= 2.0 -7/0= 8/1= 8.0 -9/2= 4.5 -10/3= 3.3333333333333335 -11/0= 12/1= 12.0 -13/2= 6.5 -14/3= 4.666666666666667 -15/0= 16/1= 16.0 -17/2= 8.5 -18/3= 6.0 --1/0= 0/1= 0.0 -1/2= 0.5 -2/3= 0.6666666666666666 -3/0= 4/1= 4.0 -5/2= 2.5 -6/3= 2.0 -7/0= 8/1= 8.0 -9/2= 4.5 -10/3= 3.3333333333333335 -11/0= 12/1= 12.0 -13/2= 6.5 -14/3= 4.666666666666667 -15/0= 16/1= 16.0 -17/2= 8.5 -18/3= 6.0 --1/0= 0/1= 0.0 -1/2= 0.5 -2/3= 0.6666666666666666 -3/0= 4/1= 4.0 -5/2= 2.5 -6/3= 2.0 -7/0= 8/1= 8.0 -9/2= 4.5 -10/3= 3.3333333333333335 -11/0= 12/1= 12.0 -13/2= 6.5 -14/3= 4.666666666666667 -15/0= 16/1= 16.0 -17/2= 8.5 -18/3= 6.0 --1/-2=0.5 -0/-1=-0.0 -1/0=2/1=2.0 -3/2=1.5 --1/-2=0.5 -0/-1=-0.0 -1/0=2/1=2.0 -3/2=1.5 --1/-2=0.5 -0/-1=-0.0 -1/0=2/1=2.0 -3/2=1.5 diff --git a/_todo/programme/exemple.py b/_todo/programme/exemple.py deleted file mode 100644 index 9a056203..00000000 --- a/_todo/programme/exemple.py +++ /dev/null @@ -1,13 +0,0 @@ -import module_exemple - -c = module_exemple.exemple_classe () -print(c) -print(module_exemple.exemple_fonction()) -help (module_exemple) - - - - - - - diff --git a/_todo/programme/exemple2.py b/_todo/programme/exemple2.py deleted file mode 100644 index b2fd9d02..00000000 --- a/_todo/programme/exemple2.py +++ /dev/null @@ -1,6 +0,0 @@ -import module_exemple as alias - -c = alias.exemple_classe () -print c -print alias.exemple_fonction () -help (alias) \ No newline at end of file diff --git a/_todo/programme/exemple3.py b/_todo/programme/exemple3.py deleted file mode 100644 index 840981a2..00000000 --- a/_todo/programme/exemple3.py +++ /dev/null @@ -1,5 +0,0 @@ -from module_exemple import * - -c = exemple_classe () -print c -print exemple_fonction () \ No newline at end of file diff --git a/_todo/programme/exemple4.py b/_todo/programme/exemple4.py deleted file mode 100644 index 73529187..00000000 --- a/_todo/programme/exemple4.py +++ /dev/null @@ -1,6 +0,0 @@ -alias = __import__ ("module_exemple") - -c = alias.exemple_classe () -print c -print alias.exemple_fonction () -help (alias) \ No newline at end of file diff --git a/_todo/programme/exemple_bind.py b/_todo/programme/exemple_bind.py deleted file mode 100644 index 1459b088..00000000 --- a/_todo/programme/exemple_bind.py +++ /dev/null @@ -1,20 +0,0 @@ -import tkinter -root = tkinter.Tk() -b = tkinter.Button(text="appuyer sur une touche") -b.pack() - -def affiche_touche_pressee (evt) : - print("--------------------------- touche pressee") - print("evt.char = ", evt.char) - print("evt.keysym = ", evt.keysym) - print("evt.num = ", evt.num) - print("evt.x,evt.y = ", evt.x, ",", evt.y) - print("evt.x_root,evt.y_root = ", evt.x_root, ",", evt.y_root) - print("evt.widget = ", evt.widget) - -b.bind ("", affiche_touche_pressee) -b.bind ("", affiche_touche_pressee) -b.bind ("", affiche_touche_pressee) -b.focus_set () - -root.mainloop () \ No newline at end of file diff --git a/_todo/programme/exemple_bind_my.py b/_todo/programme/exemple_bind_my.py deleted file mode 100644 index 9827bded..00000000 --- a/_todo/programme/exemple_bind_my.py +++ /dev/null @@ -1,14 +0,0 @@ -# -*- coding: utf-8 -*- -import tkinter - -def affiche_touche_pressee(): - root.event_generate("<>", rooty=-5) - -def perso(evt): - print("perso", evt.y_root) - -root = tkinter.Tk() -b = tkinter.Button(text="clic", command=affiche_touche_pressee) -b.pack() -root.bind("<>", perso) # on intercepte un événement personnalisé -root.mainloop () \ No newline at end of file diff --git a/_todo/programme/exemple_import.py b/_todo/programme/exemple_import.py deleted file mode 100644 index a1f867e8..00000000 --- a/_todo/programme/exemple_import.py +++ /dev/null @@ -1,20 +0,0 @@ -# coding: latin-1 -def import_fichier (module) : - import os.path - import sys - if os.path.exists (module) : # on teste l'existence du fichier - folder,name = os.path.split (module) # on obtient le rpertoire du module - if folder not in sys.path : - sys.path.append (folder) # on ajoute le rpertoire dans la liste - # des rpertoires autoriss - name = name.replace (".py", "") # on enlve l'extension - module = __import__ (name) # on importe le module - return module - else : - # si le fichier n'existe pas --> on lve une exception - raise ImportError ("impossible d'importer le module " + module) - -# on importe un module -mod = import_fichier ("module_exemple.py") -# on affiche l'aide associe -help (mod) \ No newline at end of file diff --git a/_todo/programme/exemple_menu.py b/_todo/programme/exemple_menu.py deleted file mode 100644 index 775b3d15..00000000 --- a/_todo/programme/exemple_menu.py +++ /dev/null @@ -1,40 +0,0 @@ -import tkinter -import tkinter.ttk -import tkinter.tix -root = tkinter.Tk () - -help(tkinter.tix) - -e = tkinter.Text (width = 50, height = 10) -e.pack () - -m = tkinter.Menu (root) - -sm1 = tkinter.Menu (root) -sm2 = tkinter.Menu (root) - -m.add_cascade (label = "sous-menu 1", menu = sm1) -m.add_cascade (label = "sous-menu 2", menu = sm2) - -nb = 0 - -def affiche(): - print ("fonction affiche") - -def calcul(): - print ("fonction calcul ", 3 * 4) - -def ajoute_bouton () : - global nb - nb += 1 - b = tkinter.Button (text = "bouton " + str (nb)) - b.pack () - -sm1.add_command (label = "affiche", command = affiche) -sm1.add_command (label = "calcul", command = calcul) -sm2.add_command (label = "ajoute_bouton", command = ajoute_bouton) -sm2.add_command (label = "fin", command = root.destroy) - -root.config (menu = m, width = 200) -root.title ("essai de menu") -root.mainloop () \ No newline at end of file diff --git a/_todo/programme/exemple_pydoc.py b/_todo/programme/exemple_pydoc.py deleted file mode 100644 index dafbbf23..00000000 --- a/_todo/programme/exemple_pydoc.py +++ /dev/null @@ -1,32 +0,0 @@ -# coding: latin-1 -"""aide associe ce module, exemple d'utiliation de pydoc""" -import os.path -import os - -def pydoc_present () : - """teste la prsence du fichier pydoc.py""" - p = "c:\\python26\\lib\\pydoc.py""" - return os.path.exists (p) - -def pydoc_generation (file) : - """gnre la documentation associe au fichier file""" - if not pydoc_present () : - raise Exception ("pydoc n'est pas install") - os.system ("c:\\python26\\python c:\\python26\\lib\\pydoc.py -w " + file) - -class ExempleClass (object) : - """exemple de classe avec de la documentation - la classe contient comme attribut : - - li : liste quelconque - """ - def __init__ (self) : - object.__init__ (self) - self.li = ["un", "deux"] - def __str__ (self) : - """permet d'afficher la classe sous forme de chanes de caractres""" - return "li = " + str (self.li) - -if __name__ == "__main__" : - e = ExempleClass () - print e # affiche li = ['un', 'deux'] - pydoc_generation ("exemple_pydoc") \ No newline at end of file diff --git a/_todo/programme/extrpdf.py b/_todo/programme/extrpdf.py deleted file mode 100644 index a1b3044d..00000000 --- a/_todo/programme/extrpdf.py +++ /dev/null @@ -1,26 +0,0 @@ -from pdftools.pdffile import PDFDocument -from pdftools.pdftext import Text - -def contents_to_text (contents): - for item in contents: - if isinstance (item, type ([])): - for i in contents_to_text (item): - yield i - elif isinstance (item, Text): - yield item.text - -doc = PDFDocument ("declaration.pdf") -n_pages = doc.count_pages () -text = [] - -for n_page in range (1, (n_pages+1)): - print "Page", n_page - page = doc.read_page (n_page) - contents = page.read_contents ().contents - text.extend (contents_to_text (contents)) - -print "".join (text) - -f = open ("ok.txt", "w") -f.write ("".join (text)) -f.close () diff --git a/_todo/programme/fileex.py b/_todo/programme/fileex.py deleted file mode 100644 index fd098bf1..00000000 --- a/_todo/programme/fileex.py +++ /dev/null @@ -1,10 +0,0 @@ - -for i in range(0, 5): - try : - x, y = i-1, i-2 - print(f"{x}/{y}") - with open("essai.txt", "a") as f: - f.write(f"{x}/{y}=") - f.write(str((float (x)/y)) + "\n" ) # exception si y == 0 - except Exception as e: - print("erreur avec i = ", i, ",", e, f.closed) \ No newline at end of file diff --git a/_todo/programme/filelist.py b/_todo/programme/filelist.py deleted file mode 100644 index bb26dd75..00000000 --- a/_todo/programme/filelist.py +++ /dev/null @@ -1,42 +0,0 @@ -# coding: latin-1 -import glob -import os.path - -def liste_fichier_repertoire (folder, filter) : - # rsultats - file,fold = [], [] - - # recherche des fichiers obissant au filtre - res = glob.glob (folder + "\\" + filter) - - # on inclut les sous-rpertoires qui n'auraient pas t - # slectionns par le filtre - rep = glob.glob (folder + "\\*") - for r in rep : - if r not in res and os.path.isdir (r) : - res.append (r) - - # on ajoute fichiers et rpertoires aux rsultats - for r in res : - path = r - if os.path.isfile (path) : - # un fichier, rien faire part l'ajouter - file.append (path) - else : - # sous-rpertoire : on appelle nouveau la fonction - # pour retourner la liste des fichiers inclus - fold.append (path) - fi,fo = liste_fichier_repertoire (path, filter) - file.extend (fi) # on tend la liste des fichiers - fold.extend (fo) # on tend la liste des rpertoires - # fin - return file,fold - -folder = r"." -filter = "*.rst" -file,fold = liste_fichier_repertoire (folder, filter) - -for f in file : - print("fichier ", f) -for f in fold : - print("rpertoire ", f) \ No newline at end of file diff --git a/_todo/programme/filelist2.py b/_todo/programme/filelist2.py deleted file mode 100644 index cdb33463..00000000 --- a/_todo/programme/filelist2.py +++ /dev/null @@ -1,17 +0,0 @@ -# coding: latin-1 -import os - -def liste_fichier_repertoire (folder) : - file, rep = [], [] - for r, d, f in os.walk (folder) : - for a in d : rep.append (r + "/" + a) - for a in f : file.append (r + "/" + a) - return file, rep - -folder = r"." -file,fold = liste_fichier_repertoire (folder) - -for f in file : - print ("fichier ", f) -for f in fold : - print ("rpertoire ", f) \ No newline at end of file diff --git a/_todo/programme/filelist3.py b/_todo/programme/filelist3.py deleted file mode 100644 index 929fea7e..00000000 --- a/_todo/programme/filelist3.py +++ /dev/null @@ -1,24 +0,0 @@ -# coding: latin-1 -import os -import re - -s = r"D:\Dupre\_data\informatique\support\vba\image/vbatd1_4.png" -print re.compile ("[\\\\/]image[\\\\/].*[.]png").search(s) -print re.compile ("[\\\\/]image[\\\\/].*[.]png").match(s) - - -def liste_fichier_repertoire (folder) : - file, rep = [], [] - for r, d, f in os.walk (folder) : - #for a in d : rep.append (r + "/" + a) - for a in f : - e = r + "/" + a - if re.compile ("[\\\\/]image[\\\\/].*[.]png$").search(e) : - file.append (r + "/" + a) - return file, rep - -folder = r"D:\Dupre\_data\informatique" -file,fold = liste_fichier_repertoire (folder) - -for f in file : print "fichier ", f -for f in fold : print "rpertoire ", f \ No newline at end of file diff --git a/_todo/programme/filemp3.py b/_todo/programme/filemp3.py deleted file mode 100644 index f5e41416..00000000 --- a/_todo/programme/filemp3.py +++ /dev/null @@ -1,68 +0,0 @@ -# coding: latin-1 -import os -import re -import mutagen.mp3 -import mutagen.easyid3 - - -def infoMP3 (file, tags) : - """retourne des informations sur un fichier MP3 sous forme de - dictionnaire (dure, titre, artiste, ...)""" - a = mutagen.mp3.MP3(file) - b = mutagen.easyid3.EasyID3(file) - info = { "minutes":a.info.length/60, "nom":file } - for k in tags : - try: - info[k] = str(b[k][0]) - except ValueError: - continue - return info - -def all_files (repertoire, tags, ext = re.compile (".mp3$")) : - """retourne les informations pour chaque fichier d'un rpertoire""" - all = [] - for r, d, f in os.walk (repertoire) : - for a in f : - if not ext.search (a): - continue - t = infoMP3(r + "/" + a, tags) - if len(t) > 0: - all.append(t) - return all - -def heart_notitle_mots (all, avoid,sep,heart) : - """retourne trois rsultats - - les chansons dont le titre valide l'expression rgulire heart - - les chansons dont le titre valide l'expression rgulire avoid - - le nombre moyen de mots dans le titre d'une chanson""" - liheart, notitle = [], [] - nbmot, nbsong = 0,0 - for a in all : - if "title" not in a : - notitle.append (a) - continue - ti = a ["title"].lower () - if avoid.match (ti) : - notitle.append (a) - continue - if heart.search(ti): - liheart.append (a) - nbsong += 1 - nbmot += len ([ m for m in sep.split (ti) if len (m) > 0 ]) - nbsong = max(nbsong, 1) - return liheart, notitle, float (nbmot)/nbsong - -tags = "title album artist genre tracknumber".split () -all = all_files (r"D:\musique", tags) - -avoid = re.compile("^(((audio)?track( )?( - )?[0-9]{1,2})|(piste [0-9]{1,2}))$") -sep = re.compile("[- ,;!'.?&:]") -heart = re.compile("((heart)(?!((ache)|(land))))") -liheart, notitle, moymot = heart_notitle_mots (all, avoid, sep, heart) - -print("nombre de mots moyen par titre ", moymot) -print("somme des dure contenant heart ", sum([s ["minutes"] for s in liheart])) -print("chanson sans titre ", len (notitle)) -print("liste des titres ") -for s in liheart: - print(" ", s["title"]) \ No newline at end of file diff --git a/_todo/programme/filesel.py b/_todo/programme/filesel.py deleted file mode 100644 index b383a5bb..00000000 --- a/_todo/programme/filesel.py +++ /dev/null @@ -1,11 +0,0 @@ -import Tix as Tk -root = Tk.Tk () - -def command_print () : print box.cget("value") - -box = Tk.FileSelectBox (root) -box.config (directory="c:\\") -box.pack () -Tk.Button (root, text = "print", command = command_print).pack () - -root.mainloop () \ No newline at end of file diff --git a/_todo/programme/fonction.py b/_todo/programme/fonction.py deleted file mode 100644 index c9c5161a..00000000 --- a/_todo/programme/fonction.py +++ /dev/null @@ -1,71 +0,0 @@ -# coding: latin-1 -"""ce programme dtermine toutes les fonctions dfinies dans -un programme et jamais appeles""" -import glob -import os -import re - - -def trouve_toute_fonction (s, exp, gr, expm = "^$") : - """ partir d'une chane de caractres correspondant - un programme Python, cette fonction retourne - une liste de 3-uples, chacun contient : - - le nom de la fonction - - (debut,fin) de l'expression dans la chane - - la ligne o elle a t trouve - - Paramtres: - - s : chane de caractres - - exp : chane de caractres correspond l'expression - - gr : numro de groupe correspondant au nom de la fonction - - expm : expression ngative - """ - exp = re.compile (exp) - res = [] - pos = 0 - r = exp.search (s, pos) # premire recherche - while r is not None : - temp = (r.groups()[gr], r.span(gr), r.group(gr)) - x = re.compile(expm.replace ("function", temp [0]) ) - if not x.match(temp[2]) : - # l'expression ngative n'est pas trouv, on peut ajouter ce rsultat - res.append(temp) - r = exp.search(s, r.end(gr)) # recherche suivante - return res - -def get_function_list_definition (s) : - """trouve toutes les dfinitions de fonctions""" - return trouve_toute_fonction (s, \ - "\ndef[ ]+([a-zA-Z_][a-zA-Z_0-9]*)[ ]*[(].*[)][ ]*[:]", 0) - -def get_function_list_call (s) : - """trouve tous les appels de fonctions""" - return trouve_toute_fonction (s, \ - "\n.*[=(,[{ .]([a-zA-Z_][a-zA-Z_0-9]*)(?![ ]?:)[ ]*[(].*[)]?", 0, \ - "^\\n[ ]*(class|def)[ ]+function.*$") - -def detection_fonction_pas_appelee (file) : - """retourne les couples de fonctions jamais appeles suivies - du numro de la ligne o elles sont dfinies""" - - f = open (file, "r") - li = f.readlines () - f.close () - sfile = "".join (li) - - funcdef = get_function_list_definition (sfile) - funccal = get_function_list_call (sfile) - f2 = [ p [0] for p in funccal ] - res = [] - for f in funcdef : - if f [0] not in f2 : - ligne = sfile [:f [1][0]].count ("\n") - res.append ( (f [0], ligne+2)) - return res - -def fonction_inutile () : # ligne 63 - pass - -file = __file__ -print(detection_fonction_pas_appelee(file)) - # affiche [('fonction_inutile', 63)] \ No newline at end of file diff --git a/_todo/programme/genchm.py b/_todo/programme/genchm.py deleted file mode 100644 index abd4dcdf..00000000 --- a/_todo/programme/genchm.py +++ /dev/null @@ -1,117 +0,0 @@ -# coding: latin-1 -"""genchm.py : gnration automatique du fichier d'aide chm""" -import genhelp -import os -htmlworkshop_path = "\"c:\\Program Files\\HTML Help Workshop\\hhc.exe\"" - -def g (s) : - """ajoute des guillements autour d'une chane de caractres""" - return "\"" + s + "\"" - -def genhhp (files, premierepage, titre, \ - hhp = "help.hhp", hhc = "help.hhc", hhk = "help.hhk") : - """gnre le fichier hpp dfinissant le fichier d'aide chm, - files est la liste des fichiers HTML - premierepage est la page afficher en premier - titre est le titre de l'aide""" - proj = """[OPTIONS] -Compatibility=1.1 -Full-text search=Yes -Contents file=""" + hhc + """ -Default Window=main -Default topic=""" + premierepage + """ -Index file=""" + hhk + """ -Language=0x40C French -Binary TOC=YES -Create CHI file=No -Title=""" + g (titre) + """ - -[WINDOWS] -main=""" + g (titre) + """, """ + g (hhc) + """, """ + g (hhk) + """ , """ + \ - g (premierepage) + """, """ + g (premierepage) + """,,,,,0x23520,,0x387e,,,,,,,,0 - -[FILES] -""" - for f in files : - proj += f + "\n" - - f = open (hhp, "w") - f.write (proj) - f.close () - -def gen_premierepage (files, titre, res = "index.html") : - """gnre la premire page de l'aide au format HTML""" - s = """""" + titre + """\n""" - s += "

    " + titre + "

    \n" - for f in files : - s += "
    " + f.replace (".html", "") + "
    \n" - s += "\n" - - f = open (res, "w") - f.write (s) - f.close () - -def genhh_input (entree, page, link = True) : - """retourne la chane de caractres associe une entre de la table des matires""" - res = """
  • """ - if link : res += """""" - res += """\n""" - return res - -def genhhc (files, premierepage, titre, hhc = "help.hhc") : - """gnre le fichier hhc, mme paramtre que pour hhp""" - res =""" - - - -
      """ - res += genhh_input (titre, premierepage, False) - res += "
        \n" - res += genhh_input ("modules", premierepage, False) - res += "
          \n" - for f in files : - res += genhh_input (f.replace (".html", ""), f) - res += "
        \n" - res += "
      \n" - res += "
    \n" - res += "\n" - - f = open (hhc, "w") - f.write (res) - f.close () - -def genhhk (files, premierepage, titre, hhk = "help.hhk") : - """gnre le fichier hhk, mme paramtre que pour hhp""" - res =""" - - - -
      """ - res += genhh_input (titre, premierepage) - res += "
        \n" - for f in files : - res += genhh_input (f.replace (".html", ""), f) - res += "
      \n" - res += "
    \n" - res += "\n" - - f = open (hhk, "w") - f.write (res) - f.close () - -def genchm (files, titre, \ - hhp = "help.hhp", hhc = "help.hhc", hhk = "help.hhk") : - """gnre le fichier d'aide complet""" - premierepage = "index.html" # gnre la page de garde - gen_premierepage (files, titre, premierepage) - files.append (premierepage) - genhhp (files, premierepage, titre) # gnre le fichier hhp - genhhc (files, premierepage, titre) # gnre le fichier hhc - genhhk (files, premierepage, titre) # gnre le fichier hhk - os.system (htmlworkshop_path + " " + hhp) # appelle HTML WorkShop en ligne de commande - -if __name__ == "__main__" : - files = [".\\genchm.py", ".\\genhelp.py", "os", "sys"] - res = genhelp.genhelp (files) - print res # ['genchm.html', 'genhelp.html', 'os.html', 'sys.html'] - genchm (res, "GenHelp") \ No newline at end of file diff --git a/_todo/programme/genhelp.py b/_todo/programme/genhelp.py deleted file mode 100644 index b8af6609..00000000 --- a/_todo/programme/genhelp.py +++ /dev/null @@ -1,65 +0,0 @@ -# coding: latin-1 -"""genhelp.py : gnration automatique de l'aide dans le rpertoire d'excution""" -import os -import sys -python_path = r"c:\python25\python" # constante -pydoc_path = r"c:\python25\lib\pydoc.py" # constante - -class ClassExemple : - """classe vide, exemple d'aide""" - def __init__ (self) : - """constructeur""" - pass - def methode (self) : - """unique mthode""" - return 1 - -def generate_help_file (f, pyt = python_path, pyd = pydoc_path) : - """gnre l'aide associe un fichier ou un module - le nom de ce fichier peut apparatre sans son extension ou alors - prcd de .\\ ou avec son chemin complet - pyt est le rpertoire de python - pyd est l'emplacement de pydoc.py""" - s = "call " + pyt + " " + pyd + " -w " + f - os.system (s) - -def replace_firstpage (file, page) : - """la gnration de l'aide chm s'arrte avant la fin si le lien index - est laiss dans les pages gnres par pydoc, on le remplace par une page - comme index.html""" - f = open (file, "r") - li = f.readlines () - f.close () - f = open (file, "w") - for l in li : - f.write (l.replace ("""index""", page)) - f.close () - -def genhelp (files, pyt = python_path, pyd = pydoc_path, firstpage = "index.html") : - """gnre l'aide associe des fichiers ou des modules, - un fichier se distingue d'un module par son extension, - retourne la liste des fichiers gnrs, - pyt est le rpertoire de python - pyd est l'emplacement de pydoc.py - firstpage voir fonction replace_firstpage""" - res = [] - for f in files : - print "gnration de l'aide de ", f - if ".py" in f : # fichier - generate_help_file (f, pyt, pyd) - g = f.split ("\\") # ne garde que le nom de fichier et non son chemin - page = g [ len (g)-1].replace (".py", ".html") - else : # module - generate_help_file (f, pyt, pyd) - page = f + ".html" - res.append (page) - replace_firstpage (page, firstpage) - return res - -if __name__ == "__main__" : - import sys - import os - - files = [".\\genchm.py", ".\\genhelp.py", "os", "sys"] - res = genhelp (files) - print res # ['genchm.html', 'genhelp.html', 'os.html', 'sys.html'] \ No newline at end of file diff --git a/_todo/programme/graphplot.py b/_todo/programme/graphplot.py deleted file mode 100644 index f608923a..00000000 --- a/_todo/programme/graphplot.py +++ /dev/null @@ -1,86 +0,0 @@ -# coding: latin-1 - -import sys -import os - -default_path = r"C:\Program Files\gp423win32\gnuplot\bin\pgnuplot.exe" -default_temp_dir = "tempgnuplot" -imagenumber = 0 - -def execute_script_gnuplot (scr) : - global default_temp_dir - global imagenumber - global default_path - - if not os.path.exists (default_temp_dir) : os.mkdir (default_temp_dir) - - # avant - scr = "set term png\n" + scr - image = default_temp_dir + ("/image_%05d.png" % imagenumber) - imagenumber += 1 - scr = "set out \"" + image + "\"\n" + scr - - # aprs - scr += "show out\n" - scr += "exit\n" - - name = default_temp_dir + "/gnuscript.txt" - f = open (name, "w") - f.write (scr) - f.close () - - line = default_path + " " + name - os.system (line) - - return image - -def build_script_gnuplot (series, seriesname, title = None, \ - xlabel = None, ylabel = None, histo = False) : - global default_temp_dir - global default_path - - if not os.path.exists (default_temp_dir) : os.mkdir (default_temp_dir) - scr = "" - - if xlabel != None : scr += "set xlabel \"" + xlabel + "\"\n" - if ylabel != None : scr += "set ylabel \"" + ylabel + "\"\n" - if title != None : scr += "set title \"" + title + "\"\n" - - scr += "set grid\n" - if histo : scr += "set style data histograms\n" - else : scr += "set style data lines\n" - scr += "plot " - - id = 0 - for s,lab in zip (series, seriesname) : - name = default_temp_dir + "/series%d.txt" % (id) - id += 1 - f = open (name, "w") - for l in s : - if histo : f.write ("%f\n" % (l [1])) - else : f.write ("%f\t%f\n" % (l [0], l [1])) - f.close () - scr += "\"" + name + "\" title \"" + lab + "\", " - scr = scr [:len (scr)-2] - scr += "\n" - - return execute_script_gnuplot (scr) - - -if __name__ == "__main__" : - print "chemin pour gnuplot ", default_path - - series = [ [], [] ] - for i in range (0, 100) : - x = float (i) / 100 - y = x ** 0.5 - z = 1.0 - y - series [0].append ( (x,y) ) - series [1].append ( (x,z) ) - - image = build_script_gnuplot (series, ["serie 1", "serie 2"], \ - xlabel="abscisses", ylabel="ordonnes", histo = False) - print "image ", image - image = build_script_gnuplot (series, ["serie 1", "serie 2"], \ - xlabel="abscisses", ylabel="ordonnes", histo = True) - print "image ", image diff --git a/_todo/programme/hal_python.iss b/_todo/programme/hal_python.iss deleted file mode 100644 index 6cb880f2..00000000 --- a/_todo/programme/hal_python.iss +++ /dev/null @@ -1,100 +0,0 @@ -; section non commente -[Setup] -AppName=HalPython -AppVerName=HalPython 1.5.1162 -AppPublisher=Xavier Dupr -AppPublisherURL=http://www.xavierdupre.fr/hal_python/hal_python_help_html/index.html -AppSupportURL=http://www.xavierdupre.fr/hal_python/hal_python_help_html/index.html -AppUpdatesURL=http://www.xavierdupre.fr/hal_python/hal_python_help_html/index.html -DefaultDirName={pf}/HalPython -DefaultGroupName=HalPython -OutputDir=D:\Dupre\_data\site\hal_python\executable -OutputBaseFilename=setup_HalPython_py25 -Compression=lzma -SolidCompression=yes -VersionInfoVersion=1.0.0 - -[Code] - -; cette fonction retourne le chemin d'installation de Python 2.5 -; le rsultat est vide si celui-ci n'a pas t install -; le chemin est celui stock dans la cl de registre -; HKLM\Software\Python\PythonCore\2.5\InstallPath -function GetPythonPath(Param: String): String; -begin - Result := ''; - Result := ExpandConstant('{reg:HKLM\Software\Python\PythonCore\2.5\InstallPath,|}'); - if Result <> '' then - Result := Result + '\pythonw.exe'; -end; - -; cette fonction retourne {win}\system32\msiexec.exe -; si Python 2.5 a t install, vide sinon -function GetPythonPathExec(Param: String): String; -begin - Result := GetPythonPath () ; - if Result <> '' then - Result := ExpandConstant('{win}\system32\msiexec.exe') ; -end; - -; cls de registre -; mmorise le rpertoire d'installation -; et le numro de version -[Registry] -Root: HKLM; Subkey: "SOFTWARE\HalPython\InstallPath"; ValueType: string; ValueName: ""; - ValueData: "{app}"; Flags: uninsdeletekey -Root: HKLM; Subkey: "SOFTWARE\HalPython\Version"; ValueType: string; ValueName: ""; - ValueData: "1.5.1162"; Flags: uninsdeletekey - -; icne sur le bureau -[Tasks] -Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; - Flags: checkedonce - -; fichiers -[Files] -; le module en question -Source: "..\hal_dll.dll"; DestDir: "{app}\hal_python"; -Source: "..\hal_dll_ext.dll"; DestDir: "{app}\hal_python"; -Source: "..\hal_dll_model.dll"; DestDir: "{app}\hal_python"; -Source: "..\hal_python.dll"; DestDir: "{app}\hal_python"; -Source: "..\wxwindows_old.dll"; DestDir: "{app}\hal_python"; -Source: "..\boost_python.dll"; DestDir: "{app}\hal_python"; -Source: "..\_graphviz_draw.exe"; DestDir: "{app}\hal_python"; -Source: "..\_hal_script.exe"; DestDir: "{app}\hal_python"; -Source: "..\hal_python.py"; DestDir: "{app}\hal_python"; -Source: "..\install\__init__.py"; DestDir: "{app}\hal_python"; -Source: "..\install\setup.py"; DestDir: "{app}"; -Source: "..\_test\temp\hal_python.chm"; DestDir: "{app}"; - -; les fichiers annexes -Source: "hal_python.url"; DestDir: "{app}"; URL de l'application -Source: "pyscripter.chm"; DestDir: "{app}"; aide de l'diteur PyScripter -Source: "PyScripter.exe"; DestDir: "{app}"; diteur PyScripter -Source: "python-2.5.2.msi"; DestDir: "{app}"; installateur Python 2.5 -Source: "sample.bat"; DestDir: "{app}"; fichier de commande -Source: "sample.py"; DestDir: "{app}"; exemple de programme - -; cration des icnes -[Icons] -Name: "{group}\PyScripter"; Filename: "{app}\PyScripter.exe"; WorkingDir: "{app}" -Name: "{group}\PyScripter Help"; Filename: "{app}\pyscripter.chm"; WorkingDir: "{app}" -Name: "{group}\Help"; Filename: "{app}\hal_python.chm"; WorkingDir: "{app}" -Name: "{group}\smallest sample with PyScripter"; Filename: "{app}\small_sample.bat"; WorkingDir: "{app}" -Name: "{group}\Website"; Filename: "{app}\hal_python.url" -Name: "{group}\uninstall"; Filename: "{uninstallexe}"; WorkingDir: "{app}" - -[Run] -; installe Python 2.5 si GetPythonPathExec retourne un rsultat non vide -; passe l'instruction suivante sinon -Filename: "{code:GetPythonPathExec}"; Parameters: "/i ""{app}\python-2.5.2.msi"" /qr ALLUSERS=1"; - StatusMsg: "Installing Python 2.5..."; Flags: skipifdoesntexist - -; installe le module si GetPythonPath retourne un rsultat non vide -; passe l'instruction suivante sinon -; excute en fait l'insttruction python setup.py install -Filename: "{code:GetPythonPath}"; Parameters:"setup.py install"; WorkingDir: "{app}"; - StatusMsg: "Installing HalPython for Python 2.5..." - -; supprime l'installation de Python 2.5 -Filename: "{cmd}"; Parameters: "/c del python-2.5.2.msi"; WorkingDir: "{app}"; diff --git a/_todo/programme/hal_python_update.iss b/_todo/programme/hal_python_update.iss deleted file mode 100644 index 5d5b9c10..00000000 --- a/_todo/programme/hal_python_update.iss +++ /dev/null @@ -1,86 +0,0 @@ -; section non commente -[Setup] -AppName=HalPython -AppVerName=HalPython 1.5.1162 -AppPublisher=Xavier Dupr -AppPublisherURL=http://www.xavierdupre.fr/hal_python/hal_python_help_html/index.html -AppSupportURL=http://www.xavierdupre.fr/hal_python/hal_python_help_html/index.html -AppUpdatesURL=http://www.xavierdupre.fr/hal_python/hal_python_help_html/index.html -DefaultDirName={pf}/HalPython -DefaultGroupName=HalPython -OutputDir=D:\Dupre\_data\site\hal_python\executable -OutputBaseFilename=setup_HalPython_update_py25 -Compression=lzma -SolidCompression=yes -VersionInfoVersion=1.0.0 - -[Code] -function GetPythonPath(Param: String): String; -begin - Result := ''; - Result := ExpandConstant('{reg:HKLM\Software\Python\PythonCore\2.5\InstallPath,|}'); - if Result <> '' then - Result := Result + '\pythonw.exe'; -end; - -function GetHalPythonPath(Param: String): String; -begin - Result := ''; - Result := ExpandConstant ('{reg:HKLM\Software\HalPython\InstallPath,|}') ; -end; - -function InitializeSetup(): Boolean; -begin - Result := True ; - MsgBox (GetPythonPath (''), mbConfirmation, MB_OK) ; - MsgBox (GetHalPythonPath (''), mbConfirmation, MB_OK) ; - if GetPythonPath ('') = '' then begin - MsgBox('Python 2.5 has not been installed. You should download - the complete Setup with Python 2.5 included instead of updating.', mbError, MB_OK) ; - Result := False ; - end else if GetHalPythonPath ('') = '' then begin - MsgBox('HalPython for Python 2.5 has not been installed. - You should download the complete Setup with Python 2.5 included instead of updating.', - mbError, MB_OK) ; - Result := False ; - end -end; - -[Tasks] -Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; - Flags: checkedonce - -[Files] -Source: "..\hal_dll.dll"; DestDir: "{app}\hal_python"; -Source: "..\hal_dll_ext.dll"; DestDir: "{app}\hal_python"; -Source: "..\hal_dll_model.dll"; DestDir: "{app}\hal_python"; -Source: "..\hal_python.dll"; DestDir: "{app}\hal_python"; -Source: "..\wxwindows_old.dll"; DestDir: "{app}\hal_python"; -Source: "..\boost_python.dll"; DestDir: "{app}\hal_python"; -Source: "..\_graphviz_draw.exe"; DestDir: "{app}\hal_python"; -Source: "..\_hal_script.exe"; DestDir: "{app}\hal_python"; -Source: "..\hal_python.py"; DestDir: "{app}\hal_python"; -Source: "..\install\__init__.py"; DestDir: "{app}\hal_python"; -Source: "..\install\setup.py"; DestDir: "{app}"; -Source: "hal_python.url"; DestDir: "{app}"; -Source: "small_sample.bat"; DestDir: "{app}"; -Source: "sample.py"; DestDir: "{app}"; -Source: "..\_test\temp\hal_python.chm"; DestDir: "{app}"; - -[Registry] -Root: HKLM; Subkey: "SOFTWARE\HalPython\InstallPath"; ValueType: string; ValueName: ""; - ValueData: "{app}"; Flags: uninsdeletekey -Root: HKLM; Subkey: "SOFTWARE\HalPython\Version"; ValueType: string; ValueName: ""; - ValueData: "1.5.1162"; Flags: uninsdeletekey - -[Icons] -Name: "{group}\PyScripter"; Filename: "{app}\PyScripter.exe"; WorkingDir: "{app}" -Name: "{group}\PyScripter Help"; Filename: "{app}\pyscripter.chm"; WorkingDir: "{app}" -Name: "{group}\Help"; Filename: "{app}\hal_python.chm"; WorkingDir: "{app}" -Name: "{group}\smallest sample with PyScripter"; Filename: "{app}\small_sample.bat"; WorkingDir: "{app}" -Name: "{group}\Website"; Filename: "{app}\hal_python.url" -Name: "{group}\uninstall"; Filename: "{uninstallexe}"; WorkingDir: "{app}" - -[Run] -Filename: "{code:GetPythonPath}"; Parameters:"setup.py install"; WorkingDir: "{app}"; - StatusMsg: "Installing HalPython for Python 2.5..." diff --git a/_todo/programme/htmlnavi.py b/_todo/programme/htmlnavi.py deleted file mode 100644 index 13d6814b..00000000 --- a/_todo/programme/htmlnavi.py +++ /dev/null @@ -1,16 +0,0 @@ -mat = ["Victor Hugo 6".split (), "Marcel Proust 3".split () ] -f = open ("tableau.html", "w") -f.write ("\n") -f.write ("\n") -for m in mat : - f.write ("") - for c in m : - f.write ("") - f.write ("\n") -f.write ("
    " + c + "
    ") -f.close () - -import os -os.system ("\"C:\\Program Files\\Mozilla Firefox\\firefox.exe\" tableau.html") -os.system ("\"C:\\Program Files\\Internet Explorer\\iexplore.exe\"" \ - " d:\\temp\\tableau.html") \ No newline at end of file diff --git a/_todo/programme/import_c_module.py b/_todo/programme/import_c_module.py deleted file mode 100644 index 6b28d1d2..00000000 --- a/_todo/programme/import_c_module.py +++ /dev/null @@ -1,155 +0,0 @@ -# coding: latin-1 -""" -import d'un module C (un fichier), inclut la recompilation -si le module a volu depuis sa dernire compilation -""" - -import os, sys, re - -def _find_compiled_file (path, name) : - """cherche un fichier compil""" - ver = sys.version_info - st = "%d.%d" % ver [:2] - name = os.path.splitext (name) [0] - exp = re.compile (name + "[.]o$") - file, rep = [], [] - for r, d, f in os.walk (path) : - if st not in r : continue - for a in f : - if exp.search (a) : - return r,a - return None,None - -def import_c_module (name, mingw = r"c:\MinGW\bin", cpp = True, remove = False, path = None) : - """ - @ingroup SQLAppModels - import d'un module C - @param name nom du module C (nom du fichier sans extension, sans chemin non plus) - @param mingw emplacement du compilateur mingw - @param cpp c++ file? - @param remove remove the file first before compiling - @param path if the file is not found, try to look into this folder - @return objet module - - @warning remove = True must be used when the module is compiled for the first time. - Otherwise, the module is already loaded and impossible to remove until Python is closed. - """ - if os.path.splitext (name) [1] == "" : - if cpp : - name += ".cpp" - ext = "cpp" - else : - name += ".c" - ext = "c" - else : - ext = os.path.splitext (name) [1] [1:] - - mfile = name - mod = os.path.splitext (mfile) [0] - if path != None : - mypath = os.path.normpath (os.path.realpath (path)) - allpath = [mypath, "."] - else : allpath = ["."] - - for p in sys.path : - if p not in allpath : allpath.append (p) - - for path in allpath : - whole = os.path.join (path, name) - if os.path.exists (whole) : - break - else : - path_tried = u"\n".join (allpath) - raise ImportError ("unable to find file %s in any import path:\n%s" \ - % (name, path_tried)) - - if sys.platform == "win32" : fsec = mod + ".pyd" - else : fsec = mod + ".so" - - if path not in sys.path : - sys.path.append (path) - - comp = os.path.join (path, fsec) - if not os.path.exists (comp) : - cond = True - resa = "not found" - else : - if remove : - os.remove (comp) - cond = True - resa = "remove" - else : - r,f = _find_compiled_file (path, mfile) - if f != None : - wholeo = os.path.join (r,f) - datec = os.path.getmtime (whole) - date = os.path.getmtime (wholeo) - cond = datec > date - resa = "date" - else : - cond = True - resa = "f == None" - - if cond : - mfile = mod - - file = (""" - # coding: latin-1 - from distutils.core import setup - from distutils.core import Extension - - setup(name = '%s', - version = '0.1', - ext_modules = [Extension('%s', ['%s.%s']), ], - url = '', - author = '', - author_email = '...', - ) - """ % (mfile,mfile,mfile,ext)).replace (" ", "") - wr = os.path.join (path, "setup.py") - f = open (wr, "w") - f.write (file) - f.close () - - env = os.getenv ("PATH") - if mingw not in env : - os.putenv ("PATH", env + ";" + mingw) - - cwd = os.getcwd () - os.chdir (path) - - py = sys.executable.replace ("pythonw.exe", "python.exe") - if sys.platform == "win32" : - cmd = "%s setup.py build_ext --inplace -c mingw32" % (py) - else : cmd = "%s setup.py build_ext --inplace" % (py) - child_stdin, stdout, child_stderr = os.popen3 (cmd) - res = stdout.read () - err = child_stderr.read () - stdout.close () - - os.chdir (cwd) - - if len (err) > 0 : - message = "\nOUTPUT:\n" + res + "\n\n" - message += "ERR:\n" + err - if "error" in err : - message += "unable to compile %s (resa %s)\n%s" % (name, resa, message) - print (message) - raise ImportError (message) - else : - print (message) - - mod = __import__ (mfile) - return mod - - else : - mfile = mod - mod = __import__ (mfile) - return mod - -if __name__ == "__main__" : - sample_module = import_c_module ("sample_module", cpp = True) - print sample_module - - print sample_module.exemple("e") - print sample_module.exemple2() \ No newline at end of file diff --git a/_todo/programme/integrale.py b/_todo/programme/integrale.py deleted file mode 100644 index 3f94aedd..00000000 --- a/_todo/programme/integrale.py +++ /dev/null @@ -1,14 +0,0 @@ -import random # import du module random : simulation du hasard -import math # import du module math : fonctions mathmatiques - -def integrale_monte_carlo (a,b,f,n) : - somme = 0.0 - for i in range (0,n) : - x = random.random () * (b-a) + a - y = f(x) - somme += f(x) - return somme / n - -def racine (x) : return math.sqrt (x) - -print integrale (0,1,racine,100000) \ No newline at end of file diff --git a/_todo/programme/interface_exemple.py b/_todo/programme/interface_exemple.py deleted file mode 100644 index 97463fe1..00000000 --- a/_todo/programme/interface_exemple.py +++ /dev/null @@ -1,49 +0,0 @@ -import Tkinter as T -root = T.Tk () - - -l = T.Label (text = "lkfjhsdfkds") -l.pack () - -b = T.Button () -b.pack () - -e = T.Entry () -e.pack () -e.insert (0, "texte") -print "e = ", e.get () - -t = T.Text () -t.pack () -t.config (width = 100, height = 10) - -i = T.IntVar () -c = T.Checkbutton (text = "coche", variable = i) -c.pack () -i.set (1) - -j = T.IntVar () -r1 = T.Radiobutton (text = "option1", variable = j, value = 1) -r2 = T.Radiobutton (text = "option2", variable = j, value = 2) -r3 = T.Radiobutton (text = "option3", variable = j, value = 2) -j.set (2) -r1.pack () -r2.pack () -r3.pack () - -l = T.Listbox () -l.pack (side = T.RIGHT) -l.insert (0, "ligne") -l.insert (1, "colonne") - -im = T.PhotoImage (file = "chal_mono.GIF") -b.config (image = im) - -def affiche () : - t.insert ("0.0", "bravo") - s = t.get ("0.0", "end") - print s - -b.config (command = affiche) - -root.mainloop () \ No newline at end of file diff --git a/_todo/programme/listebar.py b/_todo/programme/listebar.py deleted file mode 100644 index 845aa40c..00000000 --- a/_todo/programme/listebar.py +++ /dev/null @@ -1,18 +0,0 @@ -# -*- coding: utf-8 -*- -import tkinter -import tkinter.scrolledtext -root = tkinter.Tk () - -o = tkinter.scrolledtext.ScrolledText (root) -for k in range (0,100) : - o.insert (tkinter.END, "ligne " + str (k)) -o.pack () - -def print_file () : # voir chapitre sur les événements - print (o.selection_get ()) # idem - -b = tkinter.Button (root, text = "print") -b.config (command = print_file) # idem -b.pack () - -root.mainloop () # idem \ No newline at end of file diff --git a/_todo/programme/listst.py b/_todo/programme/listst.py deleted file mode 100644 index 0d20c881..00000000 --- a/_todo/programme/listst.py +++ /dev/null @@ -1,26 +0,0 @@ -# -*- coding: utf-8 -*- -import tkinter - -class MaListbox(tkinter.Listbox): - def __init__(self, master = None, cnf=None, **kw): - if cnf is None: - cnf = {} - tkinter.Listbox.__init__(self, master, cnf, **kw) - self.bind("", self.mouvement) - self.pos = None # mémoire l'ancienne position du curseur - def mouvement(self, ev): - pos = self.nearest(ev.y) # nouvelle position du curseur - if pos < 0 or pos >= self.size(): return - if self.pos != pos: - if self.pos != None: self.itemconfig(self.pos, bg='') - self.itemconfigure(pos, bg='gray') - self.pos = pos - -root = tkinter.Tk() -b = MaListbox() -b.insert("end", "ligne 1") -b.insert("end", "ligne 2") -b.insert("end", "ligne 3") -b.pack() -b.focus_set() -root.mainloop() \ No newline at end of file diff --git a/_todo/programme/mail.py b/_todo/programme/mail.py deleted file mode 100644 index ddb823d9..00000000 --- a/_todo/programme/mail.py +++ /dev/null @@ -1,39 +0,0 @@ -import smtplib -from email.mime.multipart import MIMEMultipart -from email.mime.base import MIMEBase -from email.mime.text import MIMEText -from email.utils import formatdate -from email import encoders -import os - - -def envoyer_mail (aqui, sujet, contenu, files = []): - de = "email de l'auteur" - msg = MIMEMultipart() - msg['From'] = de - msg['To'] = aqui - msg['Date'] = formatdate (localtime = True) - msg['Subject'] = sujet - - msg.attach(MIMEText(contenu)) - for file in files: - part = MIMEBase('application', 'octet-stream') - with open(file,'rb') as f: - content = f.read() - part.set_payload(content) - encoders.encode_base64(part) - part.add_header('Content-Disposition', \ - f'attachment; filename="{os.path.basename(file)}"') - msg.attach(part) - - smtp = smtplib.SMTP("smtp.gmail.com", 587) - smtp.ehlo() - smtp.starttls() - smtp.ehlo() - smtp.login("login", "mot_de_passe") - - smtp.sendmail(de, aqui, msg.as_string()) - smtp.close() - - -envoyer_mail("destinataire", "sujet","contenu", ["mail.py"]) diff --git a/_todo/programme/matrice.py b/_todo/programme/matrice.py deleted file mode 100644 index 0982ff6f..00000000 --- a/_todo/programme/matrice.py +++ /dev/null @@ -1,58 +0,0 @@ -# coding: latin-1 -s = "case11;case12;case13|case21;case22;case23" -ligne = s.split ("|") -mat = [ l.split (";") for l in ligne ] -print mat -ligne = [ ";".join (l) for l in mat ] -s = "|".join (ligne) -print s - -def fonction (x) : return x*x - -li = [ 0, 434, 43, 6436, 5 ] -m = 0 -for i in range (0, len (li)) : - if li [m] < li [i] : m = i -print li [m] - - -k = [ (li [i],i) for i in range (0, len (li)) ] -print k -print max (k) - -def recherche (li, c) : - for i in range (0, len (li)) : - if li [i] == c : return i - return -1 -print recherche (li, 43) - -for i in range (0, len (li)) : - pos = i - for j in range (i+1, len (li)) : - if li [j] < li [pos] : pos = j - ech = li [pos] - li [pos] = li [i] - li [i] = ech -print li - -li = ["un", "deux", "un", "trois"] -d = { } -for l in li : - if l not in d : d [l] = 1 - else : d [l] += 1 -print d # affiche {'un': 2, 'trois': 1, 'deux': 1} - -mat = [ [1,1,1], [2,2,2], [1,1,1]] -d = { } -for l in mat : - k = str (l) - if k not in d : d [k] = 1 - else : d [k] += 1 -print d # affiche {'[1, 1, 1]': 2, '[2, 2, 2]': 1} - -li = ["un", "deux", "un", "trois"] -d = { } -for i in range (0, len (li)) : - if li [i] not in d : d [li [i]] = [ i ] - else : d [li [i]].append (i) -print d # affiche {'un': [0, 2], 'trois': [3], 'deux': [1]} diff --git a/_todo/programme/mesmodules/__init__.py b/_todo/programme/mesmodules/__init__.py deleted file mode 100644 index d6b8f750..00000000 --- a/_todo/programme/mesmodules/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ -print "y" -import part1.niveaudeux \ No newline at end of file diff --git a/_todo/programme/mesmodules/extension.py b/_todo/programme/mesmodules/extension.py deleted file mode 100644 index dee9c5cd..00000000 --- a/_todo/programme/mesmodules/extension.py +++ /dev/null @@ -1 +0,0 @@ -"""mesmodules/extension.py""" \ No newline at end of file diff --git a/_todo/programme/mesmodules/part1/__init__.py b/_todo/programme/mesmodules/part1/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/_todo/programme/mesmodules/part1/niveaudeux.py b/_todo/programme/mesmodules/part1/niveaudeux.py deleted file mode 100644 index 44703e9d..00000000 --- a/_todo/programme/mesmodules/part1/niveaudeux.py +++ /dev/null @@ -1 +0,0 @@ -"""mesmodules/part1/niveaudeux.py""" \ No newline at end of file diff --git a/_todo/programme/mesmodules/part2/__init__.py b/_todo/programme/mesmodules/part2/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/_todo/programme/mesmodules/part2/niveaudeuxbis.py b/_todo/programme/mesmodules/part2/niveaudeuxbis.py deleted file mode 100644 index cb34c775..00000000 --- a/_todo/programme/mesmodules/part2/niveaudeuxbis.py +++ /dev/null @@ -1 +0,0 @@ -"""mesmodules/part2/niveaudeuxbis.py""" \ No newline at end of file diff --git a/_todo/programme/modinit.py b/_todo/programme/modinit.py deleted file mode 100644 index 484464a4..00000000 --- a/_todo/programme/modinit.py +++ /dev/null @@ -1,6 +0,0 @@ -import mesmodules.extension -#import mesmodules.part1.niveaudeux -import mesmodules.part2.niveaudeuxbis - -help (mesmodules.part1.niveaudeux) - diff --git a/_todo/programme/module_exemple.py b/_todo/programme/module_exemple.py deleted file mode 100644 index be2a8b48..00000000 --- a/_todo/programme/module_exemple.py +++ /dev/null @@ -1,13 +0,0 @@ -# coding: latin-1 -"""exemple de module, aide associe""" - -exemple_variable = 3 - -def exemple_fonction () : - """exemple de fonction""" - return 0 - -class exemple_classe : - """exemple de classe""" - def __str__ (self) : - return "exemple_classe" \ No newline at end of file diff --git a/_todo/programme/new_delete.py b/_todo/programme/new_delete.py deleted file mode 100644 index 857f4737..00000000 --- a/_todo/programme/new_delete.py +++ /dev/null @@ -1,21 +0,0 @@ -class CreationDestruction (object) : - - def __init__ (self) : - print("constructeur") - - def __new__ (self) : - print("__new__") - return object.__new__ (self) - - def __del__ (self) : - print("__del__") - -print("a") -m = CreationDestruction () -print("b") -m2 = m -print("c") -del m -print("d") -del m2 -print("e") diff --git a/_todo/programme/odbc_1.py b/_todo/programme/odbc_1.py deleted file mode 100644 index ff4ab5b1..00000000 --- a/_todo/programme/odbc_1.py +++ /dev/null @@ -1,14 +0,0 @@ -import odbc -cx = odbc.odbc("mysqlperso") -cur = cx.cursor() - -cur.execute (""" -CREATE TABLE ELEVE ( - num integer primary key, - nom varchar (30), - prenom varchar (30), - date date, - adresse varchar (100), - codepays integer, - classe integer) -""") \ No newline at end of file diff --git a/_todo/programme/odbc_2.py b/_todo/programme/odbc_2.py deleted file mode 100644 index 6123e48e..00000000 --- a/_todo/programme/odbc_2.py +++ /dev/null @@ -1,9 +0,0 @@ -import odbc -cx = odbc.odbc("mysqlperso") -cur = cx.cursor() - -cur.execute ("""INSERT INTO ELEVE (num, nom, prenom, date, adresse, codepays, classe) - VALUES (1, 'dupre', 'xavier', '1975-08-11', '---- paris', 33, 19) ;""") -cur.execute ("""INSERT INTO ELEVE (num, nom, prenom, date, adresse, codepays, classe) - VALUES (2, 'dupre', 'gilles', '1946-12-24', '---- charleville', 33, 56) ;""") -cx.commit () \ No newline at end of file diff --git a/_todo/programme/odbc_3.py b/_todo/programme/odbc_3.py deleted file mode 100644 index 266f0560..00000000 --- a/_todo/programme/odbc_3.py +++ /dev/null @@ -1,8 +0,0 @@ -# coding: latin-1 -import odbc -cx = odbc.odbc("mysqlperso") -cur = cx.cursor() - -cur.execute ("SELECT * from ELEVE") -for row in cur.fetchall () : - print [ str (r) for r in row ] \ No newline at end of file diff --git a/_todo/programme/pi.py b/_todo/programme/pi.py deleted file mode 100644 index 261d10a5..00000000 --- a/_todo/programme/pi.py +++ /dev/null @@ -1,14 +0,0 @@ -# coding: latin-1 -import random -import math - -somme = 0 -nb = 1000000 -for i in range (0,nb) : - x = random.random () # nombre alatoire entre [0,1] - y = random.random () - r = math.sqrt (x*x + y*y) # racine carre - if r <= 1 : somme += 1 - -print "estimation ", 4 * float (somme) / nb -print "PI = ", math.pi \ No newline at end of file diff --git a/_todo/programme/rawinput.py b/_todo/programme/rawinput.py deleted file mode 100644 index 7b63f5bb..00000000 --- a/_todo/programme/rawinput.py +++ /dev/null @@ -1,16 +0,0 @@ -import Tkinter -def question (legende) : - reponse = [""] - root = Tkinter.Tk () - root.title ("pseudo raw_input") - Tkinter.Label (text = legende).pack (side = Tkinter.LEFT) - s = Tkinter.Entry (text= "def", width=80) - s.pack (side = Tkinter.LEFT) - def rget () : - reponse [0] = s.get () - root.destroy () - Tkinter.Button (text = "ok", command = rget).pack (side = Tkinter.LEFT) - root.mainloop () - return reponse [0] - -print "reponse ", question ("texte de la question") \ No newline at end of file diff --git a/_todo/programme/sample_isinstance.py b/_todo/programme/sample_isinstance.py deleted file mode 100644 index 8dc6dc6d..00000000 --- a/_todo/programme/sample_isinstance.py +++ /dev/null @@ -1,21 +0,0 @@ -def fonction_somme_list (ens) : - r = "list " - for e in ens : r += e - return r - -def fonction_somme_dict (ens) : - r = "dict " - for k,v in ens.items () : r += v - return r - -def fonction_somme (ens) : - if isinstance (ens, dict) : return fonction_somme_dict (ens) - elif isinstance (ens, list) : return fonction_somme_list (ens) - else : return "erreur" - -li = ["un", "deux", "trois"] -di = {1:"un", 2:"deux", 3:"trois"} -tu = ("un", "deux", "trois") -print(fonction_somme(li)) # affiche list undeuxtrois -print(fonction_somme(di)) # affiche dict undeuxtrois -print(fonction_somme(tu)) # affiche erreur \ No newline at end of file diff --git a/_todo/programme/sample_module.cpp b/_todo/programme/sample_module.cpp deleted file mode 100644 index 9f8d593f..00000000 --- a/_todo/programme/sample_module.cpp +++ /dev/null @@ -1,55 +0,0 @@ -#include -#include - -/** -Une fois importe, le module definit deux fonctions : - - exemple qui prend une chaine en argument et retourne 0 - - exemple2 qui leve une exception creee pour l'occasion -*/ - - - -static PyObject* ExempleErreur; - -static PyObject* exemple (PyObject* self, PyObject* args) -{ - const char* chaine; - - if (!PyArg_ParseTuple (args, "s", &chaine)) - return NULL; - - return Py_BuildValue("i", 2); -} - -static PyObject* exemple2(PyObject* self, PyObject* args) -{ - //const char* chaine ; - - PyErr_SetString (ExempleErreur, "Exemple de leve d'erreur") ; - return NULL; -} - -//////////////////////////////////////////////////// -//////////// export des fonctions ////////////////// -//////////////////////////////////////////////////// - -const char * module_name = "sample_module" ; -char buffer [100] ; - -static PyMethodDef fonctions [] = { - {"exemple", exemple, METH_VARARGS, "Un commentaire"}, - {"exemple2", exemple2, METH_VARARGS, "Une methode levant une exception"}, - {NULL, NULL, 0, NULL} -} ; - -PyMODINIT_FUNC initsample_module(void) -{ - PyObject* m ; - m = Py_InitModule (module_name, fonctions) ; - - - sprintf (buffer, "%s.Exception", module_name) ; - ExempleErreur = PyErr_NewException(buffer, NULL, NULL) ; - Py_INCREF (ExempleErreur) ; - PyModule_AddObject (m, "Exception", ExempleErreur) ; -} diff --git a/_todo/programme/selection_file.py b/_todo/programme/selection_file.py deleted file mode 100644 index 62f2e9ef..00000000 --- a/_todo/programme/selection_file.py +++ /dev/null @@ -1,174 +0,0 @@ -# -*- coding: utf-8 -*- -"""module contenant une boîte de dialogue permettant -de sélectionner un fichier ou un répertoire, -il utilise l'interface Tkinter""" -import tkinter -import os.path -import os - -class FileSelection(object) : - """classe permettant de sélectionner un fichier - ou un répertoire à travers une boîte de dialogue""" - - def __init__(self, parent, titre = "Sélection de fichier", \ - chemin = None, file = True, exist= True) : - """ - initialise la classe - - @param parent parent - @param titre titre de la fenêtre - @param chemin fichier ou répertoire par défaut - @param file True : fichier, False : répertoire - @param exist True : le répertoire ou le fichier - sélectionné doit exister""" - self.parent = parent - self.titre = titre - self.chemin = chemin - self.file = file - self.exist = exist - - if self.chemin is None: - self.chemin = os.getcwd() - - def get_list(self) : - """retourne la liste des fichiers et des répertoires(2 listes), - répertoires seulement et [] si self.file == False""" - if os.path.isdir(self.chemin): - listf = os.listdir(self.chemin) - else : - ch, fi = os.path.split(self.chemin) - listf = os.listdir(ch) - - lifile = [] - lidir = [] - for l in listf: - if os.path.isdir(self.chemin + "\\" + l) : - lidir.append(l) - elif self.file: - lifile.append(l) - - lidir.sort() - lifile.sort() - return lidir, lifile - - def run(self) : - """lance la boîte de dialogue et retourne la chaîne sélectionnée""" - if self.parent is None: - top = tkinter.Toplevel() - top.wm_title(self.titre) - else: - top = self.parent - self.resultat = False - - fli = tkinter.Frame(top) - scrollbar = tkinter.Scrollbar(fli) - li = tkinter.Listbox(fli, width = 120, height = 15, \ - yscrollcommand = scrollbar.set) - scrollbar.config(command = li.yview) - ch = tkinter.Entry(top, width = 120) - f = tkinter.Frame(top) - prec = tkinter.Button(f, text = "Précédent") - suiv = tkinter.Button(f, text = "Entre") - annul = tkinter.Button(f, text = "Annuler") - ok = tkinter.Button(f, text = "Ok") - - prec.grid(column = 0, row = 0) - suiv.grid(column = 1, row = 0) - annul.grid(column = 3, row = 0) - ok.grid(column = 4, row = 0) - li.pack(side = tkinter.LEFT) - scrollbar.pack(side = tkinter.RIGHT, fill = tkinter.Y) - fli.pack() - ch.pack() - f.pack() - - def update_chemin() : - """mise à jour du chemin dans la boîte de dialogue""" - s = ch.get() - ch.delete(0, len(s)) - ch.insert(0, self.chemin) - - def update_list() : - """mise à jour de la liste des fichiers et répertoires - à partir de la chaîne dans la boîte de dialogue""" - self.chemin = ch.get() - lidir, lifile = self.get_list() - li.delete(0, tkinter.END) - if len(lidir) > 0 : - for l in lidir: - li.insert(tkinter.END, "+ "+ l) - if len(lifile) > 0: - for l in lifile: - li.insert(tkinter.END, " "+ l) - - def precedent() : - """passe au répertoire précédent""" - if os.path.isdir(self.chemin) : - ch, last = os.path.split(self.chemin) - self.chemin = ch - else : - ch, last = os.path.split(self.chemin) - ch, last = os.path.split(ch) - self.chemin = ch - update_chemin() - update_list() - - def suivant() : - """rentre dans un répertoire""" - sel = ch.get() - if os.path.isdir(sel) : - self.chemin = sel - update_chemin() - update_list() - - def update_sel() : - """mise à jour de la chaîne de caractères - dans la boîte de dialogue à partir de la ligne - sélectionnée dans la liste""" - li.after(200, update_sel) - sel = li.curselection() - if len(sel) == 1 : - t = li.get(sel [0]) - c = self.chemin + "\\" + t [2:len(t)] - s = ch.get() - ch.delete(0, len(s)) - ch.insert(0, c) - - def annuler() : - """annule la recherche""" - self.resultat = False - top.destroy() - top.quit() - - def accepter() : - """accepte le résultat""" - self.resultat = True - self.chemin = ch.get() - top.destroy() - top.quit() - - prec.config(command = precedent) - suiv.config(command = suivant) - annul.config(command = annuler) - ok.config(command = accepter) - - update_chemin() - update_list() - update_sel() - ch.focus_set() - - if self.parent is None: - top.mainloop() - - -if __name__ == "__main__" : - - def run(root) : - r = FileSelection(root, "sélection d'un fichier", "c:\\") - s = r.run() - return r - - root = tkinter.Tk() - win = run(root) - root.mainloop() - print("fichier sélectionné ", win.chemin) diff --git a/_todo/programme/selection_file_print.py b/_todo/programme/selection_file_print.py deleted file mode 100644 index 39d6956f..00000000 --- a/_todo/programme/selection_file_print.py +++ /dev/null @@ -1,131 +0,0 @@ -# coding: latin-1 -"""module permettant de slection un fichier, -fonctionne sans interface graphique""" -import os.path -import os - -class FileSelection (object) : - """classe permettant de slectionner un fichier - sans bote de dialogue""" - - def __init__ (self, titre = "Slection de fichier", \ - chemin = None, file = True, exist= True) : - """initialise la classe - @param titre titre de la fentre - @param chemin fichier ou rpertoire par dfaut - @param file True : fichier, False : rpertoire - @param exist True : le rpertoire ou le fichier - slectionn doit exister""" - self.titre = titre - self.chemin = chemin - self.file = file - self.exist = exist - - if self.chemin == None : self.chemin = os.getcwd () - - def get_list (self) : - """retourne la liste des fichiers et des rpertoires (2 listes), - rpertoires seulement et [] si self.file == False""" - if os.path.isdir (self.chemin) : - list = os.listdir (self.chemin) - else : - ch,fi = os.path.split (self.chemin) - list = os.listdir (ch) - - lifile = [] - lidir = [] - for l in list : - if os.path.isdir (self.chemin + "\\" + l) : - lidir.append (l) - elif self.file : - lifile.append (l) - - lidir.sort () - lifile.sort () - return lidir, lifile - - def run (self) : - """lance la slection d'un fichier""" - - def update_chemin () : - """mise jour du chemin dans la bote de dialogue""" - pass - - def update_list () : - """mise jour de la liste des fichiers et rpertoires - partir de la chane dans la bote de dialogue""" - lidir, lifile = self.get_list () - print " rpertoires" - for l in lidir : print " ", l - print " fichiers" - for l in lifile : print " ", l - - def precedent () : - """passe au rpertoire prcdent""" - if os.path.isdir (self.chemin) : - ch, last = os.path.split (self.chemin) - self.chemin = ch - else : - ch, last = os.path.split (self.chemin) - ch, last = os.path.split (ch) - self.chemin = ch - #update_chemin () - #update_list () - - def suivant (sel) : - """rentre dans un rpertoire""" - sel2 = self.chemin + "\\" + sel - if os.path.isdir (sel2) : - self.chemin = sel2 - #update_chemin () - #update_list () - - def update_sel () : - """mise jour de la chane de caractres - dans la bote de dialogue partir de la ligne - slectionne dans la liste""" - pass - - def annuler () : - """annule la recherche""" - self.resultat = False - - def accepter () : - """accepte le rsultat""" - self.resultat = True - - while True : - print "chemin actuel : ", self.chemin - print "liste des fichiers et rpertoire inclus" - update_list () - print "quelle action : Prcdent, Entre, Annuler, " \ - "Ok (entrer la lettre majuscule)\n" - str = raw_input ("") - if str == "P" : - precedent () - elif str == "E" : - sel = raw_input ("entrer un nom de rpertoire\n") - suivant (sel) - elif str == "A" : - annuler () - break # on sort de la boucle - elif str == "O" : - print "Entrer un nom de fichier" - str = raw_input ("\n") - self.chemin += "\\" + str - accepter () - break # on sort de la boucle - else : - print "choix incomprhensible" - print "--------------------------------------------" - - if self.resultat : return self.chemin - else : return None - - -if __name__ == "__main__" : - r = FileSelection ("slection d'un fichier", "c:\\") - s = r.run () - print "fichier slectionn ", s - - \ No newline at end of file diff --git a/_todo/programme/selection_file_tix.py b/_todo/programme/selection_file_tix.py deleted file mode 100644 index afc94bd6..00000000 --- a/_todo/programme/selection_file_tix.py +++ /dev/null @@ -1,14 +0,0 @@ -import tkinter.tix as tix -root = tix.Tk () - -o = tix.FileSelectBox (root) -o.pack () - -def print_file () : - print(o.cget ("value")) - -b = tix.Button (root, text = "print") -b.config (command = print_file) -b.pack () - -root.mainloop () \ No newline at end of file diff --git a/_todo/programme/setup.py b/_todo/programme/setup.py deleted file mode 100644 index de5cc9bf..00000000 --- a/_todo/programme/setup.py +++ /dev/null @@ -1,52 +0,0 @@ -# coding: windows-1251 -__rev_id__ = """setup.py,v 1.0 16/03/2008""" - -import sys -from distutils.core import setup - -DESCRIPTION = 'Python Sample' - -LONG_DESCRIPTION = \ -"This project is a skeleton for a Python library written in C++ under Windows." - -CLASSIFIERS = \ -[ - 'Operating System :: Win32', - 'Programming Language :: C++', - 'License :: none', - 'Development Status :: 0.1', - 'Intended Audience :: Developers', - 'Topic :: Software Development :: Libraries :: Python Modules', - 'Topic :: Python :: Sample' -] - -KEYWORDS = 'Python Sample' - -setup(name = 'PythonSample', - version = '0.1', - author = 'Xavier Dupr', - author_email = 'webmaster@site.com', - url = 'http://www.xavierdupre.fr/', - download_url='http://www.xavierdupre.fr/', - description = DESCRIPTION, - long_description = LONG_DESCRIPTION, - license = 'GNU 2.0', - platforms = 'Win 32', - packages = ['PythonSample'], - keywords = KEYWORDS, - classifiers = CLASSIFIERS - ) - -import distutils.sysconfig as SH -to = SH.get_python_lib () + "/PythonSample" -fr = "PythonSample" - -# pour copier des fichiers supplmentaires lors de l'installation -# python setup.py install -import shutil -import os -li = os.listdir (fr) -for f in li : - if ".dll" in f or ".exe" in f or ".chm" in f : - print "copy of file ", f - shutil.copy (fr + "/" + f, to + "/" + f) \ No newline at end of file diff --git a/_todo/programme/sql_1.py b/_todo/programme/sql_1.py deleted file mode 100644 index 825cdb46..00000000 --- a/_todo/programme/sql_1.py +++ /dev/null @@ -1,14 +0,0 @@ -import sqlite3 as SQL -cx = SQL.connect("madatabase.db3") -cur = cx.cursor() - -cur.execute (""" -CREATE TABLE ELEVE ( - num integer primary key, - nom varchar (30), - prenom varchar (30), - date date, - adresse varchar (100), - codepays integer, - classe integer) -""") \ No newline at end of file diff --git a/_todo/programme/sql_2.py b/_todo/programme/sql_2.py deleted file mode 100644 index f898e47c..00000000 --- a/_todo/programme/sql_2.py +++ /dev/null @@ -1,9 +0,0 @@ -import sqlite3 as SQL -cx = SQL.connect("madatabase.db3") -cur = cx.cursor() - -cur.execute ("""INSERT INTO ELEVE (nom, prenom, date, adresse, codepays, classe) - VALUES ('dupre', 'xavier', '11/08/1975', '---- paris', 33, 19) ;""") -cur.execute ("""INSERT INTO ELEVE (nom, prenom, date, adresse, codepays, classe) - VALUES ('dupre', 'gilles', '24/12/1946', '---- charleville', 33, 56) ;""") -cx.commit () \ No newline at end of file diff --git a/_todo/programme/sql_3.py b/_todo/programme/sql_3.py deleted file mode 100644 index 666fa19d..00000000 --- a/_todo/programme/sql_3.py +++ /dev/null @@ -1,63 +0,0 @@ -# coding: latin-1 -import sqlite3 as SQL -cx = SQL.connect("madatabase.db3") -cur = cx.cursor() - -if False : - #cur.execute ("INSERT INTO PAYS (codepays, pays) VALUES (33, 'France')") - #cur.execute ("INSERT INTO PAYS (codepays, pays) VALUES (44, 'Royaume-Uni')") - - #cur.execute ("INSERT INTO MATIERES (matiere, num) VALUES ('franais', 1)") - #cur.execute ("INSERT INTO MATIERES (matiere, num) VALUES ('mathmatiques', 2)") - #cx.commit() - - if False : - cur.execute ("INSERT INTO NOTE (nume,numm,note) VALUES (1,1,12)") - cur.execute ("INSERT INTO NOTE (nume,numm,note) VALUES (1,1,14)") - cur.execute ("INSERT INTO NOTE (nume,numm,note) VALUES (1,2,16)") - cur.execute ("INSERT INTO NOTE (nume,numm,note) VALUES (1,2,8)") - cur.execute ("INSERT INTO NOTE (nume,numm,note) VALUES (1,2,12)") - - cur.execute ("INSERT INTO NOTE (nume,numm,note) VALUES (2,1,8)") - cur.execute ("INSERT INTO NOTE (nume,numm,note) VALUES (2,1,9)") - cur.execute ("INSERT INTO NOTE (nume,numm,note) VALUES (2,2,11)") - cur.execute ("INSERT INTO NOTE (nume,numm,note) VALUES (2,2,8)") - cur.execute ("INSERT INTO NOTE (nume,numm,note) VALUES (2,2,12)") - - cx.commit () - - - import sqlite3 as SQL - cx = SQL.connect("madatabase.db3") - cur = cx.cursor() - cur.execute("select * from NOTE") - l = [] - for row in cur.fetchall(): - l.append (row) - print row - print l - -print "-------------" -cur.execute ("select * from ELEVE") -for row in cur.fetchall(): print row - -print "-------------" -req = """ -SELECT nom,prenom,AVG(note) FROM ELEVE,NOTE -WHERE num = nume and - numm IN ( SELECT num FROM MATIERES WHERE matiere = 'franais' ) -GROUP BY nume -""" -cur.execute (req) -for row in cur.fetchall(): print row - -print "-------------" -req = """ -SELECT nom,prenom,AVG(note) FROM ELEVE,NOTE -WHERE num = nume and - numm IN ( SELECT num FROM MATIERES WHERE matiere = 'franais' ) -GROUP BY nume -HAVING AVG(note) >= 10 -""" -cur.execute (req) -for row in cur.fetchall(): print row diff --git a/_todo/programme/synchro.py b/_todo/programme/synchro.py deleted file mode 100644 index 114debcc..00000000 --- a/_todo/programme/synchro.py +++ /dev/null @@ -1,16 +0,0 @@ -# coding: latin-1 -import glob -import shutil -def copie_repertoire (rep1, rep2) : - """copie tous les fichiers d'un rpertoire rep1 vers un autre rep2""" - li = glob.glob (rep1 + "/*.*") - for l in li : - to = l.replace (rep1, rep2) # nom du fichier copi - # (on remplace rep1 par rep2) - shutil.copy (l, to) - -import sys - # sys.argv [0] --> nom du programme (ici, synchro.py) -rep1 = sys.argv [1] # rcupration du premier paramtre -rep2 = sys.argv [2] # rcupration du second paramtre -copie_repertoire (rep1, rep2) \ No newline at end of file diff --git a/_todo/programme/test_pickle.py b/_todo/programme/test_pickle.py deleted file mode 100644 index 03ed7c6b..00000000 --- a/_todo/programme/test_pickle.py +++ /dev/null @@ -1,24 +0,0 @@ -# -*- coding: utf-8 -*- -import pickle -import copy - -class Test : - def __init__ (self) : - self.chaine = "a" - self.entier = 5 - self.tuple = { "h":1, 5:"j" } - - def __str__(self): - return "c='{0}' e={1} t={2}".format(self.chaine, self.entier, self.tuple) - -t = Test () - -f = open('data.bin', 'wb') # lecture -pickle.dump (t, f) -f.close() - -f = open('data.bin', 'rb') # criture -t = pickle.load (f) -f.close() - -print(t) \ No newline at end of file diff --git a/_todo/programme/test_pickle2.py b/_todo/programme/test_pickle2.py deleted file mode 100644 index 5219e967..00000000 --- a/_todo/programme/test_pickle2.py +++ /dev/null @@ -1,35 +0,0 @@ -#-*- coding: utf-8 -*- -import pickle -import copy - -class Test : - def __init__ (self) : - self.x = 5 - self.y = 3 - self.calcule_norme () # attribut calcul - def calcule_norme (self) : - self.n = (self.x ** 2 + self.y ** 2) ** 0.5 - def __getstate__ (self) : - """conversion de Test en un dictionnaire""" - d = copy.copy (self.__dict__) - del d ["n"] # attribut calcul, on le sauve pas - return d - def __setstate__ (self,dic) : - """conversion d'un dictionnaire dic en Test""" - self.__dict__.update (dic) - self.calcule_norme () # attribut calcul - - def __str__(self): - return "x={0} y={1} n={2}".format(self.x, self.y, self.n) - -t = Test () - -f = open('data.bin', 'wb') # lecture -pickle.dump (t, f) -f.close() - -f = open('data.bin', 'rb') # criture -t = pickle.load (f) -f.close() - -print(t) \ No newline at end of file diff --git a/_todo/programme/testdoc1.py b/_todo/programme/testdoc1.py deleted file mode 100644 index 8cf145f9..00000000 --- a/_todo/programme/testdoc1.py +++ /dev/null @@ -1,19 +0,0 @@ -# coding: latin-1 -def addition (l1, l2): - """cette fonction additionne deux listes - >>> addition ( [], []) - [] - >>> addition ( [1,2], [3,-1]) - [4, 1] - """ - res = [] - for i in range (0, len (l1)) : - res.append ( l1 [i] + l2 [i] ) - return res - -def _test(): - import doctest - doctest.testmod() - -if __name__ == "__main__": - _test() \ No newline at end of file diff --git a/_todo/programme/testdoc2.py b/_todo/programme/testdoc2.py deleted file mode 100644 index b792185a..00000000 --- a/_todo/programme/testdoc2.py +++ /dev/null @@ -1,25 +0,0 @@ -# coding: latin-1 -def addition (l1, l2): - """cette fonction additionne deux listes - >>> addition ( [], []) - [] - >>> addition ( [1,2], [3,-1]) - [4, 1] - >>> addition ( [1], [3,-1]) - Traceback (most recent call last): - ... - Exception: listes de tailles diffrentes - """ - if len (l1) != len (l2) : - raise Exception ("listes de tailles diffrentes") - res = [] - for i in range (0, len (l1)) : - res.append ( l1 [i] + l2 [i] ) - return res - -def _test(): - import doctest - doctest.testmod() - -if __name__ == "__main__": - _test() \ No newline at end of file diff --git a/_todo/programme/testunit1.py b/_todo/programme/testunit1.py deleted file mode 100644 index a108153b..00000000 --- a/_todo/programme/testunit1.py +++ /dev/null @@ -1,9 +0,0 @@ -# coding: latin-1 -def addition (l1, l2): - """cette fonction additionne deux listes""" - if len (l1) != len (l2) : - raise Exception ("listes de tailles diffrentes") - res = [] - for i in range (0, len (l1)) : - res.append ( l1 [i] + l2 [i] ) - return res \ No newline at end of file diff --git a/_todo/programme/testunit2.py b/_todo/programme/testunit2.py deleted file mode 100644 index 13dbc224..00000000 --- a/_todo/programme/testunit2.py +++ /dev/null @@ -1,34 +0,0 @@ -# coding: latin-1 -import unittest -from testunit1 import * - -class TestCase_for_addition (unittest.TestCase): - - def test_addition_vide (self) : - """test_addition_vide : on vrifie que l'addtion de deux listes retourne une liste vide""" - assert [] == addition ( [], [] ) - - def test_addition (self) : - """test_addition : test de [1,2] + [3,-1] != [4,1]""" - l1 = [1,2] - l2 = [3,-1] - l = addition (l1, l2) - assert l [0] == 4 and l [1] == 1 - - def test_exception (self) : - """test_exception : on vrifie que l'addition - de deux listes de tailles diffrentes gnre une exception""" - l1 = [1] - l2 = [3,-1] - try : - l = addition (l1, l2) # la fonction doit lancer une exception - assert False # si elle ne le fait pas, alors le test a achou - except Exception, e : - # on vrifie que l'exception gnre n'est pas due l'instruction assert False - assert str (e.__class__ .__name__) != "AssertionError" - # on vrifie ici que le message de l'exception est celui attendu - assert str (e) == "listes de tailles diffrentes" - -if __name__ == "__main__" : - # on lance les tests - unittest.main () \ No newline at end of file diff --git a/_todo/programme/thread1.py b/_todo/programme/thread1.py deleted file mode 100644 index c3f357a1..00000000 --- a/_todo/programme/thread1.py +++ /dev/null @@ -1,24 +0,0 @@ -# coding: cp1252 -import threading, time - -class MonThread (threading.Thread) : - def __init__ (self, jusqua) : # jusqua = donnée supplémentaire - threading.Thread.__init__(self)# ne pas oublier cette ligne - # (appel au constructeur de la classe mère) - self.jusqua = jusqua # donnée supplémentaire ajoutée à la classe - - def run (self) : - for i in range (0, self.jusqua) : - print("thread ", i) - time.sleep (0.08) # attend 100 millisecondes sans rien faire - # facilite la lecture de l'affichage - -m = MonThread (10) # crée le thread -m.start () # démarre le thread, - # l'instruction est exécutée en quelques millisecondes - # quelque soit la durée du thread - -for i in range (0,10) : - print("programme ", i) - time.sleep (0.1) # attend 100 millisecondes sans rien faire - # facilite la lecture de l'affichage \ No newline at end of file diff --git a/_todo/programme/thread2.py b/_todo/programme/thread2.py deleted file mode 100644 index 2f4336ef..00000000 --- a/_todo/programme/thread2.py +++ /dev/null @@ -1,23 +0,0 @@ -# coding: cp1252 -import threading, time - -class MonThread (threading.Thread) : - def __init__ (self, jusqua, s) : - threading.Thread.__init__ (self) - self.jusqua = jusqua - self.s = s - - def run (self) : - for i in range (0, self.jusqua) : - print("thread ", self.s, " : ", i) - time.sleep (0.09) - -m = MonThread (10, "A") -m.start () - -m2 = MonThread (10, "B") # cre un second thread -m2.start () # dmarre le thread, - -for i in range (0,10) : - print("programme ", i) - time.sleep (0.1) \ No newline at end of file diff --git a/_todo/programme/thread_attente.py b/_todo/programme/thread_attente.py deleted file mode 100644 index ba260e73..00000000 --- a/_todo/programme/thread_attente.py +++ /dev/null @@ -1,36 +0,0 @@ -# coding: latin-1 -import threading, time - -class MonThread (threading.Thread) : - def __init__ (self, jusqua) : - threading.Thread.__init__ (self) - self.jusqua = jusqua - self.etat = False # l'tat du thread est soit False ( l'arrt) - # soit True (en marche) - - def run (self) : - self.etat = True # on passe en mode marche - for i in range (0, self.jusqua) : - print("thread itration ", i) - time.sleep (0.1) - self.etat = False # on revient en mode arrt - -m = MonThread (10) # cre un thread -m.start () # dmarre le thread, - -print("dbut") - -while m.etat == False : - # on attend que le thread dmarre - time.sleep (0.1) # voir remarque ci-dessous - -while m.etat == True : - # on attend que le thread s'arrte - # il faut introduire l'instruction time.sleep pour temporiser, il n'est pas - # ncessaire de vrifier sans cesse que le thread est toujours en marche - # il suffit de le vrifier tous les 100 millisecondes - # dans le cas contraire, la machine passe son temps vrifier au lieu - # de se consacrer l'excution du thread - time.sleep (0.1) - -print("fin") \ No newline at end of file diff --git a/_todo/programme/thread_attente2.py b/_todo/programme/thread_attente2.py deleted file mode 100644 index 52298519..00000000 --- a/_todo/programme/thread_attente2.py +++ /dev/null @@ -1,24 +0,0 @@ -# coding: latin-1 -import threading, time - -class MonThread (threading.Thread) : - def __init__ (self, jusqua, event) : # event = objet Event - threading.Thread.__init__ (self) # = donne supplmentaire - self.jusqua = jusqua - self.event = event # on garde un accs l'objet Event - - def run (self) : - for i in range (0, self.jusqua) : - print("thread itration ", i) - time.sleep (0.1) - self.event.set () # on indique qu'on a fini : - # on active l'object self.event -print("dbut") - -event = threading.Event () # on cre un objet de type Event -event.clear () # on dsactive l'ojet Event -m = MonThread (10, event) # cre un thread -m.start () # dmarre le thread, -event.wait () # on attend jusqu' ce que l'objet soit activ - # event.wait (0.1) : n'attend qu'un -print("fin") # seulement 1 dizime de seconde \ No newline at end of file diff --git a/_todo/programme/thread_interface.py b/_todo/programme/thread_interface.py deleted file mode 100644 index 6a982ce2..00000000 --- a/_todo/programme/thread_interface.py +++ /dev/null @@ -1,67 +0,0 @@ -# coding: latin-1 -import threading, time, random, copy - -# dfinition du thread -class MonThread (threading.Thread) : - def __init__ (self, win, res) : - threading.Thread.__init__ (self) - self.win = win # on mmorise une rfrence sur la fentre - self.res = res - - def run (self) : - for i in range (0, 10) : - print("thread ", i) - time.sleep (0.1) - - # afin que le thread retourne un rsultat - # self.res dsigne thread_resultat qui reoit un nombre de plus - h = random.randint (0,100) - self.res.append (h) - - # on lance un vnement <> la fentre principale - # pour lui dire que le thread est fini, l'vnement est ensuite - # gr par la boucle principale de messages - # on peut transmettre galement le rsultat lors de l'envoi du message - # en utilisant un attribut de la classe Event pour son propre compte - self.win.event_generate ("<>", x = h) - -thread_resultat = [] - -def lance_thread () : - global thread_resultat - # fonction appele lors de la pression du bouton - # on change la lgnde de la zone de texte - text .config (text = "thread dmarr") - text2.config (text = "thread dmarr") - # on dsactive le bouton pour viter de lancer deux threads en mme temps - bouton.config (state = TK.DISABLED) - # on lance le thread - m = MonThread (root, thread_resultat) - m.start () - -def thread_fini_fonction (e) : - global thread_resultat - # fonction appele lorsque le thread est fini - print("la fentre sait que le thread est fini") - # on change la lgende de la zone de texte - text .config (text = "thread fini + rsultat " + str (thread_resultat)) - text2.config (text = "thread fini + rsultat (e.x) " + str (e.x)) - # on ractive le bouton de faon pouvoir lancer un autre thread - bouton.config (state = TK.NORMAL) - -import tkinter as TK - -# on cre la fentre -root = TK.Tk () -bouton = TK.Button (root, text = "thread dpart", command = lance_thread) -text = TK.Label (root, text = "rien") -text2 = TK.Label (root, text = "rien") -bouton.pack () -text.pack () -text2.pack () - -# on associe une fonction un vnement <> propre au programme -root.bind ("<>", thread_fini_fonction) - -# on active la boucle principale de message -root.mainloop () \ No newline at end of file diff --git a/_todo/programme/thread_partage.py b/_todo/programme/thread_partage.py deleted file mode 100644 index d59b1ba7..00000000 --- a/_todo/programme/thread_partage.py +++ /dev/null @@ -1,47 +0,0 @@ -# coding: latin-1 -import threading, time - -message = "" -verrou = threading.Lock () - -def ajoute (c) : - global message # message et verrou sont des variables gloables - global verrou # pour ne pas qu'elle disparaisse ds la fin de la fonction - #verrou.acquire () # on protge ce qui suit (*) - - s = message + c # instructions jamais excute simultanment par 2 threads - time.sleep (0.001) # time.sleep : pour exagrer le dfaut de synchronisation - message = s # si verrou n'est pas utilis - - #verrou.release () # on quitte la section protge (*) - -class MonThread (threading.Thread) : - def __init__ (self, jusqua, event, s) : - threading.Thread.__init__ (self) - self.jusqua = jusqua - self.s = s - self.event = event - - def run (self) : - for i in range (0, self.jusqua) : - ajoute (self.s) - self.event.set () - -print("dbut") - -# synchronisation attente -e1 = threading.Event () -e2 = threading.Event () -e1.clear () -e2.clear () - -m1 = MonThread (10, e1, "1") # cre un thread -m1.start () # dmarre le thread, -m2 = MonThread (10, e2, "2") # cre un second thread -m2.start () # dmarre le second thread, - -e1.wait () -e2.wait () - -print("longueur ", len(message)) # affiche 20 -print("message = ", message) # affiche quelque chose comme 12212112211212121221 diff --git a/_todo/programme/threadqueue.py b/_todo/programme/threadqueue.py deleted file mode 100644 index 69d91f8d..00000000 --- a/_todo/programme/threadqueue.py +++ /dev/null @@ -1,91 +0,0 @@ -# coding: latin-1 -import threading, time, queue, random - -class Joueur (threading.Thread) : - - # initialisation - def __init__ (self, nom, e, nb = 1000, temps = 0.1) : - threading.Thread.__init__(self) - self.nb = nb - self.queue = queue.Queue () - self.nom = nom - self.event = e - self.temps = temps # temps de rflexion - def Joueur (self, autre_joueur) : self.autre = autre_joueur - - # mthodes : l'adversaire m'envoie un message - def Joue (self, nombre) : self.queue.put_nowait ( ("essai", nombre) ) - def Dessus (self, nombre) : self.queue.put_nowait ( ("dessus", nombre) ) - def Dessous (self, nombre) : self.queue.put_nowait ( ("dessous", nombre) ) - def Gagne (self, nombre) : - while not self.queue.empty () : - try :self.queue.get () - except : pass - self.queue.put ( ("gagne", nombre) ) - - # je joue - def run (self) : - x = random.randint (0,self.nb) - print(self.nom, " : je joue (", x, ")") - i = 0 - a = 0 - b = self.nb - while True : - time.sleep (self.temps) - - try : - m,n = self.queue.get_nowait () # dsynchronis - #m,n = self.queue.get (timeout = 0.5)# l'un aprs l'autre - except queue.Empty: - m,n = None,None - - # traitement du message --> rponse l'adversaire - if m == "essai" : - if n == x : - self.autre.Gagne (n) - print(self.nom, " : j'ai perdu aprs ", i, " essais") - break - elif n < x : self.autre.Dessus (n) - else : self.autre.Dessous (n) - elif m == "dessus" : - a = max (a, n+1) - continue # assure l'quit en mode l'un aprs l'autre - elif m == "dessous" : - b = min (b, n-1) - continue # assure l'quit en mode l'un aprs l'autre - elif m == "gagne" : - print(self.nom, " : j'ai gagn en ", i, " essais, solution ", n) - break - - # on fait une tentative - if a == b : n = a - else : n = random.randint (a,b) - self.autre.Joue (n) - i += 1 - print(self.nom, " : je tente ", n, " cart ", b-a, " traiter ", self.queue.qsize ()) - - # fini - print(self.nom, " : j'arrte") - self.event.set () - -# on cre des verrous pour attendre la fin de la partie -e1 = threading.Event () -e2 = threading.Event () -e1.clear () -e2.clear () - -# cration des joueurs -A = Joueur ("A", e1, 10, temps = 0.1) -B = Joueur ("B", e2, 10, temps = 0.3) - -# chaque joueur sait qui est l'autre -A.Joueur (B) -B.Joueur (A) - -# le jeu commence -A.start () -B.start () - -# on attend la fin de la partie -e1.wait () -e2.wait () \ No newline at end of file diff --git a/_todo/programme/toplevel_ex.py b/_todo/programme/toplevel_ex.py deleted file mode 100644 index a1c0227c..00000000 --- a/_todo/programme/toplevel_ex.py +++ /dev/null @@ -1,23 +0,0 @@ -# -*- coding: utf-8 -*- -import tkinter - -class nouvelle_fenetre : - resultat = [] - def top (self) : - sec = tkinter.Toplevel () - tkinter.Label (sec, text="entrer quelque chose").pack () - saisie = tkinter.Entry (sec) - saisie.pack() - tkinter.Button (sec, text = "valider", command = sec.quit).pack () - sec.mainloop () - nouvelle_fenetre.resultat.append ( saisie.get () ) - sec.destroy () - -root = tkinter.Tk() #fenetre principale -a = tkinter.Button (text = "fenêtre Toplevel", - command = nouvelle_fenetre ().top) -a.pack() -root.mainloop() - -for a in nouvelle_fenetre.resultat : - print("contenu ", a) \ No newline at end of file diff --git a/_todo/programme/tri_position.py b/_todo/programme/tri_position.py deleted file mode 100644 index 34a99337..00000000 --- a/_todo/programme/tri_position.py +++ /dev/null @@ -1,4 +0,0 @@ -tab = ["zro", "un", "deux"] # tableau trier -pos = [ (tab [i],i) for i in range (0, len (tab)) ] # tableau de couples -pos.sort () # tri -print pos # affiche [('deux', 2), ('un', 1), ('zro', 0)] \ No newline at end of file diff --git a/_todo/programme/unuunicode.py b/_todo/programme/unuunicode.py deleted file mode 100644 index a2b1e927..00000000 --- a/_todo/programme/unuunicode.py +++ /dev/null @@ -1,7 +0,0 @@ -# coding: latin-1 -st = "e" -su = u"e" # raccourci pour su = unicode ("e", "latin-1") -print len (st), ";", st # affiche 2 ; e -print len (repr (st)), ";", repr (st) # affiche 7 ; 'e\xe9' -print len (su), ";", su.encode ("latin-1") # affiche 2 ; e -print len (repr (su)), ";", repr (su) # affiche 8 ; u'e\xe9' diff --git a/_todo/programme/unuunicode2.py b/_todo/programme/unuunicode2.py deleted file mode 100644 index 30748221..00000000 --- a/_todo/programme/unuunicode2.py +++ /dev/null @@ -1,8 +0,0 @@ -# coding: utf-8 -s = unicode ("t".decode ("utf-8")) -print len (s), s.encode ("utf-8") -print len (repr (s)), repr (s) - -s = u"ete" -print len (s), s -print len (repr (s)), repr (s) diff --git a/_todo/programme/zip_sample.py b/_todo/programme/zip_sample.py deleted file mode 100644 index 13374f09..00000000 --- a/_todo/programme/zip_sample.py +++ /dev/null @@ -1,4 +0,0 @@ -import glob -import os - -print os.listdir ("c:\\temp\\*") diff --git a/_todo/python_cours_biblio.tex b/_todo/python_cours_biblio.tex deleted file mode 100644 index 47db38e3..00000000 --- a/_todo/python_cours_biblio.tex +++ /dev/null @@ -1,90 +0,0 @@ -% insre une entre dans la bibliographie -% 1 - identifiant -% 2 - anne -% 3 - auteurs -% 4 - titre -% 5 - revue -% 6 - volume -% 7 - page dbut -% 8 - page fin - -\bibitemstyle{Bailly2008}{2008} {Yves Bailly} -{Initiation la programmation avec Python et C++} -{Editions Le programmeur}{}{0}{} - -\bibitemstyle{Brucher2008}{2008} {Matthieu Brucher} -{Les Fondamentaux du langage - La Programmation pour les scientifiques} -{Editions ENI}{}{0}{} - -\bibitemstyle{Dayley2007}{2007} {Brad Dayley} -{Python - L'essentiel du code et des commandes} -{Pearson}{}{0}{} - -\bibitemstyle{Dupr2011}{2011} {Xavier Dupr} -{Programmation avec le Langage Python Deuxime Edition} -{Ellipse}{}{0}{} - -\bibitemstyle{McKinney2012}{2012} {Wes McKinney} -{Python for Data Analysis} -{O'Reilly}{}{0}{} - -\bibitemstyle{Pilgrim2011}{2011} {Mark Pilgrim} -{Dive Into Python 3, voir l'adresse \httpstyle{http://getpython3.com/diveintopython3/}, titre franais \textit{Plongez au coeur de Python}} -{APress}{}{0}{} - -\bibitemstyle{Swinnen2012}{2012} {Grard Swinnen} -{Apprendre programmer avec Python 3, voir l'adresse \httpstyle{http://www.cifen.ulg.ac.be/inforef/swi/python.htm}} -{O'Reilly, dition franaise}{}{0}{} - -\bibitemstyle{Ziad2011}{2011} {Triak Ziad, Stefan Richter} -{Programmation Python : Conception et optimisation} -{Eyrolles}{}{0}{} - - - -\if 0 -\bibitemstyle{www-DocF}{2004} {} -{documents rdigs en langue franaise} -{http://www.developpez.com/cours/}{}{0}{} - -\bibitemstyle{www-GPL}{2004} {} -{site officiel de la licence GPL} -{http://www.gnu.org/copyleft/gpl.html}{}{0}{} - -\bibitemstyle{www-Python}{2004} {} -{site officiel du langage Python} -{http://www.python.org}{}{0}{} - -\bibitemstyle{www-PyDoc}{2004} {} -{site officiel du langage Python, documentation} -{http://docs.python.org/download.html}{}{0}{} - -\bibitemstyle{www-PyEdit}{2004} {} -{diteurs de texte pour le langage Python} -{http://www.python.org/cgi-bin/moinmoin/PythonEditors}{}{0}{} - -\bibitemstyle{www-PyDownload}{2004} {} -{site officiel du langage Python, tlchargement du programma d'installation} -{http://www.python.org/download/}{}{0}{} - -\bibitemstyle{www-PyLicence}{2004} {} -{site officiel du langage Python, licence} -{http://www.python.org/psf/license.html}{}{0}{} - -\bibitemstyle{www-PyModule}{2004} {} -{site officiel du langage Python, liste des modules existant} -{http://www.python.org/pypi}{}{0}{} - -\bibitemstyle{www-Scite}{2004} {} -{diteur de texte Scite} -{http://www.scintilla.org/SciTE.html}{}{0}{} - -\bibitemstyle{www-SciteDownload}{2004} {} -{diteur de texte Scite, page de tlchargement} -{http://scintilla.sourceforge.net/SciTEDownload.html}{}{0}{} - -\bibitemstyle{www-Syn}{2004} {} -{diteur de texte Syn Text Editor} -{http://syn.sourceforge.net/}{}{0}{} - -\fi diff --git a/_todo/python_cours_titre.tex b/_todo/python_cours_titre.tex deleted file mode 100644 index e89ec1ca..00000000 --- a/_todo/python_cours_titre.tex +++ /dev/null @@ -1,12 +0,0 @@ -%---------------------------------------------------------------------------------------------------------------------- -% titre -%---------------------------------------------------------------------------------------------------------------------- - -\title{ $ $ \\ $ $ \\ $ $ \\ ENSAE \\ $ $ \\ Ecole Nationale de la Statistique et de l'Administration Economique \\$ $ \\$ $ \\$ $ \\$ $ \\$ $ \\$ $ \\ Initiation la programmation \\ $ $ \\ -avec le langage \textit{Python} \\ $ $ \\ $ $ \\ $ $ \\ $ $ \\$ $ \\$ $ \\$ $ \\ Xavier Dupr \\ $ $ \\ http://www.xavierdupre.fr/ $ $ \\ $ $ \\ $ $ \\ $ $ \\$ $ \\$ $ \\$ $ \\} -\author{Xavier Dupr} \maketitle - - -\newpage - - diff --git a/_todo/resume_utile.tex b/_todo/resume_utile.tex deleted file mode 100644 index 4ba9a702..00000000 --- a/_todo/resume_utile.tex +++ /dev/null @@ -1,1492 +0,0 @@ - -\input{../../common/paper_begin.tex}% - -\firstpassagedo{ -\title{Rsum de la syntaxe Python} -\author{Xavier Dupr \\ \httpstyle{http://www.xavierdupre.fr/}} -\maketitle -\begin{abstract} -\noindent Ce document rsume en quelques pages les lments essentiels de la syntaxe du langage \python, variables, boucles, test, fonctions. -\end{abstract} -%\shorttableofcontents{Table des matires}{2} -\setcounter{tocdepth}{1} -\tableofcontents -\hypersetup{ - pdftitle={Rsum de la syntaxe Python} - pdfauthor={Xavier Dupr} - pdfsubject={Rsum de la syntaxe Python} - pdfkeywords={Python rsum} -} -} - - - -Ce document rsume en quelques pages les lments essentiels de la syntaxe du langage \python. L'installation est simple. Le langage est prsent sur les ordinateurs Mac et Linux. Sur Windows, il suffit de l'installer avec un installateur comme la plupart des programmes. Il suffit de faire attention la version installe sur ces les lignes suivantes permettront de dcouvrir~: - -\begin{verbatimx} -import sys -print (sys.version) -\end{verbatimx} - -Tous les modules additionnels (\codes{numpy}, \codes{matplotlib}, ...) doivent tre installs pour cette version. Avec la version~3.x, le langage a introduit quelques changements importants qui seront signals. - - -\section{Le langage} - -Quelques rappels sur le langage~: - -\begin{enumerate} -\item Il n'y a pas de sparateur d'instructions, il faut crire une instruction par ligne et dcaler les lignes dans une boucle, un test, une fonction, une classe. Pour crire une instruction sur plusieurs lignes, il faut utiliser le caractres \codes{\backslash} sur toutes les lignes de l'instruction sauf la dernire. Il ne doit rien y avoir derrire ce caractre, ni espace, ni commentaires. Cette rgle n'est ncessaire s'il s'agit d'une liste d'lments spars par des virgules. -\item On peut mettre autant d'espaces qu'on veut. Il peut n'y en avoir aucun sauf derrire une instruction \codes{for}, \codes{if}, ... -\item Les commentaires dans un programme commencent par le symbole \codes{\#} et vont jusqu' la fin de la ligne. -\item L'instruction \codes{print} permet d'afficher n'importe quelle information. Elle affiche le rsultat de la mthode \codes{\_\_str\_\_} pour les classes. \textbf{Version~3.x:} \codes{print} est une fonction, tout ce qui doit tre affich doit l'tre entre parenthses. -\item L'instruction \codes{help} affiche l'aide associe une variable, une fonction, une classe, une mthode, un module. Pour une fonction, une classe, une mthode du programme, cette aide correspond une chane de caractres encadre par trois ". Ce message d'aide peut s'taler sur plusieurs lignes. -\begin{verbatimx} -def fonction () : - """fonction de - dmonstration""" - return 0 -help (fonction) # affiche fonction de - # dmonstration -\end{verbatimx} -\end{enumerate} - - -\textbf{2 astuces en cas de problme} - -En cas de doute sur une partie de code, un calcul, une priorit entre oprateurs, le rsultat d'une fonction, il est possible d'utiliser la fonction \codes{print} pour afficher une valeur intermdiaire pendant un calcul. Il ne faut pas non plus hsiter vrifier sur un petit exemple dans un petit programme que des lignes douteuses font exactement ce pour quoi elles ont t crites. - -Il est souvent utile de chercher sur Internet des exemples de programmes pour corriger une syntaxe incorrecte, utiliser Google en ajoutant une requte commenant par le mot \python. Pour les erreurs, il est parfois intressant de recopier intgralement le message d'erreur sous Google, les rponses obtenues sont souvent assez claires. - - - -\section{Les variables} - -Le nom d'une variable commence par une lettre ou un blanc soulign, il peut galement inclure par la suite des chiffres. \pythons distingue les minuscules des majuscules. La porte d'une variable, c'est--dire la portion de code o elle dfinie, s'tend depuis sa dclaration (premire affectation) jusqu' la fin du programme ou de la fonction o elle est dfinie. Pour dclarer une variable portant le nom \codes{va}, il suffit d'crire~: -% -\begin{verbatimx} -va = -\end{verbatimx} -% -Le type de \codes{} dtermine le type de la variable \codes{va}. Si une variable de mme porte portait dj ce nom-l, son contenu est cras (perdu aussi). L'instruction \codes{type(x)} retourne le type de la variable \codes{x}. \textbf{Un identificateur ne peut tre utilis qu'une seule fois, qu'il dsigne une variable, une fonction, une classe ou un module.} - -\subsection{Les types immuables} - -Les variables de type immuable ne peuvent pas tre modifies. \indexfrr{type}{None}\indexfrr{type}{bool}\indexfrr{type}{int}\indexfrr{type}{float}\indexfrr{type}{complex}\indexfrr{type}{str}\indexfrr{type}{unicode}\indexfrr{type}{tuple} -\begin{enumerate} -\item \codes{None}, ce type veut dire rien, il est utilis comme convention de programmation pour dire qu'un algorithme, un calcul ne s'est pas termin correctement ou une valeur n'a pas encore t calcule. -\item \codes{bool} : un boolen (rsultat d'un test) -\item \codes{int} : un entier -\item \codes{float} : un rel -\item \codes{complex} : un complexe -\item \codes{str} : une chane de caractres ou string, elle apparat entre guillemets, entre apostrophes, entre trois guillements (""") si elle s'tend sur plusieurs lignes. \codes{s = "exemple"}. \textbf{Version 2.7~:} il existe un autre type \codes{unicode} utilis pour reprsenter des chanes de caractres non latines (en chinois par exemple). -\item \codes{tuple} : un vecteur d'lments de types identiques ou diffrents, il apparat entre parenthses, on accde un de ses lments l'aide de crochets. Les lments d'un t-uple \codes{t} sont indics de 0 \codes{len(t)-1} inclus. -\begin{verbatimx} -t = () # tuple vide -t = (2, "e") # tuple de deux lments -print (t[0]) # affiche le premier lment -\end{verbatimx} -\end{enumerate} -% -L'affectation d'une valeur de type immuable une variable est une copie. On peut appliquer sur les types numriques les oprations usuelles (+ * - / \% ** += *= -= /= \%= **=)\footnote{** est le symbole pour puissance~: \codesnote{3 ** 4} = $3^4$}. On rappelle que \codes{a += 10} est quivalent \codes{a = a + 10}, ceci signifie que la valeur de \codes{a} avant le calcul n'a plus besoin d'exister. Le \textit{et} logique et le \textit{ou} logique sont nots \codes{and} et \codes{or}. Les priorits sont celles usuellement utilises en mathmatique, en cas de doute, il faut utiliser des parenthses. - -Les oprateurs de comparaison (< > == <= >=) s'appliquent sur tous les types numriques ainsi que sur les chanes de caractres. Rappel~: les minuscules sont classes aprs les majuscules. - - -\textbf{Frquente source de bug~:} -\begin{itemize} -\item \textbf{Version 2.7~:} une division entire a pour rsultat le quotient et non un nombre dcimal. Autrement dit~: \codes{1/2 = 0} et non \codes{0.5}. -\item \textbf{Version 3.x~:} une division entire a pour rsultat un rel.Autrement dit~: \codes{1/2 = 0.5}. Pour une division entire, il faut utiliser \codes{//}~: \codes{1//2 = 0}. -\end{itemize} - -Pour convertir une information d'un type un autre, il suffit d'utiliser le nom de ce type suivi de la valeur convertir entre parenthses~: \codes{b = float ("2.145")} quivaut la conversion d'une chane de caractres en rel. - -L'addition d'un t-uple et d'une valeur retourne un t-uple incluant cette valeur la fin (plus long d'un lment). L'addition de deux t-uples concatne les deux t-uples. L'addition de deux chanes de caractres retourne leur concatnation. - -Pour savoir si un lment \codes{x} fait partie d'un t-uple \codes{t}, il faut utiliser la syntaxe \codes{x \; in \; t} dont la rciproque est \codes{x \; not \; in \; t}. - -La fonction \codes{len} retourne la longueur d'un tuple ou d'une chane de caractres. Les lments ou les caractres d'un tuple ou d'une chane de caractres \codes{t} sont indics de 0 \codes{len (t)-1} inclus. -\begin{verbatimx} -t [i:j] # correspond un sous-ensemble allant des indices i j exclu -t [:j] # = t[0:j] -t [i:] # = t [i: len (t)] -\end{verbatimx} -% -Pour les chanes de caractres, on utilise frquemment les mthodes de la table~\ref{string_method-sum}, exemple~: -% -\begin{verbatimx} -st = "langage python" -st = 'langage python' # idem -st = 'un guillement "' # chane contenant un guillement -st = "un guillement \"" # chane contenant un guillement, il faut ajouter \ - # pour ne pas confondre avec l'autre guillement -st = st.upper () # mise en lettres majuscules -i = st.find ("PYTHON") # on cherche "PYTHON" dans st -print (i) # affiche 8 Version 3.x, crire print (i), - # pour la version 2.x, crire print i -print (st.count ("PYTHON")) # affiche 1 Version 3.x : idem print (...) -print (st.count ("PYTHON", 9)) # affiche 0 Version 3.x : idem print (...) -\end{verbatimx} -% -% - \begin{table}[ht] - \begin{center}\begin{tabular}{|lp{12cm}|} \hline - \codes{count( sub[, start[, end]])} & - %\begin{minipage}{12cm} - Retourne le nombre d'occurences de la chane de caractres \codes{sub}, - les paramtres par dfaut \codes{start} et \codes{end} permettent de rduire la - recherche entre les caractres d'indice \codes{start} et \codes{end} exclu. Par dfaut, - \codes{start} est nul tandis que \codes{end} correspond la fin de la chane - de caractres. - %\end{minipage} - \\ \hline - \codes{find( sub[, start[, end]])} & - %\begin{minipage}{12cm} - Recherche une chane de caractres \codes{sub}, - les paramtres par dfaut \codes{start} et \codes{end} ont la mme signification - que ceux de la fonction \codes{count}. Cette fonction retourne -1 si - la recherche n'a pas abouti. - %\end{minipage} - \\ \hline - \codes{isalpha ()} & - %\begin{minipage}{12cm} - Retourne \codes{True} si tous les caractres sont des lettres, \codes{False} sinon. - %\end{minipage} - \\ \hline - \codes{isdigit ()} & - %\begin{minipage}{12cm} - Retourne \codes{True} si tous les caractres sont des chiffres, \codes{False} sinon. - %\end{minipage} - \\ \hline - \codes{replace( old, new[, count])} & - %\begin{minipage}{12cm} - Retourne une copie de la chane de caractres en remplaant toutes les - occurrences de la chane \codes{old} par \codes{new}. Si le paramtre optionnel - \codes{count} est renseign, alors seules les \codes{count} premires occurrences - seront remplaces. - %\end{minipage} - \\ \hline - \codes{split( [sep [,maxsplit]])} & - %\begin{minipage}{12cm} - Dcoupe la chane de caractres en se servant de la chane \codes{sep} comme - dlimiteur. Si le paramtre \codes{maxsplit} est renseign, au plus \codes{maxsplit} - coupures seront effectues. - %\end{minipage} - \\ \hline - \codes{upper ()} & Remplace les minuscules par des majuscules. \\ \hline - \codes{lower ()} & Remplace les majuscules par des minuscules. \\ \hline - \codes{join ( li )} & \codes{li} est une liste, - cette fonction agglutine tous les lments d'une liste spars par \codes{sep} - dans l'expression \codes{sep.join ( ["un", "deux"])}. \\ \hline - \end{tabular}\end{center} - \caption{ Quelques fonctions s'appliquant aux chanes de caractres, l'aide associe au langage \pythons - fournira la liste complte. Certains des paramtres sont encadrs par des crochets, - ceci signifie qu'ils sont facultatifs.\indexfrr{type}{str}} - \label{string_method-sum} - \end{table} - -L'affichage de rels ncessite parfois de tronquer la partie dcimale ce qui est fait grce la syntaxe suivante~: -% -\begin{verbatimx} -x = 0.123456789 -print ("%1.2f" % x) # donne 0.12 -s = "%2.2e %s" % (3.14159, "est une approximation de pi") -print (s) # Version 2.x : print s -\end{verbatimx} - - - - -\subsection{Les types modifiables} - -\pythons fournit deux types modifiables~: les listes et les dictionnaires. Pour ces deux types, \textbf{il faut faire attention chaque affectation}. -% -\begin{verbatimx} -a = [1,2] -b = a -\end{verbatimx} -% -La seconde ligne ne fait pas une copie de la premire liste, elle ne fait que crer un second nom pour nommer la mme liste. Pour copier une liste ou un dictionnaire, il faut utiliser~: -% -\begin{verbatimx} -a = [1,2] -import copy -b = copy.copy (a) -\end{verbatimx} -% -ou, si la liste inclut galement d'autres listes ou dictionnaires~: -% -\begin{verbatimx} -a = [1,2] -import copy -b = copy.deepcopy (a) -\end{verbatimx} -% -Cette remarque s'applique tout type modifiable, liste, dictionnaire ou tout autre classe. La suppression d'une variable n'implique pas la suppression de toutes les variables se rfrant une seule et mme instance de classe. - - -\subsubsection{Liste}\indexfrr{type}{list} - -Une liste est une sorte de tableau qui permet de mmoriser un ensemble d'lments de types varis. C'est une sorte de t-uple modifiable. La table~\ref{operation_liste_resume} regroupe les oprations qu'une liste supporte et la table~\ref{operation_liste2_resume} les mthodes dont elle dispose. -% -\begin{verbatimx} -x = [4,5] # cration d'une liste compose de deux entiers -x = ["un",1,"deux",2] # cration d'une liste compose deux chanes de caractres - # et de deux entiers, l'ordre d'criture est important -x = [3,] # cration d'une liste d'un lment, sans la virgule, - # le rsultat reste une liste -x = [ ] # cre une liste vide -x = list () # cre une liste vide -\end{verbatimx} - - - - \begin{table}[ht] - \begin{center}\begin{tabular}{|lp{12cm}|} \hline - \codes{x \; in \; s} & vrai si \codes{x} est un des lments de \codes{l} \\ \hline - \codes{x \; not \; in \; s} & rciproque de la ligne prcdente \\ \hline - \codes{l + t} & concatnation de \codes{l} et \codes{t} \\ \hline - \codes{l * n} & concatne \codes{n} copies de \codes{l} les unes la suite des autres \\ \hline - \codes{l[i]} & %\begin{minipage}{12cm} - retourne le i$^\text{me}$ lment de \codes{l}, - la diffrence des T-uples, l'instruction \codes{l [i] = "3"} - est valide, elle remplace l'lment \codes{i} par 3. - %\end{minipage} - \\ \hline - \codes{l[i:j]} & %\begin{minipage}{12cm} - retourne une liste contenant les lments de \codes{l} d'indices $i$ - $j$ exclu. Il est possible de remplacer cette sous-liste par une autre en - utilisant l'affectation \codes{ l[i:j] = l2 } o \codes{l2} - est une autre liste (ou un T-uple) de dimension diffrente ou gale. - %\end{minipage} - \\ \hline - \codes{l[i:j:k]} & %\begin{minipage}{12cm} - retourne une liste contenant les lments de \codes{l} dont les - indices sont compris entre $i$ et $j$ exclu, ces indices sont espacs de $k$~: - $i, i+k, i+2k, i+3k, ...$ Ici encore, il est possible d'crire l'affectation - suivante~: \codes{ l[i:j:k] = l2 } mais \codes{l2} doit tre une liste - (ou un T-uple) de mme dimension que \codes{ l[i:j:k]}. - %\end{minipage} - \\ \hline - \codes{len(l)} & nombre d'lments de \codes{l} \\ \hline - \codes{min(l)} & %\begin{minipage}{12cm} - plus petit lment de \codes{l}, rsultat difficile prvoir - lorsque les types des lments sont diffrents - %\end{minipage} - \\ \hline - \codes{max(l)} & %\begin{minipage}{12cm} - plus grand lment de \codes{l}, rsultat difficile prvoir - lorsque les types des lments sont diffrents - %\end{minipage} - \\ \hline - \codes{sum(l)} & %\begin{minipage}{12cm} - retourne la somme de tous les lments - %\end{minipage} - \\ \hline - \codes{del \;l [i:j]} & %\begin{minipage}{12cm} - supprime les lments d'indices entre \codes{i} et \codes{j} exclu. - Cette instruction est quivalente \codes{ l [i:j] = [] }. - %\end{minipage} - \\ \hline - \codes{list (x)} & %\begin{minipage}{12cm} - convertit \codes{x} en une liste quand cela est possible - %\end{minipage} - \\ \hline - \end{tabular}\end{center} - \caption{ Oprations disponibles sur les listes, identiques celles des T-uples, - on suppose que \codescaption{l} et \codescaption{t} sont des listes, \codescaption{i} et \codescaption{j} sont - des entiers. - \codescaption{x} est quant lui quelconque.} - \label{operation_liste_resume} - \end{table} - - - - \begin{table}[ht] - \begin{center}\begin{tabular}{|lp{12cm}|} \hline - \codes{l.count (x)} & %\begin{minipage}{12cm} - Retourne le nombre d'occurrences de l'lment \codes{x}. - \codes{count} est une mthode de la classe \codes{list}. - %\end{minipage} - \\ \hline - \codes{l.index (x)} & %\begin{minipage}{12cm} - Retourne l'indice de la premire occurrence de l'lment \codes{x} - dans la liste \codes{l}. Si celle-ci n'existe, une exception est - dclenche. \indexfr{exception} - %\end{minipage} - \\ \hline - \codes{l.append (x)} & %\begin{minipage}{12cm} - Ajoute l'lment \codes{x} la fin de la liste \codes{l}. Si \codes{x} - est une liste, cette fonction ajoute la liste \codes{x} en tant qu'lment, - au final, la liste \codes{l} ne contiendra qu'un lment de plus. - %\end{minipage} - \\ \hline - \codes{l.extend (k)} & %\begin{minipage}{12cm} - Ajoute tous les lments de la liste \codes{k} la liste \codes{l}. - La liste \codes{l} aura autant d'lments supplmentaires qu'il y en a - dans la liste \codes{k}. - %\end{minipage} - \\ \hline - \codes{l.insert(i,x)} & %\begin{minipage}{12cm} - Insre l'lment \codes{x} la position \codes{i} dans la liste \codes{l}. - %\end{minipage} - \\ \hline - \codes{l.remove (x)} & %\begin{minipage}{12cm} - Supprime la premire occurence de l'lment \codes{x} dans la liste \codes{l}. - S'il n'y a aucune occurrence de \codes{x}, cette mthode dclenche - une exception. - %\end{minipage} - \\ \hline - \codes{l.pop ([i])} & %\begin{minipage}{12cm} - Retourne l'lment \codes{l[i]} et le supprime de la liste. Le - paramtre \codes{i} est facultatif, s'il n'est pas prcis, c'est le dernier - lment dont la valeur est d'abord retourne puis il est supprim de la liste. - %\end{minipage} - \\ \hline - \codes{l.reverse (x)} & %\begin{minipage}{12cm} - Retourne la liste, le premier et dernier lment changent leurs places, - le second et l'avant dernier, et ainsi de suite. - %\end{minipage} - \\ \hline - \codes{l.sort ([f])} & %\begin{minipage}{12cm} - Cette fonction trie la liste par ordre croissant. Le paramtre \codes{f} - est facultatif, il permet de prciser la fonction de comparaison qui doit - tre utilise lors du tri. Cette fonction prend comme paramtre - deux lments \codes{x} et \codes{y} de la liste et retourne les valeurs -1,0,1 - selon que \codes{x < y}, \codes{x == y} ou \codes{x > y} - (voir paragraphe~\ref{chap_fonction}). - %\end{minipage} - \\ \hline - \end{tabular}\end{center} - \caption{ Oprations permettant de modifier une liste - on suppose que \codescaption{l} est une liste, - \codescaption{x} est quant lui quelconque.} - \label{operation_liste2_resume} - \end{table} - -Les listes peuvent aussi tre dfinies partir d'une criture abrge~: -% -\begin{verbatimx} -x = range(0,5) # liste des entiers de 0 5 exclu - # Version 3.x : range retourne un itrateur, il faut crire - # x = list(range(0,5)) -y = [ i for i in x if i % 2 == 0] # slection des lments pairs -print (y) # affiche [0,2,4] Version 2.x : crire print y -z = [ i+j for i in x for j in x] # construit tous les nombres i+j possibles -print (z) # affiche [0, 1, 2, 3, 4, 1, 2, 3, 4, 5, 2, 3, - # 4, 5, 6, 3, 4, 5, 6, 7, 4, 5, 6, 7, 8] -\end{verbatimx} - - - -\subsubsection{Dictionnaire}\indexfrr{type}{dict} - -Un dictionnaire est un tableau pour lequel les indices ou cls ne sont pas uniquement des entiers mais tout type non modifiable (le plus souvent un entier, un rel, une chane de caractres, un t-uple). -% -\begin{verbatimx} -x = { "cle1":"valeur1", "cle2":"valeur2" } -print (x ["cle1"]) # affiche valeur1 Version 2.x : crire print ... -x [(0,1)] = "cl tuple" # ajoute une nouvelle valeur dont la cl est (0,1) - # les parenthses sont superflues -y = { } # cre un dictionnaire vide -z = dict () # cre aussi un dictionnaire vide -\end{verbatimx} -% -La table~\ref{operation_dict_resume} regroupe les oprations qu'un dictionnaire supporte. La table~\ref{operation_dict2_resume} regroupe les mthodes d'un dictionnaire. - - \begin{table}[ht] - \begin{center}\begin{tabular}{|lp{12cm}|} \hline - \codes{x \; in \; d} & vrai si \codes{x} est une des cls de \codes{d} \\ \hline - \codes{x \; not \; in \; d} & rciproque de la ligne prcdente \\ \hline - \codes{l[i]} & %\begin{minipage}{12cm} - retourne l'lment associ la cl \codes{i} - %\end{minipage} - \\ \hline - \codes{len(d)} & nombre d'lments de \codes{d} \\ \hline - \codes{min(d)} & %\begin{minipage}{12cm} - plus petite cl - %\end{minipage} - \\ \hline - \codes{max(d)} & %\begin{minipage}{12cm} - plus grande cl - %\end{minipage} - \\ \hline - \codes{del \;l [i]} & %\begin{minipage}{12cm} - supprime l'lment associ la cl \codes{i} - %\end{minipage} - \\ \hline - \codes{list (d)} & %\begin{minipage}{12cm} - retourne une liste contenant toutes les cls du dictionnaire \codes{d}. - %\end{minipage} - \\ \hline - \codes{dict (x)} & %\begin{minipage}{12cm} - convertit \codes{x} en un dictionnaire si cela est possible, - en particulier, \codes{d} est gal \codes{ dict ( d.items () ) } - %\end{minipage} - \\ \hline - \end{tabular}\end{center} - \caption{ Oprations disponibles sur les dictionnaires, \codescaption{d} est un dictionnaire, - \codescaption{x} est quant lui quelconque.} - \label{operation_dict_resume} - \end{table} - - - \begin{table}[ht] - \begin{center}\begin{tabular}{|lp{12cm}|} \hline - \codes{d.copy ()} & Retourne une copie de \codes{d}. \\ \hline - \codes{d.has\_key (x)} & Retourne \codes{True} si \codes{x} est une cl de \codes{d}. - \textbf{Version~3.x~:} la fonction n'existe plus, il faut crire \codes{x \; in \; d}. - \\ \hline - \codes{d.items ()} & %\begin{minipage}{12cm} - Retourne un itrateur parcourant contenant tous les couples (cl, valeur) - inclus dans le dictionnaire. Pour obtenir une liste, il faut crire - \codes{list ( d.items() ) }. - \textbf{Version~2.x~:} retourne une liste. - %\end{minipage} - \\ \hline - \codes{d.keys ()} & %\begin{minipage}{12cm} - Retourne un itrateur parcourant toutes les cls du dictionnaire \codes{d}. - \textbf{Version 2.x~:} retourne une liste. - %\end{minipage} - \\ \hline - \codes{d.values ()} & %\begin{minipage}{12cm} - Retourne un itrateur parcourant toutes les valeurs du dictionnaire \codes{d}. - \textbf{Version 2.x~:} retourne une liste. - %\end{minipage} - \\ \hline - \codes{d.get (k[,x])} & %\begin{minipage}{12cm} - Retourne \codes{d [k]}, si la cl \codes{k} est manquante, alors - la valeur \codes{None} est retourne moins que le paramtre optionnel \codes{x} - soit renseign, auquel cas, ce sera ce paramtre qui sera retourn. - %\end{minipage} - \\ \hline - \codes{d.clear ()} & %\begin{minipage}{12cm} - Supprime tous les lments du dictionnaire. - %\end{minipage} - \\ \hline - \codes{d.update (d2)} & %\begin{minipage}{12cm} - Pour chaque cl de \codes{d1}, \codes{d[k] = d1 [k]} - %\end{minipage} - \\ \hline - \codes{d.setdefault(k[,x])} & %\begin{minipage}{12cm} - Retourne \codes{d [k]} si la cl \codes{k} existe, sinon, affecte \codes{x} - \codes{d[k]}. - %\end{minipage} - \\ \hline - \codes{d.popitem ()} & %\begin{minipage}{12cm} - Retourne un lment et le supprime du dictionnaire. - %\end{minipage} - \\ \hline - \end{tabular}\end{center} - \caption{ Mthodes associes aux dictionnaires, \codescaption{d}, \codescaption{d2} sont des dictionnaires, - \codescaption{x} est quant lui quelconque.} - \label{operation_dict2_resume} - \end{table} - - -\subsubsection{Tableaux numriques} - -Ce type ne fait pas partie du langage \pythons standard mais il est couramment utilis. -% -\begin{verbatimx} -import numpy -a = numpy.array ( [0,1] ) -\end{verbatimx} -% -Il permet de convertir des listes en une structure plus approprie au calcul qui sont nettement plus rapides. En contrepartie, il n'est pas aussi rapide d'ajouter ou supprimer des lments. - - -\section{Tests et boucles} - -\subsection{Tests}\indexfr{test} -Les tests permettent d'excuter telle ou telle instruction selon la valeur d'une condition. Le test est suivi de \codes{:} et les instructions dpendant de ce test sont indentes (dcales vers la droite). -% -\begin{verbatimx} -if x < 5 : - x = x*2 - ... -\end{verbatimx} -% -Il peut y avoir une contrepartie~: -% -\begin{verbatimx} -if x < 5 : - x = x*2 - ... -else : - x = x*3 - ... -\end{verbatimx} -% -S'il n'y a qu'une seule instruction, elle peut s'crire en bout de ligne~: -% -\begin{verbatimx} -if x < 5 : x=x*2 -else : x=x*3 -\end{verbatimx} -% -Il peut y avoir plusieurs conditions qui s'enchanent~: -% -\begin{verbatimx} -if x < 5 : x = x*2 -elif x > 5 : x = x*3 -else : x = x*6 -\end{verbatimx} - -Il existe un raccourci pour les intervalles~: - -\begin{verbatimx} -if 5 < x and x < 10 : # peut tre crit : if 5 < x < 10 : - ... -\end{verbatimx} - -\subsection{Boucles} - -Il y a deux types de boucles, la boucle \codes{for} parcourt un ensemble, la boucle \codes{while} continue tant qu'une condition est vraie. Comme pour les tests, une boucle est suivie du syumbol \codes{:}, les lignes incluses dans cette boucle sont indentes moins qu'il n'y en ait qu'une seule, auquel cas elle peut tre crite aprs le symbole \codes{:} sur la mme ligne. \indexfrr{boucle}{while} -% -\begin{verbatimx} -while condition : - # lignes dcales - # contenu de la boucle -\end{verbatimx} -% -Quelques exemples de boucles \codes{for}~: \indexfrr{boucle}{for} -% -\begin{verbatimx} -for i in range(0,n) : # parcourt tous les entiers de 0 n-1 inclus -for i in xrange(0,n) : # mme chose mais en plus rapide - # Version 3.x : la fonction xrange n'existe plus, - # et range quivaut xrange -for i in range(n,0,-1) : # parcourt tous les entiers de n 1 inclus - # dans le sens dcroissant -for i in range(2,1000,3) : # parcourt tous les entiers de 2 1000 de 3 en 3 - # (2,5,8,...) -for e in li : # parcourt tous les lments de la liste li -for cle,valeur in di.items () : # parcourt tous les lments du dictionnaire di -\end{verbatimx} -% -Pour toutes les boucles, l'instruction \codes{break} permet de sortir de la boucle, l'instruction \codes{continue} passe directement l'itration suivante sans excuter les instructions qui suivent l'instruction \codes{continue}. - - -\subsection{Fonction \codes{enumerate}}\indexfr{enumerate} - -On peut crire~: -\begin{verbatimx} -l = [ 4, 5, 6 ] -s = 0 -for i in range(0,len(l)) : - s += l[i] -\end{verbatimx} - -Ou utiliser la fonction \codes{enumerate} qui retourne chaque lment et sa position dans l'ensemble~: -\begin{verbatimx} -l = [ 4, 5, 6 ] -s = 0 -for i,x in enumerate(l) : - s += x -\end{verbatimx} - -\subsection{Fonction \codes{zip}}\indexfr{zip} - -Pour faire la somme de deux listes terme terme, on peut crire~: -\begin{verbatimx} -l = [ 4, 5, 6 ] -g = [ 3,10,11 ] -s = 0 -for i in range(0,len(l)) : - s += l[i] + g[i] -\end{verbatimx} - -Ou utiliser la fonction \codes{zip}~: -\begin{verbatimx} -l = [ 4, 5, 6 ] -g = [ 3,10,11 ] -s = 0 -for x,y in zip(l,g) : - s += x + y -\end{verbatimx} - - - -\subsection{Fonction \codes{map}}\indexfr{map} - -Il est possible d'viter une fonction pour viter d'crire une boucle avec la fonction \codes{map}. Elle applique une fonction chaque lment d'un ensemble. - -\begin{verbatimx} -def fonction (x) : return x % 2 -li = [ 3,4,5] -li2 = map (fonction, li) -print (list(li2)) # affiche [ 1, 0, 1 ] -\end{verbatimx} - -A priori, l'ensemble qui en rsulte contient autant d'lments sauf si on utilise le mot-cl \codes{yield}.\indexfr{yield} L'exemple suivant affiche tous les nombres pairs. - -\begin{verbatimx} -def fonction (x) : - if x % 2 == 0 : yield x -li = [ 3,4,5] -li2 = map (fonction, li) -print (list(li2)) # affiche [ 4 ] -\end{verbatimx} - - -\subsection{Autres mot-cls}\indexfr{keywords}\indexfr{mot-cls} - -Le mot-cl \codes{with}\indexfr{with} est utile lorsqu'on une utilise une variable pour une portion rduite de code. Cette notation cache deux appels implicites deux mthodes comme indiqu ci-dessous. - -\begin{verbatimx} -with random_matrix(1000,1000) as mat : - # appelle mat.__enter__() - ... - # appelle mat.__exit__() -\end{verbatimx} - -Lorsque ces mthodes sont surcharges, l'utilisation de cette syntaxe rduit la taille du code. C'est le cas des fichiers (voir paragraphe~\ref{section_res_fichier}). - - -\section{Fonctions}\indexfr{fonction} - -\subsection{Dfinition, paramtres} - -Les fonctions ou sous-programmes permettent de faire la mme chose sans avoir recopier le code informatique plusieurs fois dans le programme. Elles acceptent plusieurs paramtres ou aucun, elles peuvent retourner plusieurs rsultats ou aucun. Leur dclaration suit le schma suivant~: -% -\begin{verbatimx} -def exemple_fonction (p1, p2, p3) : - # code de la fonction - return r1, r2 - -a,b = exemple_fonction (1,2,3) # exemple d'appel de la fonction -\end{verbatimx} -% -L'instruction \codes{return} n'est pas obligatoire mais si elle est prsente un ou plusieurs endroits, aucune autre instruction de la fonction ne sera excute aprs l'excution de la premire instruction \codes{return} rencontre lors de l'excution de la fonction. Les fonctions peuvent tre rcursives et inclure des paramtres par dfaut~: ces paramtres reoivent une valeur mme si celle-ci n'est pas prcise lors de l'appel. -% -\begin{verbatimx} -def exemple_fonction (p1, p2 = 4, p3 = 7) : - # code de la fonction - return r1, r2 - -a,b = exemple_fonction (1) # = exemple_fonction (1,4,7) -a,b = exemple_fonction (1,2,3) # = exemple_fonction (1,2,3) -a,b = exemple_fonction (1,2) # = exemple_fonction (1,2,7) -a,b = exemple_fonction (1,p3 = 2) # = exemple_fonction (1,4,2) -\end{verbatimx} -% -Les paramtres par dfaut doivent tous tre mis en fin de dclaration, l'exemple suivant n'est pas correct~: -% -\begin{verbatimx} -def exemple_fonction (p1, p2 = 4, p3) : - # code de la fonction - return r1, r2 -# affiche le message d'erreur : SyntaxError: non-default argument follows default argument -\end{verbatimx} -% -En ce qui concerne les paramtres, les paramtres de type non modifiable sont passs par valeur (une modification l'intrieur de la fonction n'a pas de rpercution l'extrieur). -% -\begin{verbatimx} -def exemple_fonction (p1) : - p1 = 3 -a = 1 -exemple_fonction (a) -print (a) # affiche 1 -\end{verbatimx} -% -Les paramtres de type modifiable sont passs par rfrence (une modification l'intrieur de la fonction a des rpercutions l'extrieur). -% -\begin{verbatimx} -def exemple_fonction (p1) : - p1[0] = 3 -a = [1] -exemple_fonction (a) -print (a) # affiche [3] Version 2.x : print ... -\end{verbatimx} - - -\subsection{mot-cl \codes{lambda}} - -Le mot-cl \codes{lambda} permet de dfinir des fonctions au sein d'une expression. - -\begin{verbatimx} -def fonction (x) : return x % 2 -li = [ 3,4,5] -li2 = map (fonction, li) -print (list(li2)) # affiche [ 1, 0, 1 ] -\end{verbatimx} - -Peut-tre crit comme~: - -\begin{verbatimx} -li = [ 3,4,5] -li2 = map (lambda x : x%2, li) -print (list(li2)) # affiche [ 1, 0, 1 ] -\end{verbatimx} - -Et si on veut ajouter un paramtre la fonction \codes{lambda}~: - -\begin{verbatimx} -li = [ 3,4,5] -k = 2 -li2 = map (lambda x,y=k : x%k, li) -print (list(li2)) # affiche [ 1, 0, 1 ] -\end{verbatimx} - - -\subsection{mot-cl \codes{yield}} - -La programmation fonctionnelle est de plus en plus utilise. En \python, elle se dcline sous la forme d'itrateur. - -\begin{verbatimx} -def iterate_double_on_list(l) : - for x in l : - yield x*2 -print (iterate_double_on_list( [4,5,6])) - # affiche -\end{verbatimx} - -La fonction itre sur un ensemble mais ne fait rien tant qu'on ne parcourt pas l'ensemble qu'elle gnre~: - -\begin{verbatimx} -for x in iterate_double_on_list( [4,5,6]) : - print (x) -\end{verbatimx} - -La version~3 du langage \pythons a chang des fonctions pour qu'elle retourne un itrateur sur un ensemble et non l'ensemble lui-mme. - - -\section{Classes}\indexfr{class} - -Les classes sont un moyen de dfinir de nouveaux types modifiables de variables. Peu de programmes ne les utilisent pas. Une classe est un ensemble d'attributs (ou variables) et de mthodes (ou fonctions). Un programme utilisant les classes est orient objet. Il est possible de faire les mmes choses avec ou sans classes mais leur utilisation rend d'ordinaire les grands programmes plus facile comprendre et construire. - -\subsection{Dclaration d'une classe} - -Pour dclarer une classe, on procde comme suit~: -% -\begin{verbatimx} -class ma_classe : - def __init__ (self, att1, att2, att3) : - self.att1 = att1 - self.att2 = att2 - self.att3 = att3 - self.att4 = att1 * att2 * att3 - -a = ma_classe (-1,1,2) # dclare une variable de type ma_classe -print (a.att1) # affiche -1 -print (a.att2) # affiche 3 Version 2.x : print ... -print (a.att3) # affiche 4 -print (a.att4) # affiche -12 -\end{verbatimx} -% -Lors de la dclaration de la variable \codes{a}, le langage \pythons excute la mthode \codes{\_\_init\_\_} aussi appele constructeur. Elle permet de dfinir les attributs de la classe directement partir des paramtres ou comme le rsultat d'un calcul ou d'une fonction. Le constructeur comme toutes les autres mthodes possde comme premier paramtre \codes{self} qui permet d'accder aux attributs et aux mthodes de la classe. Le programme suivant est quivalent au premier. -% -\begin{verbatimx} -class ma_classe : - def __init__ (self, att1, att2, att3) : - self.att1 = att1 - self.att2 = att2 - self.att3 = att3 - self.att4 = self.calcule4 () - - def calcule4 (self) : - return self.att1 * self.att2 * self.att3 - -a = ma_classe (-1,1,2) # dclare une variable de type ma_classe -print (a.att1) # affiche -1 -print (a.att2) # affiche 3 -print (a.att3) # affiche 4 -print (a.att4) # affiche -12 -\end{verbatimx} - - -\subsection{Attributs et mthodes}\indexfr{attribut}\indexfr{mthode} - -Les attributs sont dclars le plus souvent l'intrieur du constructeur, plus gnralement l'intrieur de toute mthode, voire l'extrieure de la classe. Pour y faire rfrence l'intrieur d'une mthode on fait prcder le nom de l'attribut de \codes{self.}, l'extrieur de la classe, c'est le nom de l'instance suivi d'un point \codes{.} qui prcde le nom de l'attribut comme le montre le prcdent exemple. - -Une mthode est dclare l'intrieur de la classe. Elle accepte invariablement au moins un paramtre qui est \codes{self} comme dans le prcdent exemple. Les rgles d'accs sont les mmes que pour les attributs. Elles acceptent galement la rcursivit et les paramtres par dfaut l'exception du premier. Chaque instance de classe est galement munie d'un dictionnaire \codes{\_\_dict\_\_} qui recense tous les attributs. -% -\begin{verbatimx} -class ma_classe : - def __init__ (self, att1, att2, att3) : - self.att1 = att1 # attribut - self.att2 = att2 # attribut - self.att3 = att3 # attribut - self.att4 = att1 * att2 * att3 # attribut - - def calcule (self,x) : # mthode - return self.att1 * self.att2 * self.att3 * x - -a = ma_classe (1,2,3) -print (a.att1) # affiche 1 -print (a.__dict__ ["att1"]) # affiche aussi 1, ligne quivalente la prcdente -print (a.calcule(2)) # appel d'une mthode -\end{verbatimx} - - -\subsection{Mthodes statiques}\indexfr{mthode statique} - -Les mthodes statiques sont comme des fonctions~: elle ne ncessite pas d'instance d'un object pour tre appele. -% -\begin{verbatimx} -class ma_classe : - def __init__ (self, att1, att2, att3) : - # ... - - @staticmethod - def calcule_static (x,y) : # mthode statique - return x * y - -print (ma_classe.calcule_static(2,3)) # appel d'une mthode statique -\end{verbatimx} - - - -\subsection{Oprateurs}\indexfr{oprateur} - -Les oprateurs sont des mthodes qui permettent une manipulation plus simple des objets. Leur nom est fix par convention par le langage \python, ils commencent et terminent par \codes{\_\_}. -% -\begin{verbatimx} -class ma_classe : - def __init__ (self, att1, att2, att3) : - self.att1 = att1 - self.att2 = att2 - self.att3 = att3 - self.att4 = att1 * att2 * att3 - - def __add__ (self, a) : - return ma_classe (self.att1 + a.att1, self.att2 + a.att2, \ - self.att3 + a.att3, self.att4 + a.att4) - -a = ma_classe (1,2,3) -b = ma_classe (4,5,6) -c = a + b # n'a de sens que si l'oprateur __add__ a t redfini -\end{verbatimx} -% -Il existe un oprateur spcifique pour chaque opration, cet oprateur permet de donner un sens une addition, une soustraction, ..., de deux instances d'une classe. L'oprateur \codes{\_\_str\_\_} retourne une chane de caractres et est appel par l'instruction \codes{print}. L'oprateur \codes{\_\_cmp\_\_} retourne un entier permettant des instances de la classe d'tre compares et tries par une liste. - - -\subsection{Copie d'instances}\indexfr{copie} - -Les instances de classes sont des objets modifiables, comme pour les listes, une simple affectation ne signifie pas une copie mais un second nom pour dsigner le mme objet. -% -\begin{verbatimx} -class ma_classe : - def __init__ (self, att1, att2, att3) : - self.att1 = att1 - self.att2 = att2 - self.att3 = att3 - self.att4 = att1 * att2 * att3 - -a = ma_classe (1,2,3) -b = a -b.att1 = -16 -print (a.att1) # affiche -16 -print (b.att1) # affiche -16 -\end{verbatimx} -% -Il faut donc copier explicitement l'instance pour obtenir le rsultat souhait. -% -\begin{verbatimx} -class ma_classe : - def __init__ (self, att1, att2, att3) : - self.att1 = att1 - self.att2 = att2 - self.att3 = att3 - self.att4 = att1 * att2 * att3 - -a = ma_classe (1,2,3) -import copy -b = copy.copy (a) -b.att1 = -16 -print (a.att1) # affiche 1 -print (b.att1) # affiche -16 -\end{verbatimx} - - -Lorsque une classe inclut une variable de type classe, il faut utiliser la fonction \codes{deepcopy} et non \codes{copy}. - - - -\subsection{Hritage}\indexfr{hritage} - -L'hritage est l'intrt majeur des classes et de la programmation oriente objet. Lorsqu'une classe hrite d'une autre, elle hrite de ses attributs et de ses mthodes. Le simple fait d'hriter cre donc une classe quivalente. -% -\begin{verbatimx} -class ma_classe : - def __init__ (self, att1, att2, att3) : - self.att1 = att1 - self.att2 = att2 - self.att3 = att3 - self.att4 = att1 * att2 * att3 - -class ma_classe2 (ma_classe) : # hritage simple - pass # pour dire que la classe est vide -\end{verbatimx} -% -Mais hriter permet de faire deux choses : -\begin{enumerate} -\item ajouter des attributs et ajouter des mthodes -\item modifier le comportement d'une mthode existante -\end{enumerate} -% -\begin{verbatimx} -class ma_classe : - def __init__ (self, att1) : - self.att1 = att1 - self.att2 = self.calcul () - - def calcul (self) : - return self.att1 ** 2 - -class ma_classe2 (ma_classe) : - def calcul (self) : - # dans cette mthode, on change le comportement - # de la mthode calcul tout en se servant de celui - # de la classe mre - return ma_classe.calcul (self) * self.att1 - -a = ma_classe (2) -b = ma_classe2 (2) -print (a.att2) # affiche 4 = 2 * 2 -print (b.att2) # affiche 8 = (2*2) * 2 -\end{verbatimx} - - -\subsection{Dcorateur}\indexfr{dcorateur} - -Le langage \pythons permet quelques simplifications de code avec les dcorateurs comme dans l'exemple suivant~: - -\begin{verbatimx} -def makebold(fn): - def wrapped(): - return "" + fn() + "" - return wrapped - -def makeitalic(fn): - def wrapped(): - return "" + fn() + "" - return wrapped - -@makebold -@makeitalic -def hello(): - return "hello world" - -print (hello()) ## returns hello world -\end{verbatimx} - -Il est possible aussi de dfinir des proprits ou \textit{properties}. Cela permet de sparer l'affectation de l'accs un membre d'une classe sans changer la notation~:\indexfr{proprit}\indexfr{property} - -\begin{verbatimx} -class C(object): - def __init__ (self) : - self._p = 1 - @property - def p(self): - return self._p - @p.setter - def p(self, val): - self._p = val * 2 - -obj = C() -print (obj.p) # utilise p_get, affiche 1 -obj.p = 5 # utilise p_set -print (obj.p) # utilise p_get affiche 10 -\end{verbatimx} - - -\section{Fichiers}\indexfr{fichier} - -L'criture et la lecture dans un fichier s'effectuent toujours de la mme manire. On ouvre le fichier en mode criture ou lecture, on crit ou on lit, puis on ferme le fichier, le laissant disponible pour une utilisation ultrieure. Ce paragraphe ne prsente pas l'criture ou la lecture dans un format binaire car celle-ci est peu utilise dans ce langage. - - -\subsection{Ecriture dans un fichier texte} - -L'criture dans un fichier texte s'effectue toujours selon le mme schma~: -% -\begin{verbatimx} -f = open ("nom-fichier", "w") # ouverture en mode criture "w" ou criture ajout "a" - -f.write ( s ) # criture de la chane de caractres s -f.write ( s2 ) # criture de la chane de caractres s2 -... - -f.close () # fermeture -\end{verbatimx} -% -Certains codes sont fort utiles lors de l'criture de fichiers texte~: -\begin{center} -\begin{tabular}{ll} -\codes{\backslash n} & passage la ligne \\ -\codes{\backslash t} & insertion d'une tabulation, indique un passage la colonne suivante dans le logiciel Excel -\end{tabular} -\end{center} - -\textbf{Version 3.x :} une autre criture est possible qui permet d'viter l'appel la mthode \codes{close}.\label{section_res_fichier} -\begin{verbatimx} -with open ("nom-fichier", "w") as f : - f.write ( s ) - f.write ( s2 ) -\end{verbatimx} - -L'usage d'un encoding est frquent lorsqu'on manipule des fichiers issus d'Internet. Le plus rpandu est \codes{utf8}. Il est spcifi en-tte des pages web tlcharges. L'exemple qui suit n'est valable qu'avec la version~3. Il est recommand de l'utiliser ds qu'on manipule les encodings. -\begin{verbatimx} -with open ("nom-fichier", "w", encoding = "utf8") as f : - f.write ( s ) - f.write ( s2 ) -\end{verbatimx} - -\subsection{Lecture dans un fichier texte} - -La lecture est le symtrique de l'criture. En voici un exemple, la seule chose qui change d'un programme l'autre est ce qu'on fait des lignes extraites. -% -\begin{verbatimx} -f = open ("essai.txt", "r") # ouverture du fichier en mode lecture -l = f.readlines () # lecture de toutes les lignes, - # elles sont places dans une liste -f.close () # fermeture du fichier - -for s in l : print (s) # on affiche les lignes l'cran -\end{verbatimx} - -\textbf{Version 3.x :} la mme syntaxe avec le mot-cl \codes{with} et l'encoding existe. - -\begin{xremark}{code de fin de ligne} -Lors le programme prcdent lit une ligne dans un fichier, le rsultat lu inclut le ou les caractres (\codes{\backslash n \; \backslash r} qui marquent la fin d'une ligne. C'est pour cela que la lecture est parfois suivie d'une tape de nettoyage. \indexfrr{fichier}{fin de ligne} -% -\begin{verbatimx} -f = open ("essai.txt", "r") # ouverture du fichier en mode lecture -l = f.readlines () # lecture de toutes les lignes, - # elles sont places dans une liste places dans une liste -f.close () # fermeture du fichier - -l_net = [] # contiendra la liste nettoye des lignes du fichier -for s in l : - s2 = s.replace ("\n", "") # on supprime le code de fin de ligne \n - s2 = s2.replace ("\r", "") # on supprime le code de fin de ligne \r - # (Windows uniquement) - s2 = s2.strip("\r\n") # cette ligne est quivalente aux deux prcdentes - l_net.append (s2) # on ajoute le rsultat la liste nettoye -\end{verbatimx} -\end{xremark} - -\begin{xremark}{fichier format} -Les fichiers textes ont de nombreux formats, on peut citer HTML ou XML qui sont des formats balises. Leur lecture utilise des modules comme \codes{HTMLParser} ou \codes{xml.sax} dont la description sort du cadre de ce document.\indexfrr{HTML}{lecture}\indexfrr{XML}{lecture}\indexfrr{fichier}{HTML}\indexfrr{fichier}{XML} Un autre format est souvent utilis avec le logiciel \textit{Excel}\indexoutil{Excel} ou tout autre tableur. Lorsqu'on enregistre une feuille de calcul sous format texte, le fichier obtenu est organis en colonnes~: sur une mme ligne, les informations sont disposes en colonnes dlimites par un sparateur qui est souvent une tabulation (\codes{\backslash t}) ou un point virgule. -% -\begin{verbatimx} -nom ; prnom ; livre -Hugo ; Victor ; Les misrables -Kessel ; Joseph ; Le lion -Woolf ; Virginia ; Mrs Dalloway -Calvino ; Italo ; Le baron perch -\end{verbatimx} -% -Pour lire ce fichier, il est ncessaire de scinder chaque ligne en une liste de chanes de caractres. On utilise pour cela la mthode \codes{split} des chanes de caractres. -% -\begin{verbatimx} -f = open ("essai.txt", "r") # ouverture du fichier en mode lecture -l = f.readlines () # lecture de toutes les lignes, places dans une liste -f.close () # fermeture du fichier - -for s in l : - s2 = s.replace ("\n", "") # on supprime le code de fin de ligne \n - s2 = s2.replace ("\r", "") # on supprime le code de fin de ligne \r (Windows uniquement) - case = s2.split (";") - if len (case) >= 3 : - print (case [1], " ", case [0], " a crit ", case [2]) - # Version 2.x : print ... -\end{verbatimx} -\end{xremark} - - -\section{Modules}\indexfr{module} - -Le concept de module permet de rpartir diffrentes parties d'un programme sur plusieurs fichiers. Il existe deux types de modules~: ceux disponibles sur Internet (programms par d'autres) et ceux que l'on programme soi-mme. Les premiers sont souvent fournis avec un programme d'installation automatique ou dans le cas o ils sont manquants, des instructions permettant de l'installer. Les seconds sont crits dans le mme rpertoire que le fichier principal. On enregistre le module suivant sous le nom \codes{geometrie.py}. -% -\begin{verbatimx} -# dfinition du module geometrie.py - -def carre (x) : - return x ** 2 - -class point : - def __init__ (self,x,y) : - self.x, self.y = x,y - - def norme (self) : - return (self.x ** 2 + self.y ** 2) ** 0.5 -\end{verbatimx} -% -Pour utiliser une fonction ou une classe du module \codes{geometrie.py}, on utilise une des syntaxes suivantes~: -% -\begin{enumerate} -\item Premire syntaxe~: -\begin{verbatimx} -import geometrie -print (geometrie.carre (1.5)) -p = geometrie.point (1,2) -\end{verbatimx} -% -\item Deuxime syntaxe~: -\begin{verbatimx} -import geometrie as GEO # on donne un pseudonyme au module geometrie -print (GEO.carre (1.5)) -p = GEO.point (1,2) -\end{verbatimx} -% -\item Troisime syntaxe~: le module est utilis trs souvent, mme un pseudonyme est trop long, il faut nanmoins s'assurer que les modules imports de cette mme manire n'incluent pas des fonctions ou classes portant des noms identiques. Dans ce cas, c'est toujours le dernier qui gagne. -\begin{verbatimx} -from geometrie import * -print (carre (1.5)) -p = point (1,2) -\end{verbatimx} -% -\end{enumerate} -% -Dans le cas des modules installs, les trois syntaxes d'utilisation sont aussi valables. On voit aussi souvent apparatre dans un module la condition~: -% -\begin{verbatimx} -if __name__ == "__main__" : - # quelques instructions ici -\end{verbatimx} -% -Ces instructions ne sont excutes que si le module est utilis en tant que programme principal. Lorsque ce fichier est import, elles ne sont jamais excutes. Cela permet d'crire des instructions qui permettent de vrifier si le module ne contient pas d'erreurs. Une fois cette tape effectue, il ne sert rien de la rpter chaque fois que le module est import. C'est pourquoi elles ne sont excutes que si la condition \codes{if \;\_\_name\_\_ == "\_\_main\_\_" :} est vrifie, c'est--dire si le module est le programme principal et non un module. - - - - - -\section{Exceptions}\indexfr{exception} - - -Le petit programme suivant dclenche une erreur parce qu'il effectue une division par zro. -% -\begin{verbatimx} -def inverse (x): - y = 1.0 / x - return y -b = inverse (0) -print (b) -\end{verbatimx} -% -Il dclenche une erreur ou ce qu'on appelle une \emph{exception}. -% -\begin{verbatimx} -Traceback (most recent call last): - File "cours.py", line 2, in ? - y = 1.0 / x -ZeroDivisionError: float division -\end{verbatimx} -% -Le mcanisme des exceptions permet au programme de "rattraper" les erreurs, de dtecter qu'une erreur s'est produite et d'agir en consquence afin que le programme ne s'arrte pas~: -% -\begin{verbatimx} -def inverse (x): - y = 1.0 / x - return y -try : - b = inverse (0) # dclenche une exception - print (b) -except : - print ("le programme a dclench une erreur") -\end{verbatimx} -% -On protge la partie du code l'aide des mots-cls \codes{try} et \codes{except}. Entre ces deux instructions, s'il se produit une erreur, le programme passe immdiatement ce qui suit l'instruction \codes{except}. On peut mme rcuprer le message d'erreur correspondant~: -% -\begin{verbatimx} -def inverse (x): - y = 1.0 / x - return y -try : - print (inverse (2)) - print (inverse (0)) -except Exception as exc: - print ("exception de type ", exc.__class__) - # affiche exception de type exceptions.ZeroDivisionError - print ("message ", exc) - # affiche le message associ l'exception -\end{verbatimx} -% -On peut aussi dcider que le programme agira diffremment selon l'erreur produite. Dans l'exemple suivant, le programme teste d'abord si l'erreur est de type \codes{ZeroDivisionError} auquel cas il affiche le message \textit{division par zro}. Pour un autre type d'erreur, il regarde s'il y a d'autres instructions \codes{except} qui s'y rapportent. S'il y en a une, il excute les lignes qui la suivent, sinon, le programme s'arrte et dclenche une erreur. -% -\begin{verbatimx} -def inverse (x): - y = 1.0 / x - return y -try : - print ((-2.1) ** 3.1) - print (inverse (2)) - print (inverse (0)) -except ZeroDivisionError: - print ("division par zro") -except Exception as exc: - print ("erreur insouponne : ", exc.__class__) - print ("message ", exc) -\end{verbatimx} -% -Les instructions \codes{try} et \codes{except} peuvent apparatre dans le programme principal, dans une boucle, un test, une fonction, s'imbriquer les unes dans les autres. Il est possible de dclencher soi-mme une exception avec l'instruction \codes{raise} et ou de dfinir ses propres exceptions en crant une classe hritant d'une classe d'exception. L'exemple suivant regroupe tous ces cas. -% -\begin{verbatimx} -class AucunChiffre (Exception) : - """chane de caractres contenant - aussi autre chose que des chiffres""" - - def __init__(self, s, f = "") : - Exception.__init__(self, s) - self.s = s - self.f = f - - def __str__(self) : - return """exception AucunChiffre, lance depuis la fonction """ + self.f + \ - " avec le paramtre " + self.s - -def conversion (s) : - """conversion d'une chane de caractres en entier""" - if not s.isdigit () : - raise AucunChiffre, (s, "conversion") - return int (s) - -try : - s = "123a" - i = conversion (s) - print (s, " = ", i) -except AucunChiffre as exc : - print (AucunChiffre.__doc__, " : ", exc) - print ("fonction : ", exc.f) -\end{verbatimx} - - -\section{Erreurs, confusions frquentes} - -\subsection{Variables} - -\subsubsection{Chane de caractres = tableau de caractres} -\indexfrr{confusion}{chane = tableau} - -Une chane de caractres est un tableau de caractres~: pour accder un caractre, on procde comme pour une liste. -% -\begin{verbatimx} -s = "abcdefghijklmnopqrstuvwxyz" -print (s [4]) # affiche "e" -print (s [4:6]) # affiche "ef" -\end{verbatimx} - - - -\subsubsection{Guillemets ou pas} -\indexfr{guillemet} -Doit-on mettre des guillemets ou non~? -% -\begin{verbatimx} -l = [ un, deux, trois, quatre ] -up = [] -for i in range (0, len (l)) : - up.append ( l [i].upper () ) -\end{verbatimx} -% -Le code prcdent ne fonctionne pas car il n'y a pas de guillemets autour de \codes{un}, \codes{deux}, \codes{trois}, \codes{quatre}. Le langage considre alors ces quatre mots comme des variables~: un identificateur qui dsigne une information. Mais comme ces variables n'existent pas, ces identifiants ne sont relis aucun contenu et l'interprteur \pythons ne comprend pas. - -Un mot entour de guillemets (ou d'apostrophes) dfinit un contenu. Sans guillemet (ou apostrophe), il dfinit une variable qui permet de manipuler un contenu tout simplement en donnant la possibilit au programmeur de le nommer. Autrement dit, pour manipuler une chane de caractres, il faut affecter ce contenu une variable. Les guillemets n'apparaissent plus par la suite car on doit utiliser la variable pour la manipuler. - - -\subsection{Boucles} - -\subsubsection{\codes{range} ou pas \codes{range} } -\indexfrr{boucle}{for}\indexfrr{boucle}{while} -% -Les deux programmes suivant sont quivalents. La seule diffrence rside dans l'criture dans la boucle \codes{for} qui utilise dans le premier cas la fonction \codes{range} et dans l'autre non. -% -\begin{verbatimx} -l = [ "un", "deux", "trois", "quatre" ] -up = [] -for i in range (0, len (l)) : - up.append ( l [i].upper () ) -\end{verbatimx} -% -Lorsqu'on utilise la fonction \codes{range}, on dispose lors de la boucle de deux informations, l'indice \codes{i} et l'lment \codes{l [i]}. Si l'indice n'est pas utile, il est possible de simplifier la boucle comme suit. -% -\begin{verbatimx} -l = [ "un", "deux", "trois", "quatre" ] -up = [] -for m in l : - up.append ( m.upper () ) -\end{verbatimx} -% -En gnral, on se sert de la boucle qui utilise la fonction \codes{range} dans deux cas~: -\begin{enumerate} -\item On souhaite faire des oprations sur les lments qui prcdent ou suivent l'lment en question, ce qui ncessite de connatre l'indice. -\item On parcourt deux listes de mme taille la fois~: l'indice dsigne la position de deux lments, un dans chaque liste. -\end{enumerate} - -\subsubsection{Initialisation} -\indexfrr{confusion}{initialisation d'une boucle} - -Une boucle est souvent utilise pour faire une somme, calculer un maximum~: garder un unique rsultat en parcourant une liste. Une boucle de ce type est toujours prcde d'une tape d'initialisation qui consiste donner une valeur au rsultat~: celle qu'il aurait si la liste tait vide. -% -\begin{verbatimx} -l = [ "un", "deux", "trois", "quatre" ] -s = "" -for m in l : - s += m # concatnation des mots en une seule chane de caractres -\end{verbatimx} - - -\subsection{Fonctions} - -\subsubsection{Diffrence entre \codes{print} et \codes{return}} -\indexfrr{confusion}{diffrence entre \codes{print} et \codes{return}} - -A la fin d'un calcul, afin de voir son rsultat, on utilise souvent l'instruction \codes{print}. On peut se demander alors si la fin de chaque fonction, il ne faudrait pas utiliser l'instruction \codes{print}. A quoi servirait alors l'instruction \codes{return}~? On suppose qu'un calcul est en fait le rsultat de trois calculs la suite~: -\begin{verbatimx} -a = calcul1 (3) -b = calcul2 (a) -c = calcul3 (b) # c rsultat souhait et affich -\end{verbatimx} -% -Chaque terme \codes{calculx} cache une fonction or seul le rsultat de la dernire nous intresse et doit tre affich. Pour les deux premires, la seule chose importante est que leur rsultat soit transmis la fonction suivante et ceci ne peut se faire que grce l'instruction \codes{return}. L'instruction \codes{print} insre dans le code de la fonction \codes{calcul1} ou \codes{calcul2} permettra d'afficher le rsultat mais ne le transmettra pas~: l'instruction \codes{return} est donc indispensable, \codes{print} facultative. - -En revanche, dans la dernire fonction \codes{calcul3}, il est possible de se passer de \codes{return} et de se contenter uniquement d'un \codes{print}. Cependant, il est conseill d'utiliser quand mme \codes{return} au cas o le rsultat de la fonction \codes{calcul3} serait utilis par une autre fonction, \codes{calcul4} par exemple. - -\begin{verbatimx} -def calcul1(x) : - return x+3 -y = calcul1(4) -print (y) # affiche None - # car la fonction calcul1 ne retourne pas de rsultat, elle l'affiche -\end{verbatimx} - -Cela peut provoquer des erreurs lorsqu'on essaye d'utiliser ce rsultat dans un calcul par la suite. - -\begin{verbatimx} -def calcul1(x) : print (x+3) -def calcul2(x) : return calcul1(x) + 5 -y = calcul2(4) # affiche l'erreur - # ported operand type(s) for +: 'NoneType' and 'int' -\end{verbatimx} - - - - - -\section{Trois conseils pour crire un programme} - -\subsection{Des petites fonctions} - -Pour plusieurs raisons~: -\begin{enumerate} -\item Il est plus facile de corriger un programme qui est constitu de petites fonctions plutt que de quelques grandes. Chaque fonction peut tre vrifie sparment. -\item Il est plus facile de rutiliser des petites fonctions. -\item Il est plus facile de rpartir le travail sur plusieurs personnes. -\end{enumerate} - -\begin{xremark}{variables globales} -Il vaut mieux viter les variables globales qui sont considres que comme des paramtres cachs. -\end{xremark} - - - -\subsection{Sparer les calculs, le chargement des donnes, l'interface graphique} - -Pour plusieurs raisons~: -\begin{enumerate} -\item Il est plus facile de vrifier un calcul s'il est dans une fonction indpendante plutt que cach dans le code d'une interface graphique. -\item C'est facile de faire un calcul une fois lorsqu'un utilisateur appuie sur un bouton, si on veut faire ce calcul cent fois, on ne peut pas lui demander d'appuyer cent fois sur le mme bouton. -\item Les calculs ou le chargement des donnes peuvent tre utiliss dans d'autres programmes. -\end{enumerate} - -\subsection{Utiliser des fonctions de tests} - -Ces fonctions peuvent tre excutes au dbut du programme pour vrifier que certaines parties du programme fonctionnent toujours mme aprs les avoir modifies. - -L'exemple suivant considre une fonction qui doit retourner une somme relle mme si les lments de la liste sont entiers. On crit la fonction qui vrifie cela. - -\begin{verbatimx} -def somme_double (liste) : - return 1.0 * sum(liste) - -def test_somme_double () : - y = somme_double([ 1 ]) / 2 - if y == 0 : raise Exception ("valeur > 0 attendue") - -if __name__ == "__main__" : - test_somme_double() -\end{verbatimx} - -Si plus tard, quelqu'un modifie la fonction \codes{somme\_double} en enlevant la multiplication parce qu'il considre cela inutile. La fonction de test provoquera une erreur. Elle est l pour rappeler que la fonction a t programme pour retourner un nombre rel et que quiconque l'utilise s'attend ce qu'elle retourne ce type de rsultat. - -\begin{verbatimx} -Traceback (most recent call last): - File "conseil.py", line 10, in - test_somme_double() - File "conseil.py", line 7, in test_somme_double - if y == 0 : raise Exception ("valeur > 0 attendue") -Exception: valeur > 0 attendue -\end{verbatimx} - -\section{Trucs et astuces} - - -\subsection{Partager du code} - -Il existe aujourd'hui des solutions qui permettent d'viter les envois de programme par email. Des outil comme \textit{DropBox}, \textit{SkyDrive}, \textit{GoogleDrive} permettent de partager un rpertoire. Un mme rpertoire peut tre partag sur plusieurs ordinateurs et plusieurs personnes. Une modification (y compris une suppression) sur l'une des rpliques sera propage sur tous les ordinateurs ds qu'ils sont connects Internet. - -Il est possible de coupler cette solution avec \textit{SVN} ou \textit{TortoiseSVN} qui sont des logiciels de suivis de source. On garde la fois la dernire version et l'historique des modifications\footnote{\httpstyle{http://mlevit.wordpress.com/2009/11/18/how-to-use-subversion-dropbox-to-create-an-effective-work-managementbackup-system/}}. - - -\subsection{Moteurs de recherche} - -Lorsqu'on ne comprend un message d'erreur, il est souvent utile de recopier le texte dans un moteur de recherche (Google, Bing, ...). Il est trs rare de ne pas russir trouver d'indices. - - - - - - -\section{Rfrences} - -\subsection{Quelques sites} - -\begin{itemize} -\item \httpstyle{http://www.siteduzero.com/informatique/tutoriels/apprenez-a-programmer-en-python} -\item \httpstyle{https://www.khanacademy.org/science/computer-science/v/introduction-to-programs-data-types-and-variables} -\end{itemize} - - -\subsection{Quelques modules} - -\begin{itemize} -\item \codes{numpy}~: calcul matriciel. -\item \codes{scipy}~: calcul scientifique. -\item \codes{matplotlib}~: graphique. -\item \codes{pygame}~: jeux. -\item \codes{PyQt}~: interface graphique. -\item \codes{NetworkX}~: dessiner des graphes. -\end{itemize} - - -\subsection{Quelques livres} - -\begin{itemize} -\item \citeindex{Pilgrim2011}~: livre trs dtaill sur le langage et ses modules. -\item \citeindex{Swinnen2012}~: initiation au langage. -\item \citeindex{Dupr2011}~: initiation au langage et exercices. -\item \citeindex{Ziad2011}~: aborde le langage et diffrent aspects de l'utilisation du langage pour construire une application robuste (tests unitaires...) -\item \citeindex{Dayley2007}~: rsum du langage, peu d'explications, beaucoup d'exemples, aborde beaucoup de sujets (envoyer un email, internet, ...). - Bonne source pour u copier/coller. -\item \citeindex{Brucher2008}, \citeindex{Bailly2008}~: pour les experts qui souhaitent crire des programmes en \pythons et \textit{C++}. -\item \citeindex{McKinney2012}~: pour faire de l'analyse des donnes avec \python. -\end{itemize} - - -\firstpassagedo{ - \subsection{Bibliographie} - \begin{thebibliography}{99} - \input{python_cours_biblio.tex} - \end{thebibliography} - %\section{Index} - \begin{flushleft} - \printindex - \end{flushleft} -} - - - -\input{../../common/paper_end.tex}% - diff --git a/_unittests/ut_documentation/test_run_notebooks_numpy.py b/_unittests/ut_documentation/test_run_notebooks_numpy.py deleted file mode 100644 index d4781ce9..00000000 --- a/_unittests/ut_documentation/test_run_notebooks_numpy.py +++ /dev/null @@ -1,37 +0,0 @@ -# -*- coding: utf-8 -*- -""" -@brief test log(time=33s) -""" -import os -import unittest -from pyquickhelper.loghelper import fLOG -from pyquickhelper.pycode import get_temp_folder -from pyquickhelper.ipythonhelper import execute_notebook_list, execute_notebook_list_finalize_ut -import teachpyx - - -class TestRunNotebooksNumpy(unittest.TestCase): - - def test_run_notebook_pandas(self): - fLOG( - __file__, - self._testMethodName, - OutputPrint=__name__ == "__main__") - - temp = get_temp_folder(__file__, "temp_run_notebooks_numpy") - - # selection of notebooks - fnb = os.path.normpath(os.path.join( - os.path.abspath(os.path.dirname(__file__)), "..", "..", "_doc", "notebooks", "numpy")) - keepnote = [] - for f in os.listdir(fnb): - if os.path.splitext(f)[-1] == ".ipynb" and "_long" not in f: - keepnote.append(os.path.join(fnb, f)) - - # run the notebooks - res = execute_notebook_list(temp, keepnote, fLOG=fLOG) - execute_notebook_list_finalize_ut(res, fLOG=fLOG, dump=teachpyx) - - -if __name__ == "__main__": - unittest.main() diff --git a/_unittests/ut_documentation/test_run_notebooks_pandas.py b/_unittests/ut_documentation/test_run_notebooks_pandas.py deleted file mode 100644 index 73c6fa21..00000000 --- a/_unittests/ut_documentation/test_run_notebooks_pandas.py +++ /dev/null @@ -1,37 +0,0 @@ -# -*- coding: utf-8 -*- -""" -@brief test log(time=33s) -""" -import os -import unittest -from pyquickhelper.loghelper import fLOG -from pyquickhelper.pycode import get_temp_folder -from pyquickhelper.ipythonhelper import execute_notebook_list, execute_notebook_list_finalize_ut -import teachpyx - - -class TestRunNotebooksPandas(unittest.TestCase): - - def test_run_notebook_pandas(self): - fLOG( - __file__, - self._testMethodName, - OutputPrint=__name__ == "__main__") - - temp = get_temp_folder(__file__, "temp_run_notebooks_pandas") - - # selection of notebooks - fnb = os.path.normpath(os.path.join( - os.path.abspath(os.path.dirname(__file__)), "..", "..", "_doc", "notebooks", "pandas")) - keepnote = [] - for f in os.listdir(fnb): - if os.path.splitext(f)[-1] == ".ipynb" and "_long" not in f: - keepnote.append(os.path.join(fnb, f)) - - # run the notebooks - res = execute_notebook_list(temp, keepnote, fLOG=fLOG) - execute_notebook_list_finalize_ut(res, fLOG=fLOG, dump=teachpyx) - - -if __name__ == "__main__": - unittest.main() diff --git a/_unittests/ut_documentation/test_run_notebooks_python.py b/_unittests/ut_documentation/test_run_notebooks_python.py deleted file mode 100644 index fc0524c1..00000000 --- a/_unittests/ut_documentation/test_run_notebooks_python.py +++ /dev/null @@ -1,37 +0,0 @@ -# -*- coding: utf-8 -*- -""" -@brief test log(time=33s) -""" -import os -import unittest -from pyquickhelper.loghelper import fLOG -from pyquickhelper.pycode import get_temp_folder -from pyquickhelper.ipythonhelper import execute_notebook_list, execute_notebook_list_finalize_ut -import teachpyx - - -class TestRunNotebooksPython(unittest.TestCase): - - def test_run_notebook_python(self): - fLOG( - __file__, - self._testMethodName, - OutputPrint=__name__ == "__main__") - - temp = get_temp_folder(__file__, "temp_run_notebooks_python") - - # selection of notebooks - fnb = os.path.normpath(os.path.join( - os.path.abspath(os.path.dirname(__file__)), "..", "..", "_doc", "notebooks", "python")) - keepnote = [] - for f in os.listdir(fnb): - if os.path.splitext(f)[-1] == ".ipynb" and "_long" not in f and "protobuf" not in f: - keepnote.append(os.path.join(fnb, f)) - - # run the notebooks - res = execute_notebook_list(temp, keepnote, fLOG=fLOG) - execute_notebook_list_finalize_ut(res, fLOG=fLOG, dump=teachpyx) - - -if __name__ == "__main__": - unittest.main() diff --git a/_unittests/ut_documentation/test_run_notebooks_python_protobuf.py b/_unittests/ut_documentation/test_run_notebooks_python_protobuf.py deleted file mode 100644 index 86b89b43..00000000 --- a/_unittests/ut_documentation/test_run_notebooks_python_protobuf.py +++ /dev/null @@ -1,38 +0,0 @@ -# -*- coding: utf-8 -*- -""" -@brief test log(time=67s) -""" -import os -import unittest -from pyquickhelper.loghelper import fLOG -from pyquickhelper.pycode import get_temp_folder, skipif_travis -from pyquickhelper.ipythonhelper import execute_notebook_list, execute_notebook_list_finalize_ut -import teachpyx - - -class TestRunNotebooksPythonProtobuf(unittest.TestCase): - - @skipif_travis("'Permission denied: 'bin/protoc'") - def test_run_notebook_python_protobuf(self): - fLOG( - __file__, - self._testMethodName, - OutputPrint=__name__ == "__main__") - - temp = get_temp_folder(__file__, "temp_run_notebooks_python_protobuf") - - # selection of notebooks - fnb = os.path.normpath(os.path.join( - os.path.abspath(os.path.dirname(__file__)), "..", "..", "_doc", "notebooks", "python")) - keepnote = [] - for f in os.listdir(fnb): - if os.path.splitext(f)[-1] == ".ipynb" and "protobuf" in f: - keepnote.append(os.path.join(fnb, f)) - - # run the notebooks - res = execute_notebook_list(temp, keepnote, fLOG=fLOG) - execute_notebook_list_finalize_ut(res, fLOG=fLOG, dump=teachpyx) - - -if __name__ == "__main__": - unittest.main() diff --git a/_unittests/ut_examples/test_classique.py b/_unittests/ut_examples/test_classique.py index 9adbdec6..e9ca7ada 100644 --- a/_unittests/ut_examples/test_classique.py +++ b/_unittests/ut_examples/test_classique.py @@ -6,12 +6,16 @@ """ import unittest from datetime import datetime -from teachpyx.examples.classiques import commentaire_accentues, dix_entiers_carre, repetition_a_eviter, dictionnaire_modifie_dans_la_boucle +from teachpyx.examples.classiques import ( + commentaire_accentues, + dix_entiers_carre, + repetition_a_eviter, + dictionnaire_modifie_dans_la_boucle, +) from teachpyx.examples.classiques import str2date class TestClassiques(unittest.TestCase): - def test_fonctions(self): commentaire_accentues() r = dix_entiers_carre() @@ -21,8 +25,7 @@ def test_fonctions(self): r2 = repetition_a_eviter([4, 5], True) self.assertEqual(r2, 0.25) r = dictionnaire_modifie_dans_la_boucle() - self.assertEqual( - r, ([0, 1, 2, 4, 5, 6], {0: 0, 1: 1, 2: 2, 5: 5, 6: 6})) + self.assertEqual(r, ([0, 1, 2, 4, 5, 6], {0: 0, 1: 1, 2: 2, 5: 5, 6: 6})) r = str2date("11/8/1975") self.assertEqual(r, datetime(1975, 8, 11)) diff --git a/_unittests/ut_examples/test_classique_permutation.py b/_unittests/ut_examples/test_classique_permutation.py index 1a357f82..a1fa179f 100644 --- a/_unittests/ut_examples/test_classique_permutation.py +++ b/_unittests/ut_examples/test_classique_permutation.py @@ -6,11 +6,13 @@ """ import unittest import itertools -from teachpyx.examples.construction_classique import enumerate_permutations_recursive, enumerate_permutations +from teachpyx.examples.construction_classique import ( + enumerate_permutations_recursive, + enumerate_permutations, +) -class TestClassiquesPermutation (unittest.TestCase): - +class TestClassiquesPermutation(unittest.TestCase): def test_permutation(self): self.maxDiff = None ens = list(range(5)) diff --git a/_unittests/ut_examples/test_construction_classique.py b/_unittests/ut_examples/test_construction_classique.py index cde8574c..b613352d 100644 --- a/_unittests/ut_examples/test_construction_classique.py +++ b/_unittests/ut_examples/test_construction_classique.py @@ -6,14 +6,22 @@ """ import unittest from teachpyx.examples.construction_classique import ( - recherche, minindex, text2mat, compte, - integrale, vect2mat, mat2vect, recherche_dichotomique, - mat2text, triindex, construit_matrice_carree, - somme) + recherche, + minindex, + text2mat, + compte, + integrale, + vect2mat, + mat2vect, + recherche_dichotomique, + mat2text, + triindex, + construit_matrice_carree, + somme, +) class TestConstructionClassique(unittest.TestCase): - def test_fonction(self): self.assertEqual(recherche([2, 3, 45], 3), 1) self.assertEqual(recherche([2, 3, 45], 4), -1) @@ -27,10 +35,10 @@ def test_fonction(self): self.assertEqual(t, s) tab = ["zero", "un", "deux"] r = triindex(tab) - self.assertEqual(r, [('deux', 2), ('un', 1), ('zero', 0)]) + self.assertEqual(r, [("deux", 2), ("un", 1), ("zero", 0)]) li = ["un", "deux", "un", "trois"] r = compte(li) - self.assertEqual(r, {'trois': 1, 'deux': 1, 'un': 2}) + self.assertEqual(r, {"trois": 1, "deux": 1, "un": 2}) mat = [[0, 1, 2], [3, 4, 5]] r = mat2vect(mat) self.assertEqual(r, [0, 1, 2, 3, 4, 5]) diff --git a/_unittests/ut_examples/test_numpysex.py b/_unittests/ut_examples/test_numpysex.py index c5f9edb9..3ffd0869 100644 --- a/_unittests/ut_examples/test_numpysex.py +++ b/_unittests/ut_examples/test_numpysex.py @@ -10,7 +10,6 @@ class TestNumpys(unittest.TestCase): - def test_numpys(self): exp = [[0, 1, 2], [4, 5, 6]] mat = numpy.array(exp) diff --git a/_unittests/ut_faq/test_faq_exception.py b/_unittests/ut_faq/test_faq_exception.py index 45e56562..9e9d3f70 100644 --- a/_unittests/ut_faq/test_faq_exception.py +++ b/_unittests/ut_faq/test_faq_exception.py @@ -7,7 +7,6 @@ class TestFaqException(ExtTestCase): - def test_call_back(self): def insidef(): ft = call_stack() diff --git a/_unittests/ut_faq/test_faq_missing.py b/_unittests/ut_faq/test_faq_missing.py index 775bbefc..ce527343 100644 --- a/_unittests/ut_faq/test_faq_missing.py +++ b/_unittests/ut_faq/test_faq_missing.py @@ -5,13 +5,27 @@ import warnings from datetime import datetime from pyquickhelper.pycode import ExtTestCase -from teachpyx.faq.faq_python import entier_grande_taille, difference_div, python_path, same_variable, stringio -from teachpyx.faq.faq_python import property_example, enumerate_regex_search, sortable_class, list_of_installed_packages -from teachpyx.faq.faq_python import information_about_package, get_month_name, get_day_name +from teachpyx.faq.faq_python import ( + entier_grande_taille, + difference_div, + python_path, + same_variable, + stringio, +) +from teachpyx.faq.faq_python import ( + property_example, + enumerate_regex_search, + sortable_class, + list_of_installed_packages, +) +from teachpyx.faq.faq_python import ( + information_about_package, + get_month_name, + get_day_name, +) class TestFaqMissing(ExtTestCase): - def test_faq_pythonm(self): entier_grande_taille() difference_div() @@ -22,8 +36,8 @@ def test_faq_pythonm(self): property_example() self.assertNotEmpty(list(enumerate_regex_search("r*", "rararr"))) sortable_class([5, 5]) - self.assertEqual(get_month_name(datetime(2016, 4, 5)), 'April') - self.assertEqual(get_day_name(datetime(2016, 4, 17)), 'Sunday') + self.assertEqual(get_month_name(datetime(2016, 4, 5)), "April") + self.assertEqual(get_day_name(datetime(2016, 4, 17)), "Sunday") def test_faq_pythonm_pip(self): try: diff --git a/_unittests/ut_faq/test_faq_numpy.py b/_unittests/ut_faq/test_faq_numpy.py index fc4a5bb8..72d081b4 100644 --- a/_unittests/ut_faq/test_faq_numpy.py +++ b/_unittests/ut_faq/test_faq_numpy.py @@ -7,7 +7,6 @@ class TestFaqNumpy(unittest.TestCase): - def test_missing(self): pi = math.pi fpi = to_float32(pi) diff --git a/_unittests/ut_faq/test_faq_python.py b/_unittests/ut_faq/test_faq_python.py index e41f01ff..ff80da67 100644 --- a/_unittests/ut_faq/test_faq_python.py +++ b/_unittests/ut_faq/test_faq_python.py @@ -3,12 +3,10 @@ """ import unittest import datetime -from teachpyx.faq.faq_python import ( - get_month_name, get_day_name, class_getitem) +from teachpyx.faq.faq_python import get_month_name, get_day_name, class_getitem class TestFaqPython(unittest.TestCase): - def test_month_name(self): dt = datetime.datetime(2016, 1, 25) name = get_month_name(dt) diff --git a/_unittests/ut_xrun_doc/test_documentation_examples.py b/_unittests/ut_xrun_doc/test_documentation_examples.py new file mode 100644 index 00000000..34b56a47 --- /dev/null +++ b/_unittests/ut_xrun_doc/test_documentation_examples.py @@ -0,0 +1,81 @@ +import unittest +import os +import sys +import importlib +import subprocess +import time +from teachpyx import __file__ as onnx_array_api_file +from teachpyx.ext_test_case import ExtTestCase + +VERBOSE = 0 +ROOT = os.path.realpath(os.path.abspath(os.path.join(onnx_array_api_file, "..", ".."))) + + +def import_source(module_file_path, module_name): + if not os.path.exists(module_file_path): + raise FileNotFoundError(module_file_path) + module_spec = importlib.util.spec_from_file_location(module_name, module_file_path) + if module_spec is None: + raise FileNotFoundError( + "Unable to find '{}' in '{}'.".format(module_name, module_file_path) + ) + module = importlib.util.module_from_spec(module_spec) + return module_spec.loader.exec_module(module) + + +class TestDocumentationExamples(ExtTestCase): + def run_test(self, fold: str, name: str, verbose=0) -> int: + ppath = os.environ.get("PYTHONPATH", "") + if len(ppath) == 0: + os.environ["PYTHONPATH"] = ROOT + elif ROOT not in ppath: + sep = ";" if sys.platform == "win32" else ":" + os.environ["PYTHONPATH"] = ppath + sep + ROOT + perf = time.perf_counter() + try: + mod = import_source(fold, os.path.splitext(name)[0]) + assert mod is not None + except FileNotFoundError: + # try another way + cmds = [sys.executable, "-u", os.path.join(fold, name)] + p = subprocess.Popen(cmds, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + res = p.communicate() + out, err = res + st = err.decode("ascii", errors="ignore") + if len(st) > 0 and "Traceback" in st: + if '"dot" not found in path.' in st: + # dot not installed, this part + # is tested in onnx framework + if verbose: + print(f"failed: {name!r} due to missing dot.") + return 0 + raise AssertionError( + "Example '{}' (cmd: {} - exec_prefix='{}') " + "failed due to\n{}" + "".format(name, cmds, sys.exec_prefix, st) + ) + dt = time.perf_counter() - perf + if verbose: + print(f"{dt:.3f}: run {name!r}") + return 1 + + @classmethod + def add_test_methods(cls): + this = os.path.abspath(os.path.dirname(__file__)) + fold = os.path.normpath(os.path.join(this, "..", "..", "_doc", "examples")) + found = os.listdir(fold) + for name in found: + if name.startswith("plot_") and name.endswith(".py"): + short_name = os.path.split(os.path.splitext(name)[0])[-1] + + def _test_(self, name=name): + res = self.run_test(fold, name, verbose=VERBOSE) + self.assertTrue(res) + + setattr(cls, f"test_{short_name}", _test_) + + +TestDocumentationExamples.add_test_methods() + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/_unittests/ut_xrun_doc/test_profiling.py b/_unittests/ut_xrun_doc/test_profiling.py new file mode 100644 index 00000000..e6c7e693 --- /dev/null +++ b/_unittests/ut_xrun_doc/test_profiling.py @@ -0,0 +1,195 @@ +""" +@brief test tree node (time=5s) +""" +import os +import sys +import time +import unittest +from io import StringIO +from pstats import SortKey + +import pandas + +from onnx_array_api import __file__ as rootfile +from onnx_array_api.ext_test_case import ExtTestCase, ignore_warnings +from onnx_array_api.profiling import ProfileNode, profile, profile2df, profile2graph + + +class TestProfiling(ExtTestCase): + def test_profile(self): + def simple(): + df = pandas.DataFrame( + [{"A": "x", "AA": "xx", "AAA": "xxx"}, {"AA": "xxxxxxx", "AAA": "xxx"}] + ) + return df.to_csv(StringIO()) + + rootrem = os.path.normpath( + os.path.abspath(os.path.join(os.path.dirname(rootfile), "..")) + ) + ps, res = profile(simple, rootrem=rootrem) + res = res.replace("\\", "/") + self.assertIn("function calls", res) + self.assertNotEmpty(ps) + + ps, res = profile(simple) + res = res.replace("\\", "/") + self.assertIn("function calls", res) + self.assertNotEmpty(ps) + + @ignore_warnings(FutureWarning) + def test_profile_df(self): + def simple(): + def simple2(): + df = pandas.DataFrame( + [ + {"A": "x", "AA": "xx", "AAA": "xxx"}, + {"AA": "xxxxxxx", "AAA": "xxx"}, + ] + ) + return df.to_csv(StringIO()) + + return simple2() + + rootrem = os.path.normpath( + os.path.abspath(os.path.join(os.path.dirname(rootfile), "..")) + ) + ps, df = profile(simple, rootrem=rootrem, as_df=True) + self.assertIsInstance(df, pandas.DataFrame) + self.assertEqual(df.loc[0, "namefct"].split("-")[-1], "simple") + self.assertNotEmpty(ps) + df = profile2df(ps, False) + self.assertIsInstance(df, list) + self.assertIsInstance(df[0], dict) + df = profile2df(ps, True) + self.assertIsInstance(df, pandas.DataFrame) + + def test_profile_df_verbose(self): + calls = [0] + + def f0(t): + calls[0] += 1 + time.sleep(t) + + def f1(t): + calls[0] += 1 + time.sleep(t) + + def f2(): + calls[0] += 1 + f1(0.1) + f1(0.01) + + def f3(): + calls[0] += 1 + f0(0.2) + f1(0.5) + + def f4(): + calls[0] += 1 + f2() + f3() + + ps = profile(f4)[0] + df = self.capture(lambda: profile2df(ps, verbose=True, fLOG=print))[0] + dfi = df.set_index("fct") + self.assertEqual(dfi.loc["f4", "ncalls1"], 1) + self.assertEqual(dfi.loc["f4", "ncalls2"], 1) + + @unittest.skipIf(sys.version_info[:2] < (3, 7), reason="not supported") + def test_profile_graph(self): + calls = [0] + + def f0(t): + calls[0] += 1 + time.sleep(t) + + def f1(t): + calls[0] += 1 + time.sleep(t) + + def f2(): + calls[0] += 1 + f1(0.1) + f1(0.01) + + def f3(): + calls[0] += 1 + f0(0.2) + f1(0.5) + + def f4(): + calls[0] += 1 + f2() + f3() + + ps = profile(f4)[0] + profile2df(ps, verbose=False, clean_text=lambda x: x.split("/")[-1]) + root, nodes = profile2graph(ps, clean_text=lambda x: x.split("/")[-1]) + self.assertEqual(len(nodes), 6) + self.assertIsInstance(nodes, dict) + self.assertIsInstance(root, ProfileNode) + self.assertIn("(", str(root)) + dicts = root.as_dict() + self.assertEqual(10, len(dicts)) + text = root.to_text() + self.assertIn("1 1", text) + self.assertIn(" f1", text) + text = root.to_text(fct_width=20) + self.assertIn("...", text) + root.to_text(sort_key=SortKey.CUMULATIVE) + root.to_text(sort_key=SortKey.TIME) + self.assertRaise( + lambda: root.to_text(sort_key=SortKey.NAME), NotImplementedError + ) + js = root.to_json(indent=2) + self.assertIn('"details"', js) + js = root.to_json(as_str=False) + self.assertIsInstance(js, dict) + + def test_profile_graph_recursive2(self): + def f0(t): + if t < 0.2: + time.sleep(t) + else: + f1(t - 0.1) + + def f1(t): + if t < 0.1: + time.sleep(t) + else: + f0(t) + + def f4(): + f1(0.3) + + ps = profile(f4)[0] + profile2df(ps, verbose=False, clean_text=lambda x: x.split("/")[-1]) + root, nodes = profile2graph(ps, clean_text=lambda x: x.split("/")[-1]) + self.assertEqual(len(nodes), 4) + text = root.to_text() + self.assertIn(" f1", text) + js = root.to_json(indent=2) + self.assertIn('"details"', js) + + def test_profile_graph_recursive1(self): + def f0(t): + if t < 0.1: + time.sleep(t) + else: + f0(t - 0.1) + + def f4(): + f0(0.15) + + ps = profile(f4)[0] + profile2df(ps, verbose=False, clean_text=lambda x: x.split("/")[-1]) + root, nodes = profile2graph(ps, clean_text=lambda x: x.split("/")[-1]) + self.assertEqual(len(nodes), 3) + text = root.to_text() + self.assertIn(" f0", text) + js = root.to_json(indent=2) + self.assertIn('"details"', js) + + +if __name__ == "__main__": + unittest.main() diff --git a/teachpyx/examples/classiques.py b/teachpyx/examples/classiques.py index d8314c0d..d07b9404 100644 --- a/teachpyx/examples/classiques.py +++ b/teachpyx/examples/classiques.py @@ -17,18 +17,20 @@ def commentaire_accentues(): :tag: python :title: Python n'accepte pas les accents - .. index:: accent, accents, utf8, encoding - - Le langage Python a été conçu en langage anglais. Dès qu'on on ajoute un caractère - qui ne fait pas partie de l'alphabet anglais (ponctuation comprise), il déclenche une erreur : + Le langage Python a été conçu en langage anglais. + Dès qu'on on ajoute un caractère + qui ne fait pas partie de l'alphabet anglais + (ponctuation comprise), il déclenche une erreur : :: File "faq_cvxopt.py", line 3 - SyntaxError: Non-UTF-8 code starting with '\xe8' in file faq_cvxopt.py on line 4, but no encoding declared; + SyntaxError: Non-UTF-8 code starting with '\xe8' in + file faq_cvxopt.py on line 4, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details - Pour la résoudre, il faut dire à l'interpréteur que des caractères non anglais peuvent apparaître + Pour la résoudre, il faut dire à l'interpréteur que + des caractères non anglais peuvent apparaître et écrire sur la première ligne du programme : :: @@ -41,12 +43,14 @@ def commentaire_accentues(): # -*- coding: utf-8 -*- - Si vous utilisez l'éditeur `SciTE `_ sous Windows, + Si vous utilisez l'éditeur + `SciTE `_ sous Windows, après avoir ajouté cette ligne avec l'encoding `utf-8`, il est conseillé de fermer le fichier puis de le réouvrir. SciTE le traitera différemment. - **L'encodage ``utf-8`` est la norme sur Internet.** C'est pourquoi il est préférable d'utiliser celui-ci pour + **L'encodage ``utf-8`` est la norme sur Internet.** + C'est pourquoi il est préférable d'utiliser celui-ci pour partager son code via une page Web. """ pass @@ -91,7 +95,7 @@ def dix_entiers_carre(): """ s = 0 for i in range(1, 11): - s += i ** 2 + s += i**2 return s @@ -116,8 +120,10 @@ def variance_a_eviter(serie): s += (obs-moyenne(serie))**2 return s / len(serie) - La fonction ``variance_a_eviter`` appelle la fonction ``moyenne`` à chaque passage - dans la boucle. Or, rien ne change d'un passage à l'autre. Il vaut mieux stocker + La fonction ``variance_a_eviter`` + appelle la fonction ``moyenne`` à chaque passage + dans la boucle. Or, rien ne change d'un passage à l'autre. + Il vaut mieux stocker le résultat dans une variable : :: @@ -203,8 +209,8 @@ def dictionnaire_modifie_dans_la_boucle(): for k,v in d.items(): RuntimeError: dictionary changed size during iteration - Il faut pour éviter cela stocker les éléments qu'on veut modifier pour les supprimer - ensuite. + Il faut pour éviter cela stocker les éléments + qu'on veut modifier pour les supprimer ensuite. :: @@ -217,7 +223,8 @@ def dictionnaire_modifie_dans_la_boucle(): del d[r] Même si Python autorise cela pour les listes, - il est conseillé de s'en abstenir ainsi que pour tout type d'objets qui en contient d'autres. + il est conseillé de s'en abstenir ainsi que pour tout + type d'objets qui en contient d'autres. C'est une habitude qui vous servira pour la plupart des autres langages. """ liste = [0, 1, 2, 3, 4, 5, 6] @@ -248,9 +255,11 @@ def str2date(s, format="%d/%m/%Y"): :title: conversion d'une chaîne de caractère en datetime :tag: Base - C'est le genre de fonction qu'on n'utilise pas souvent mais qu'on peine à retrouver + C'est le genre de fonction qu'on n'utilise pas souvent + mais qu'on peine à retrouver lorsqu'on en a besoin. - Il faut utiliser la fonction `strftime `_. + Il faut utiliser la fonction `strftime + `_. :: diff --git a/teachpyx/examples/construction_classique.py b/teachpyx/examples/construction_classique.py index c4112189..b7f3a941 100644 --- a/teachpyx/examples/construction_classique.py +++ b/teachpyx/examples/construction_classique.py @@ -1,9 +1,5 @@ -# -*- coding: utf-8 -*- -""" -@file -@brief Quelques constructions classiques pour éviter de recoder des variantes d'algorithmes. -classiques. -""" +# coding: utf-8 + from functools import reduce @@ -50,9 +46,12 @@ def recherche (li, c) : else: return -1 - Même si ce bout de code parcourt deux fois le tableau (une fois déterminer - sa présence, une seconde fois pour sa position), ce code est souvent plus rapide - que la première version et la probabilité d'y faire une erreur plus faible. + Même si ce bout de code parcourt deux fois le + tableau (une fois déterminer + sa présence, une seconde fois pour sa position), + ce code est souvent plus rapide + que la première version et la probabilité + d'y faire une erreur plus faible. """ if c in li: return li.index(c) @@ -72,9 +71,11 @@ def minindex(li): :tag: Base :title: minimum avec position - La fonction `min `_ + La fonction `min + `_ retourne le minium d'un tableau mais pas sa position. - Le premier réflexe est alors de recoder le parcours de la liste + Le premier réflexe est alors de recoder le + parcours de la liste tout en conservant la position du minimum. .. runpython:: @@ -87,7 +88,8 @@ def minindex(li): m = i print(m) - Mais il existe une astuce pour obtenir la position sans avoir à le reprogrammer. + Mais il existe une astuce pour obtenir la + position sans avoir à le reprogrammer. .. runpython:: :showcode: @@ -97,7 +99,8 @@ def minindex(li): m = min(k) print(m) - La fonction ``min`` choisit l'élément minimum d'un tableau dont les éléments sont des + La fonction ``min`` choisit l'élément minimum d'un + tableau dont les éléments sont des couples (élément du premier tableau, sa position). Le minimum est choisi en comparant les éléments, et la position départegera les exaequo. @@ -120,9 +123,12 @@ def recherche_dichotomique(li, c): La `recherche dichotomique `_ est plus rapide qu'une recherche classique mais elle suppose que celle-ci s'effectue dans un ensemble trié. - L'idée est de couper en deux l'intervalle de recherche à chaque itération. - Comme l'ensemble est trié, en comparant l'élément cherché à l'élément central, - on peut éliminer une partie de l'ensemble : la moitié inférieure ou supérieure. + L'idée est de couper en deux l'intervalle de + recherche à chaque itération. + Comme l'ensemble est trié, en comparant + l'élément cherché à l'élément central, + on peut éliminer une partie de l'ensemble : + la moitié inférieure ou supérieure. .. runpython:: :showcode: @@ -144,15 +150,16 @@ def recherche_dichotomique(li, c) : if c == li[m]: return m elif c < li[m]: - b = m - 1 # partie supérieure éliminée + b = m - 1 # partie supérieure éliminée else: - a = m + 1 # partie inférieure éliminée + a = m + 1 # partie inférieure éliminée return -1 # élément non trouvé def text2mat(s, sep_row="\n", sep_col="\t"): """ - Convertit une chaîne de caractères en une matrice ( = liste de listes), + Convertit une chaîne de caractères en une matrice + ( = liste de listes), réciproque de la fonction @see fn mat2text. @param s texte à convertir @@ -164,10 +171,13 @@ def text2mat(s, sep_row="\n", sep_col="\t"): :tag: Base :title: conversion d'une chaîne de caractère en matrice - Les quelques lignes qui suivent permettent de décomposer une chaîne de caractères + Les quelques lignes qui suivent permettent de décomposer + une chaîne de caractères en matrice. Chaque ligne et chaque colonne sont séparées par des - séparateurs différents. Ce procédé intervient souvent lorsqu'on récupère des - informations depuis un fichier texte lui-même provenant d'un tableur. + séparateurs différents. Ce procédé intervient souvent + lorsqu'on récupère des + informations depuis un fichier texte lui-même provenant + d'un tableur. .. runpython:: :showcode: @@ -181,15 +191,21 @@ def text2mat(s, sep_row="\n", sep_col="\t"): Comme cette opération est très fréquente lorsqu'on travaille avec les données, on ne l'implémente plus soi-même. On préfère utiliser un module comme - `pandas `_ qui est plus robuste et considère plus de cas. - Pour écrire, utilise la méthode `to_csv `_, + `pandas `_ qui est plus + robuste et considère plus de cas. + Pour écrire, utilise la méthode `to_csv + `_, pour lire, la fonction - `read_csv `_. + `read_csv + `_. On peut également directement enregistrer au format Excel - `read_excel `_ et écrire dans ce même format - `to_excel `_. + `read_excel + `_ + et écrire dans ce même format + `to_excel + `_. """ - ligne = s.split(sep_row) # lignes + ligne = s.split(sep_row) # lignes mat = [el.split(sep_col) for el in ligne] # colonnes return mat @@ -217,8 +233,8 @@ def mat2text(mat, sep_row="\n", sep_col="\t"): print(s) """ - ligne = [";".join(li) for li in mat] # colonnes - s = "|".join(ligne) # lignes + ligne = [";".join(li) for li in mat] # colonnes + s = "|".join(ligne) # lignes return s @@ -233,7 +249,8 @@ def somme(li): :tag: Base :title: calcul d'une somme - Le calcul d'une somme fait toujours intervenir une boucle car le langage + Le calcul d'une somme fait toujours + intervenir une boucle car le langage :epkg:`Python` ne peut faire des additions qu'avec deux nombres. Le schéma est toujours le même : initialisation et boucle. @@ -246,8 +263,10 @@ def somme(li): s += l # addition print(s) - Ce code est équivalent à la fonction `sum `_. - Dans ce cas où la somme intègre le résultat d'une fonction (au sens mathématique) + Ce code est équivalent à la fonction `sum + `_. + Dans ce cas où la somme intègre le résultat d'une fonction + (au sens mathématique) et non les éléments d'une liste, il faudrait écrire : .. runpython:: @@ -262,7 +281,8 @@ def fonction(x): s += fonction (l) print(s) - Et ces deux lignes pourraient être résumées en une seule grâce + Et ces deux lignes pourraient être résumées + en une seule grâce à l'une de ces instructions : .. runpython:: @@ -279,7 +299,8 @@ def fonction(x): L'avantage des deux dernières instructions est qu'elles évitent la création d'une liste intermédiaire, - c'est un point à prendre en compte si la liste sur laquelle opère la + c'est un point à prendre en compte si la + liste sur laquelle opère la somme est volumineuse. """ return sum(li) @@ -296,8 +317,10 @@ def triindex(li): :tag: Base :title: tri, garder les positions initiales - Le tri est une opération fréquente. On n'a pas toujours le temps de programmer - le tri le plus efficace comme un tri `quicksort `_ + Le tri est une opération fréquente. On n'a pas + toujours le temps de programmer + le tri le plus efficace comme un tri `quicksort + `_ et un tri plus simple suffit la plupart du temps. Le tri suivant consiste à recherche le plus petit élément puis à échanger sa place avec le premier élément du tableau du tableau. @@ -321,15 +344,20 @@ def triindex(li): print(li) - La fonction `sorted `_ + La fonction `sorted + `_ trie également une liste mais selon un algorithme plus efficace que celui-ci (voir `Timsort `_). - On est parfois amené à reprogrammer un tri parce qu'on veut conserver la position des éléments + On est parfois amené à reprogrammer un tri parce qu'on veut + conserver la position des éléments dans le tableau non trié. - Cela arrive quand on souhaite trier un tableau et appliquer la même transformation à un second + Cela arrive quand on souhaite trier un tableau et + appliquer la même transformation à un second tableau. - Il est toujours préférable de ne pas reprogrammer un tri (moins d'erreur). - Il suffit d'applicer la même idée que pour la fonction @see fn minindex. + Il est toujours préférable de ne pas reprogrammer + un tri (moins d'erreur). + Il suffit d'applicer la même idée que pour la + fonction @see fn minindex. .. runpython:: :showcode: @@ -363,8 +391,10 @@ def compte(li): :title: comptage :lid: l-ex-comptage - On souhaite ici compter le nombre d'occurrences de chaque élément d'un tableau. - Par exemple, on pourrait connaître par ce moyen la popularité d'un mot dans un discours + On souhaite ici compter le nombre d'occurrences de + chaque élément d'un tableau. + Par exemple, on pourrait connaître par ce moyen + la popularité d'un mot dans un discours politique ou l'étendue du vocabulaire utilisé. L'exemple suivant compte les mots d'une liste de mots. @@ -380,11 +410,14 @@ def compte(li): d[l] += 1 print(d) # affiche {'un': 2, 'trois': 1, 'deux': 1} - La structure la plus appropriée ici est un dictionnaire puisqu'on cherche + La structure la plus appropriée ici est un + dictionnaire puisqu'on cherche à associer une valeur à un élément d'une liste qui peut être de tout type. Si la liste contient des éléments de type modifiable comme une liste, - il faudrait convertir ceux-ci en un type immuable comme une chaîne de caractères. - L'exemple suivant illustre ce cas en comptant les occurrences des lignes d'une matrice. + il faudrait convertir ceux-ci en un type immuable + comme une chaîne de caractères. + L'exemple suivant illustre ce cas en comptant + les occurrences des lignes d'une matrice. .. runpython:: :showcode: @@ -400,10 +433,13 @@ def compte(li): print(d) # affiche {'[1, 1, 1]': 2, '[2, 2, 2]': 1} Les listes ne peuvent pas être les clés du dictionnaire : - `Why Lists Can't Be Dictionary Keys `_. + `Why Lists Can't Be Dictionary Keys + `_. - On peut également vouloir non pas compter le nombre d'occurrence mais mémoriser les - positions des éléments tous identiques. On doit utiliser un dictionnaire de listes : + On peut également vouloir non pas compter + le nombre d'occurrence mais mémoriser les + positions des éléments tous identiques. + On doit utiliser un dictionnaire de listes : .. runpython:: :showcode: @@ -446,9 +482,12 @@ def mat2vect(mat): :tag: Base :title: conversion d'une matrice en un vecteur - Dans un langage comme le *C++*, il arrive fréquemment qu'une matrice ne soit pas - représentée par une liste de listes mais par une seule liste car cette représentation - est plus efficace. Il faut donc convertir un indice en deux indices ligne et colonne. + Dans un langage comme le *C++*, il arrive fréquemment + qu'une matrice ne soit pas + représentée par une liste de listes mais par une seule + liste car cette représentation + est plus efficace. Il faut donc convertir un indice + en deux indices ligne et colonne. Il faut bien sûr que le nombre de colonnes sur chaque ligne soit constant. Le premier programme convertit une liste de listes en une seule liste. @@ -488,11 +527,16 @@ def vect2mat(vect, ncol): :tag: Base :title: conversion d'un vecteur en une matrice - Dans un langage comme le *C++*, il arrive fréquemment qu'une matrice ne soit pas - représentée par une liste de listes mais par une seule liste car cette représentation - est plus efficace. Il faut donc convertir un indice en deux indices ligne et colonne. - Il faut bien sûr que le nombre de colonnes sur chaque ligne soit constant. - Le premier programme convertit une liste de listes en une seule liste. + Dans un langage comme le *C++*, il arrive fréquemment + qu'une matrice ne soit pas + représentée par une liste de listes mais par une + seule liste car cette représentation + est plus efficace. Il faut donc convertir un + indice en deux indices ligne et colonne. + Il faut bien sûr que le nombre de colonnes sur + chaque ligne soit constant. + Le premier programme convertit une liste de + listes en une seule liste. .. runpython:: :showcode: @@ -503,8 +547,7 @@ def vect2mat(vect, ncol): print(mat) """ - return [vect[i * ncol: (i + 1) * ncol] - for i in range(0, len(vect) // ncol)] + return [vect[i * ncol : (i + 1) * ncol] for i in range(0, len(vect) // ncol)] def integrale(fonction, a, b, n): @@ -598,7 +641,6 @@ def enumerate_permutations(ensemble): else: position = list(range(len(ensemble))) while position[0] < len(ensemble): - memo = [] for i, p in enumerate(position): ensemble[i], ensemble[p] = ensemble[p], ensemble[i] diff --git a/teachpyx/examples/numpysex.py b/teachpyx/examples/numpysex.py index f5fff582..35c921c2 100644 --- a/teachpyx/examples/numpysex.py +++ b/teachpyx/examples/numpysex.py @@ -64,7 +64,8 @@ def numpy_types(): :title: Quels sont les types que numpy supporte ? :tag: numpy - Lire `basic types `_. + Lire `basic types + `_. `numpy `_ propose plus de types que Python, les mêmes que le langage C (langage de son implémentation). Les programmeurs cherchent toujours @@ -73,27 +74,31 @@ def numpy_types(): on peut utiliser le type *numpy.uint8* qui est codé sur un octet. Cela explique pourquoi beaucoup de libraires de machine learning sont codées des *numpy.float32*, soit 4 octets plutôt que *numpy.float64* ou *double*. - Deux raisons à cela, les *numpy.float32* prennent deux fois moins de place en mémoire. + Deux raisons à cela, les *numpy.float32* prennent deux fois + moins de place en mémoire. Le coût des calculs avec des *double* est plus coûteux avec les GPU. - Lire `Explaining FP64 performance on GPUs `_. + Lire `Explaining FP64 performance on GPUs + `_. """ - return [numpy.bool_, - numpy.int_, - numpy.intc, - numpy.intp, - numpy.int8, - numpy.int16, - numpy.int32, - numpy.int64, - numpy.uint8, - numpy.uint16, - numpy.uint32, - numpy.uint64, - numpy.float_, - numpy.float16, - numpy.float32, - numpy.float64, - numpy.complex_, - numpy.complex64, - numpy.complex128] + return [ + numpy.bool_, + numpy.int_, + numpy.intc, + numpy.intp, + numpy.int8, + numpy.int16, + numpy.int32, + numpy.int64, + numpy.uint8, + numpy.uint16, + numpy.uint32, + numpy.uint64, + numpy.float_, + numpy.float16, + numpy.float32, + numpy.float64, + numpy.complex_, + numpy.complex64, + numpy.complex128, + ] diff --git a/teachpyx/ext_test_case.py b/teachpyx/ext_test_case.py new file mode 100644 index 00000000..125e309a --- /dev/null +++ b/teachpyx/ext_test_case.py @@ -0,0 +1,326 @@ +import os +import sys +import unittest +import warnings +from argparse import ArgumentParser +from contextlib import redirect_stderr, redirect_stdout +from io import StringIO +from timeit import Timer +from typing import Any, Callable, Dict, List, Optional, Tuple, Union + +import numpy +from numpy.testing import assert_allclose + + +def unit_test_going(): + """ + Enables a flag telling the script is running while testing it. + Avois unit tests to be very long. + """ + going = int(os.environ.get("UNITTEST_GOING", 0)) + return going == 1 + + +def ignore_warnings(warns: List[Warning]) -> Callable: + """ + Catches warnings. + + :param warns: warnings to ignore + """ + + def wrapper(fct): + if warns is None: + raise AssertionError(f"warns cannot be None for '{fct}'.") + + def call_f(self): + with warnings.catch_warnings(): + warnings.simplefilter("ignore", warns) + return fct(self) + + return call_f + + return wrapper + + +def measure_time( + stmt: Union[str, Callable], + context: Optional[Dict[str, Any]] = None, + repeat: int = 10, + number: int = 50, + warmup: int = 1, + div_by_number: bool = True, + max_time: Optional[float] = None, +) -> Dict[str, Any]: + """ + Measures a statement and returns the results as a dictionary. + + :param stmt: string or callable + :param context: variable to know in a dictionary + :param repeat: average over *repeat* experiment + :param number: number of executions in one row + :param warmup: number of iteration to do before starting the + real measurement + :param div_by_number: divide by the number of executions + :param max_time: execute the statement until the total goes + beyond this time (approximatively), *repeat* is ignored, + *div_by_number* must be set to True + :return: dictionary + + .. runpython:: + :showcode: + + from onnx_extended.ext_test_case import measure_time + from math import cos + + res = measure_time(lambda: cos(0.5)) + print(res) + + See `Timer.repeat `_ + for a better understanding of parameter *repeat* and *number*. + The function returns a duration corresponding to + *number* times the execution of the main statement. + + .. versionchanged:: 0.4 + Parameter *max_time* was added. + """ + if not callable(stmt) and not isinstance(stmt, str): + raise TypeError( + f"stmt is not callable or a string but is of type {type(stmt)!r}." + ) + if context is None: + context = {} + + if isinstance(stmt, str): + tim = Timer(stmt, globals=context) + else: + tim = Timer(stmt) + + if warmup > 0: + warmup_time = tim.timeit(warmup) + else: + warmup_time = 0 + + if max_time is not None: + if not div_by_number: + raise ValueError( + "div_by_number must be set to True of max_time is defined." + ) + i = 1 + total_time = 0 + results = [] + while True: + for j in (1, 2): + number = i * j + time_taken = tim.timeit(number) + results.append((number, time_taken)) + total_time += time_taken + if total_time >= max_time: + break + if total_time >= max_time: + break + ratio = (max_time - total_time) / total_time + ratio = max(ratio, 1) + i = int(i * ratio) + + res = numpy.array(results) + tw = res[:, 0].sum() + ttime = res[:, 1].sum() + mean = ttime / tw + ave = res[:, 1] / res[:, 0] + dev = (((ave - mean) ** 2 * res[:, 0]).sum() / tw) ** 0.5 + mes = dict( + average=mean, + deviation=dev, + min_exec=numpy.min(ave), + max_exec=numpy.max(ave), + repeat=1, + number=tw, + ttime=ttime, + ) + else: + res = numpy.array(tim.repeat(repeat=repeat, number=number)) + if div_by_number: + res /= number + + mean = numpy.mean(res) + dev = numpy.mean(res**2) + dev = (dev - mean**2) ** 0.5 + mes = dict( + average=mean, + deviation=dev, + min_exec=numpy.min(res), + max_exec=numpy.max(res), + repeat=repeat, + number=number, + ttime=res.sum(), + ) + + if "values" in context: + if hasattr(context["values"], "shape"): + mes["size"] = context["values"].shape[0] + else: + mes["size"] = len(context["values"]) + else: + mes["context_size"] = sys.getsizeof(context) + mes["warmup_time"] = warmup_time + return mes + + +class ExtTestCase(unittest.TestCase): + _warns = [] + + def assertExists(self, name): + if not os.path.exists(name): + raise AssertionError(f"File or folder {name!r} does not exists.") + + def assertEqualArray( + self, + expected: numpy.ndarray, + value: numpy.ndarray, + atol: float = 0, + rtol: float = 0, + ): + self.assertEqual(expected.dtype, value.dtype) + self.assertEqual(expected.shape, value.shape) + assert_allclose(expected, value, atol=atol, rtol=rtol) + + def assertAlmostEqual( + self, + expected: numpy.ndarray, + value: numpy.ndarray, + atol: float = 0, + rtol: float = 0, + ): + if not isinstance(expected, numpy.ndarray): + expected = numpy.array(expected) + if not isinstance(value, numpy.ndarray): + value = numpy.array(value).astype(expected.dtype) + self.assertEqualArray(expected, value, atol=atol, rtol=rtol) + + def assertRaise(self, fct: Callable, exc_type: Exception): + try: + fct() + except exc_type as e: + if not isinstance(e, exc_type): + raise AssertionError(f"Unexpected exception {type(e)!r}.") + return + raise AssertionError("No exception was raised.") + + def assertEmpty(self, value: Any): + if value is None: + return + if len(value) == 0: + return + raise AssertionError(f"value is not empty: {value!r}.") + + def assertNotEmpty(self, value: Any): + if value is None: + raise AssertionError(f"value is empty: {value!r}.") + if isinstance(value, (list, dict, tuple, set)): + if len(value) == 0: + raise AssertionError(f"value is empty: {value!r}.") + + def assertStartsWith(self, prefix: str, full: str): + if not full.startswith(prefix): + raise AssertionError(f"prefix={prefix!r} does not start string {full!r}.") + + @classmethod + def tearDownClass(cls): + for name, line, w in cls._warns: + warnings.warn(f"\n{name}:{line}: {type(w)}\n {str(w)}") + + def capture(self, fct: Callable): + """ + Runs a function and capture standard output and error. + + :param fct: function to run + :return: result of *fct*, output, error + """ + sout = StringIO() + serr = StringIO() + with redirect_stdout(sout): + with redirect_stderr(serr): + res = fct() + return res, sout.getvalue(), serr.getvalue() + + +def get_parsed_args( + name: str, + scenarios: Optional[Dict[str, str]] = None, + description: Optional[str] = None, + epilog: Optional[str] = None, + number: int = 10, + repeat: int = 10, + warmup: int = 5, + sleep: float = 0.1, + tries: int = 2, + **kwargs: Dict[str, Tuple[Union[int, str, float], str]], +) -> ArgumentParser: + """ + Returns parsed arguments for examples in this package. + + :param name: script name + :param scenarios: list of available scenarios + :param description: parser description + :param epilog: text at the end of the parser + :param number: default value for number parameter + :param repeat: default value for repeat parameter + :param warmup: default value for warmup parameter + :param sleep: default value for sleep parameter + :param kwargs: additional parameters, + example: `n_trees=(10, "number of trees to train")` + :return: parser + """ + if description is None: + description = f"Available options for {name}.py." + if epilog is None: + epilog = "" + parser = ArgumentParser(prog=name, description=description, epilog=epilog) + if scenarios is not None: + rows = ", ".join(f"{k}: {v}" for k, v in scenarios.items()) + parser.add_argument("-s", "--scenario", help=f"Available scenarios: {rows}.") + parser.add_argument( + "-n", + "--number", + help="number of executions to measure", + type=int, + default=number, + ) + parser.add_argument( + "-r", + "--repeat", + help="number of times to repeat the measure", + type=int, + default=repeat, + ) + parser.add_argument( + "-w", + "--warmup", + help="number of times to repeat the measure", + type=int, + default=warmup, + ) + parser.add_argument( + "-S", + "--sleep", + help="sleeping time between two configurations", + type=float, + default=sleep, + ) + parser.add_argument( + "-t", + "--tries", + help="number of tries for each configurations", + type=int, + default=tries, + ) + for k, v in kwargs.items(): + parser.add_argument( + f"--{k}", + help=v[1], + type=type(v[0]), + default=v[0], + ) + + return parser.parse_args() diff --git a/teachpyx/faq/__init__.py b/teachpyx/faq/__init__.py index dd9c5882..b4f3a7ec 100644 --- a/teachpyx/faq/__init__.py +++ b/teachpyx/faq/__init__.py @@ -1,6 +1 @@ -""" -@file -@breif shortcuts for FAQ -""" - -from .faq_python import enumerate_regex_search +from .faq_python import enumerate_regex_search # noqa: F401 diff --git a/teachpyx/faq/faq_exception.py b/teachpyx/faq/faq_exception.py index 0eadefb2..5e6b4bc0 100644 --- a/teachpyx/faq/faq_exception.py +++ b/teachpyx/faq/faq_exception.py @@ -13,4 +13,6 @@ def call_stack(): @return traceback """ exc_traceback = sys.exc_info()[-1] - return traceback.extract_tb(exc_traceback), "".join(traceback.format_tb(exc_traceback)) + return traceback.extract_tb(exc_traceback), "".join( + traceback.format_tb(exc_traceback) + ) diff --git a/teachpyx/faq/faq_python.py b/teachpyx/faq/faq_python.py index 6dae3037..c2de4695 100644 --- a/teachpyx/faq/faq_python.py +++ b/teachpyx/faq/faq_python.py @@ -1,13 +1,7 @@ -# -*- coding: utf-8 -*- -# pylint: disable=C0115,C0116 -""" -@file -@brief Quelques questions d'ordre général autour du langage Python. +# coding: utf-8 -""" - -import os import io +import os import re @@ -20,8 +14,10 @@ def entier_grande_taille(): La version 3 du langage Python a supprimé la constante ``sys.maxint`` qui définissait l'entier le plus grand (voir - `What's New In Python 3.0 `_). - De ce fait la fonction `getrandbit `_ + `What's New In Python 3.0 + `_). + De ce fait la fonction + `getrandbit `_ retourne un entier aussi grand que l'on veut. :: @@ -32,22 +28,31 @@ def entier_grande_taille(): Qui affiche :: - 2882159224557107513165483098383814837021447484558010147211921304219017212673656549681269862792029... + 2882159224557107513165483098383814837021447484558010147211921 + 304219017212673656549681269862792029... - Les calculs en nombre réels se font toujours avec huit octets de précision. - Au delà, il faut utiliser la librairie `gmpy2 `_. - Il est également recommandé d'utiliser cette librairie pour les grands nombres entiers - (entre 20 et 40 chiffres). La librairie est plus rapide que l'implémentation - du langage Python (voir `Overview of gmpy2 `_). + Les calculs en nombre réels se font toujours avec + huit octets de précision. + Au delà, il faut utiliser la librairie `gmpy2 + `_. + Il est également recommandé d'utiliser cette + librairie pour les grands nombres entiers + (entre 20 et 40 chiffres). La librairie est + plus rapide que l'implémentation + du langage Python (voir `Overview of gmpy2 + `_). .. faqref:: :tag: python :title: Tabulations ou espace ? - Il est préférable de ne pas utiliser les tabulations et de les remplacer par des espaces. - Lorsqu'on passe d'un Editeur à un autre, les espaces ne bougent pas. Les tabulations sont plus ou moins grandes visuellement. + Il est préférable de ne pas utiliser les tabulations et + de les remplacer par des espaces. + Lorsqu'on passe d'un Editeur à un autre, les espaces ne bougent pas. + Les tabulations sont plus ou moins grandes visuellement. L'essentiel est de ne pas mélanger. - Dans `SciTE `_, il faut aller dans le menu Options / Change Indentation Settings... + Dans `SciTE `_, + il faut aller dans le menu Options / Change Indentation Settings... Tous les éditeurs ont une option similaire. """ pass @@ -59,9 +64,11 @@ def difference_div(): :tag: python :title: Quelle est la différence entre / et // - division ? - Le résultat de la division avec l'opérateur ``/`` est toujours réel : + Le résultat de la division avec l'opérateur ``/`` + est toujours réel : la division de deux entiers ``1/2`` donne ``0.5``. - Le résultat de la division avec l'opérateur ``//`` est toujours entier. + Le résultat de la division avec l'opérateur ``//`` + est toujours entier. Il correspond au quotient de la division. .. runpython:: @@ -81,8 +88,10 @@ def difference_div(): print( 5 % 2 ) # affiche 1 C'est uniquement vrai pour les version Python 3.x. - Pour les versions 2.x, les opérateurs ``/`` et ``//`` avaient des comportements différents - (voir `What’s New In Python 3.0 `_). + Pour les versions 2.x, les opérateurs ``/`` et ``//`` + avaient des comportements différents + (voir `What’s New In Python 3.0 + `_). """ div1 = 1 / 2 div2 = 4 / 2 @@ -95,12 +104,16 @@ def python_path(): """ .. faqref:: :tag: module - :title: Comment éviter sys.path.append... quand on développe un module ? + :title: Comment éviter sys.path.append... + quand on développe un module ? Lorsqu'on développe un module, - on ne veut pas l'installer. On ne veut pas qu'il soit présent dans le répertoire ``site-packages`` de la distribution - de Python car cela introduit deux versions : celle qu'on développe et celle qu'on a installer. - Avant, je faisais cela pour créer un petit programme utilisant mon propre module + on ne veut pas l'installer. On ne veut pas qu'il soit présent + dans le répertoire ``site-packages`` de la distribution + de Python car cela introduit deux versions : + celle qu'on développe et celle qu'on a installer. + Avant, je faisais cela pour créer un petit + programme utilisant mon propre module (et on en trouve quelque trace dans mon code) : :: @@ -109,11 +122,14 @@ def python_path(): sys.path.append("c:/moncode/monmodule/src") import monmodule - Quand je récupère un programme utilisant ce module, il me faudrait ajouter + Quand je récupère un programme utilisant ce module, + il me faudrait ajouter ces petites lignes à chaque fois et c'est barbant. - Pour éviter cela, il est possible de dire à l'interpréteur Python d'aller chercher + Pour éviter cela, il est possible de dire à + l'interpréteur Python d'aller chercher ailleurs pour trouver des modules en ajoutant le chemin à la - `variable d'environnement `_ + `variable d'environnement + `_ `PYTHONPATH `_. Sous Windows : @@ -127,7 +143,8 @@ def python_path(): def same_variable(a, b): """ Cette fonction dit si les deux objets sont en fait le même objet (True) - ou non (False) s'ils sont différents (même s'ils contiennent la même information). + ou non (False) s'ils sont différents + (même s'ils contiennent la même information). :param a: n'importe quel objet :param b: n'importe quel objet @@ -138,16 +155,21 @@ def same_variable(a, b): :title: Qu'est-ce qu'un type immuable ou immutable ? :lid: faq-py-immutable - Une variable de type *immuable* ne peut être modifiée. Cela concerne principalement : + Une variable de type *immuable* ne peut être modifiée. + Cela concerne principalement : - ``int``, ``float``, ``str``, ``tuple`` - Si une variable est de type *immuable*, lorsqu'on effectue une opération, + Si une variable est de type *immuable*, + lorsqu'on effectue une opération, on créé implicitement une copie de l'objet. - Les dictionnaires et les listes sont *modifiables* (ou *mutable*). Pour une variable - de ce type, lorsqu'on écrit ``a = b``, ``a`` et ``b`` désigne le même objet même - si ce sont deux noms différentes. C'est le même emplacement mémoire + Les dictionnaires et les listes sont + *modifiables* (ou *mutable*). Pour une variable + de ce type, lorsqu'on écrit ``a = b``, ``a`` et ``b`` + désigne le même objet même + si ce sont deux noms différentes. + C'est le même emplacement mémoire accessible paur deux moyens (deux identifiants). Par exemple :: @@ -164,10 +186,14 @@ def same_variable(a, b): print( a == b ) # --> True print(a,b) # --> [2, 3, 4, 5] [2, 3, 4, 5] - Dans le premier cas, le type (``tuple``) est _immutable_, l'opérateur ``+=`` cache implicitement une copie. - Dans le second cas, le type (``list``) est _mutable_, l'opérateur ``+=`` évite la copie - car la variable peut être modifiée. Même si ``b=a`` est exécutée avant l'instruction suivante, - elle n'a **pas** pour effet de conserver l'état de ``a`` avant l'ajout d'élément. + Dans le premier cas, le type (``tuple``) est _immutable_, + l'opérateur ``+=`` cache implicitement une copie. + Dans le second cas, le type (``list``) est _mutable_, + l'opérateur ``+=`` évite la copie + car la variable peut être modifiée. Même si ``b=a`` + est exécutée avant l'instruction suivante, + elle n'a **pas** pour effet de conserver l'état de ``a`` avant + l'ajout d'élément. Un autre exemple :: a = [1, 2] @@ -184,8 +210,10 @@ def same_variable(a, b): print(a) # --> [-1, 2] print(b) # --> [1, 2] - La page `Immutable Sequence Types `_ - détaille un peu plus le type qui sont *mutable* et ceux qui sont *immutable*. Parmi les types standards : + La page `Immutable Sequence Types + `_ + détaille un peu plus le type qui sont *mutable* et ceux qui + sont *immutable*. Parmi les types standards : * **mutable** * `bool `_ @@ -209,21 +237,25 @@ def same_variable(a, b): * `__slots__ `_ * `How to Create Immutable Classes in Python `_ - * `Ways to make a class immutable in Python `_ + * `Ways to make a class immutable in Python + `_ * `freeze `_ - Enfin, pour les objects qui s'imbriquent les uns dans les autres, une liste de listes, une classe - qui incluent des dictionnaires et des listes, on distingue une copie simple d'une copie intégrale (**deepcopy**). - Dans le cas d'une liste de listes, la copie simple recopie uniquement la première liste :: + Enfin, pour les objects qui s'imbriquent les uns dans + les autres, une liste de listes, une classe + qui incluent des dictionnaires et des listes, + on distingue une copie simple d'une copie intégrale (**deepcopy**). + Dans le cas d'une liste de listes, la copie simple + recopie uniquement la première liste :: import copy l1 = [ [0,1], [2,3] ] l2 = copy.copy(l1) l1 [0][0] = '##' - print(l1,l2) # --> [['##', 1], [2, 3]] [['##', 1], [2, 3]] + print(l1, l2) # --> [['##', 1], [2, 3]] [['##', 1], [2, 3]] l1 [0] = [10,10] - print(l1,l2) # --> [[10, 10], [2, 3]] [['##', 1], [2, 3]] + print(l1,l2) # --> [[10, 10], [2, 3]] [['##', 1], [2, 3]] La copie intégrale recopie également les objets inclus :: @@ -231,9 +263,10 @@ def same_variable(a, b): l1 = [ [0,1], [2,3] ] l2 = copy.deepcopy(l1) l1 [0][0] = '##' - print(l1,l2) # --> [['##', 1], [2, 3]] [[0, 1], [2, 3]] + print(l1,l2) # --> [['##', 1], [2, 3]] [[0, 1], [2, 3]] - Les deux fonctions s'appliquent à tout object Python : `module copy `_. + Les deux fonctions s'appliquent à tout object Python : + `module copy `_. """ return id(a) == id(b) @@ -249,9 +282,12 @@ def stringio(text): :tag: python :title: A quoi sert un ``StringIO`` ? - La plupart du temps, lorsqu'on récupère des données, elles sont sur le disque dur - de votre ordinateur dans un fichier texte. Lorsqu'on souhaite automatiser un processur - qu'on répète souvent avec ce fichier, on écrit une fonction qui prend le nom du fichier en entrée. + La plupart du temps, lorsqu'on récupère des données, + elles sont sur le disque dur + de votre ordinateur dans un fichier texte. Lorsqu'on + souhaite automatiser un processur + qu'on répète souvent avec ce fichier, on écrit une + fonction qui prend le nom du fichier en entrée. :: @@ -263,18 +299,27 @@ def processus_quotidien(nom_fichier) : nb += 1 return nb - Et puis un jour, les données ne sont plus dans un fichier mais sur Internet. - Le plus simple dans ce cas est de recopier ces données sur disque dur et d'appeler la même fonction. - Simple. Un autre les données qu'on doit télécharger font plusieurs gigaoctets. Tout télécharger prend - du temps pour finir pour s'apercevoir qu'elles sont corrompues. On a perdu plusieurs heures pour rien. - On aurait bien voulu que la fonction ``processus_quotidien`` commence à traiter les données + Et puis un jour, les données ne sont plus dans un fichier + mais sur Internet. + Le plus simple dans ce cas est de recopier ces données sur disque + dur et d'appeler la même fonction. + Simple. Un autre les données qu'on doit télécharger font plusieurs + gigaoctets. Tout télécharger prend + du temps pour finir pour s'apercevoir qu'elles sont corrompues. + On a perdu plusieurs heures pour rien. + On aurait bien voulu que la fonction ``processus_quotidien`` + commence à traiter les données dès le début du téléchargement. - Pour cela, on a inventé la notion de **stream** ou **flux** qui sert d'interface entre la fonction - qui traite les données et la source des données. Le flux lire les données depuis n'importe quel source - (fichier, internet, mémoire), la fonction qui les traite n'a pas besoin d'en connaître la provenance. + Pour cela, on a inventé la notion de **stream** ou **flux** + qui sert d'interface entre la fonction + qui traite les données et la source des données. + Le flux lire les données depuis n'importe quel source + (fichier, internet, mémoire), la fonction qui les traite + n'a pas besoin d'en connaître la provenance. - `StringIO `_ est un flux qui considère + `StringIO `_ + est un flux qui considère la mémoire comme source de données. :: @@ -286,7 +331,8 @@ def processus_quotidien(data_stream): nb += 1 return nb - La fonction ``processus_quotidien`` fonctionne pour des données en mémoire + La fonction ``processus_quotidien`` + fonctionne pour des données en mémoire et sur un fichier. :: @@ -311,7 +357,8 @@ def property_example(): :tag: class :title: property - Une `property `_ est + Une `property + `_ est une écriture qui sert à transformer l'appel d'une méthode de classe en un attribut. @@ -338,8 +385,10 @@ def norm2(self): print(c.x) print(c.y) - ``x`` est définit comme une méthode mais elle retourne simplement l'attribut - ``_x``. De cette façon, il est impossible de changer ``x`` en écrivant:: + ``x`` est définit comme une méthode mais elle + retourne simplement l'attribut + ``_x``. De cette façon, il est impossible de + changer ``x`` en écrivant:: c.x = 5 @@ -358,7 +407,8 @@ def norm2(self): def enumerate_regex_search(exp, text): """ - Cette fonction itère sur les différentes occurences d'une expression régulière. + Cette fonction itère sur les différentes occurences + d'une expression régulière. :param exp: expression régulière :param text: text à parser @@ -368,7 +418,8 @@ def enumerate_regex_search(exp, text): :tag: regex :title: Comment itérer sur les résultats d'une expression régulière ? - On utilise la méthode `finditer `_. + On utilise la méthode + `finditer `_. :: @@ -376,7 +427,8 @@ def enumerate_regex_search(exp, text): for m in exp.finditer(text): # ... - Voir également `Petites subtilités avec les expressions régulières en Python + Voir également `Petites subtilités avec les expressions + régulières en Python `_. """ # found = exp.search(text) @@ -392,7 +444,8 @@ def sortable_class(cl): :tag: class :title: Classe sortable - Il faut prononcer *sortable* à l'anglaise. Comment rendre une classe + Il faut prononcer *sortable* à l'anglaise. + Comment rendre une classe *sortable* ? Pour faire simple, on veut écrire :: l = [ o1, o2 ] @@ -433,8 +486,10 @@ def list_of_installed_packages(): :tag: module :title: Obtenir des informations sur les packages installés - Le module `pip `_ retourne des informations - sur n'importe quel module installé, sa version, sa license :: + Le module `pip `_ + retourne des informations + sur n'importe quel module installé, sa version, + sa license :: pip show pandas @@ -447,7 +502,8 @@ def list_of_installed_packages(): Name: pandas Version: 0.16.0 - Summary: Powerful data structures for data analysis, time series,and statistics + Summary: Powerful data structures for data analysis, + time series,and statistics Home-page: http://pandas.pydata.org Author: The PyData Development Team Author-email: pydata@googlegroups.com @@ -456,7 +512,8 @@ def list_of_installed_packages(): Requires: python-dateutil, pytz, numpy On utilise également ``pip freeze`` pour répliquer l'environnement - dans lequel on a développé un programme. `pip freeze `_ + dans lequel on a développé un programme. + `pip freeze `_ produit la liste des modules avec la version utilisée :: docutils==0.11 @@ -465,29 +522,38 @@ def list_of_installed_packages(): Pygments==1.6 Sphinx==1.2.2 - Ce qu'on utilise pour répliquer l'environnement de la manière suivante :: + Ce qu'on utilise pour répliquer l'environnement + de la manière suivante :: pip freeze > requirements.txt pip install -r requirements.txt - Cette façon de faire fonctionne très bien sous Linux mais n'est pas encore - opérationnelle sous Windows à moins d'installer le compilateur C++ utilisée pour compiler + Cette façon de faire fonctionne très bien sous + Linux mais n'est pas encore + opérationnelle sous Windows à moins d'installer + le compilateur + C++ utilisée pour compiler Python. """ - from pyquickhelper.pycode.pip_helper import get_packages_list # pylint: disable=C0415 + from pyquickhelper.pycode.pip_helper import ( + get_packages_list, + ) # pylint: disable=C0415 + return get_packages_list() def information_about_package(name): """ - calls ``pip show`` to retrieve information about packages + Calls ``pip show`` to retrieve information about packages. .. faqref:: :tag: module :title: Récupérer la liste des modules installés - Le module `pip `_ permet d'installer - de nouveaux modules mais aussi d'obtenir la liste des packages installés :: + Le module `pip `_ + permet d'installer + de nouveaux modules mais aussi d'obtenir la liste + des packages installés :: pip list @@ -498,9 +564,11 @@ def information_about_package(name): .. faqref:: :tag: python - :title: Pourquoi l'installation de pandas (ou numpy) ne marche pas sous Windows avec pip ? + :title: Pourquoi l'installation de pandas (ou numpy) + ne marche pas sous Windows avec pip ? - Python est un langage très lent et c'est pourquoi la plupart des modules de calculs numériques + Python est un langage très lent et c'est pourquoi la + plupart des modules de calculs numériques incluent des parties implémentées en langage C++. `numpy `_, `pandas `_, @@ -509,9 +577,12 @@ def information_about_package(name): `scikit-learn `_, ... - Sous Linux, le compilateur est intégré au système et l'installation de ces modules via - l'instruction ``pip install `` met implicitement le compilateur à contribution. - Sous Windows, il n'existe pas de compilateur C++ par défaut à moins de l'installer. + Sous Linux, le compilateur est intégré au système et + l'installation de ces modules via + l'instruction ``pip install `` met implicitement + le compilateur à contribution. + Sous Windows, il n'existe pas de compilateur C++ par + défaut à moins de l'installer. Il faut faire attention alors d'utiliser exactement le même que celui utilisé pour compiler Python (voir `Compiling Python on Windows `_). @@ -519,7 +590,8 @@ def information_about_package(name): C'est pour cela qu'on préfère utiliser des distributions comme `Anaconda `_ qui propose par défaut - une version de Python accompagnée des modules les plus utilisés. Elle propose également une façon + une version de Python accompagnée des modules les plus utilisés. + Elle propose également une façon simple d'installer des modules précompilés avec l'instruction :: conda install @@ -527,11 +599,16 @@ def information_about_package(name): L'autre option est d'utilser le site `Unofficial Windows Binaries for Python Extension Packages `_ qui propose des versions compilées sous Windows d'un grand nombre de modules. - Il faut télécharger le fichier *.whl* puis l'installer avec l'instruction ``pip install ``. + Il faut télécharger le fichier *.whl* puis l'installer avec l'instruction + ``pip install ``. La différence entre les deux ooptions tient aux environnements virtuels, voir - `Python virtual environments `_. + `Python virtual environments + `_. """ - from pyquickhelper.pycode.pip_helper import get_package_info # pylint: disable=C0415 + from pyquickhelper.pycode.pip_helper import ( + get_package_info, + ) # pylint: disable=C0415 + return get_package_info(name) From 1bc1dab97dafa86df0fa6cee99507eec7077a33d Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Sun, 30 Jul 2023 20:02:55 +0200 Subject: [PATCH 05/26] doc --- _doc/examples/plot_gil_example.py | 8 ++++---- _doc/examples/plot_numpy_tricks.py | 4 ++-- _doc/examples/plot_serialisation_examples.py | 20 ++++++++++++-------- _doc/examples/plot_serialisation_protobuf.py | 14 ++++++++------ 4 files changed, 26 insertions(+), 20 deletions(-) diff --git a/_doc/examples/plot_gil_example.py b/_doc/examples/plot_gil_example.py index 7b22b49e..b50b9c7b 100644 --- a/_doc/examples/plot_gil_example.py +++ b/_doc/examples/plot_gil_example.py @@ -26,7 +26,7 @@ def create_list(n): return res -timeit.timeit("create_list(100000)") +timeit.timeit("create_list(100000)", globals=globals(), number=100) ###################################### # En parallèle avec le module `concurrent.futures @@ -40,7 +40,7 @@ def run2(nb): pass -timeit.timeit("run2(100000)") +timeit.timeit("run2(100000)", globals=globals(), number=100) ###################################### @@ -62,7 +62,7 @@ def attendre(t=0.009): return None -timeit.timeit("attendre()") +timeit.timeit("attendre()", globals=globals(), number=100) ###################################### @@ -75,7 +75,7 @@ def run3(t): pass -timeit.timeit("run3(0.009)") +timeit.timeit("run3(0.009)", globals=globals(), number=100) ###################################### diff --git a/_doc/examples/plot_numpy_tricks.py b/_doc/examples/plot_numpy_tricks.py index 4354b261..3c732436 100644 --- a/_doc/examples/plot_numpy_tricks.py +++ b/_doc/examples/plot_numpy_tricks.py @@ -30,13 +30,13 @@ ######################################## # -timeit.timeit("mat[2, 3]") +timeit.timeit("mat[2, 3]", globals=globals(), number=100) ######################################## # -timeit.timeit("mat[2][3]") +timeit.timeit("mat[2][3]", globals=globals(), number=100) ######################################## diff --git a/_doc/examples/plot_serialisation_examples.py b/_doc/examples/plot_serialisation_examples.py index 9d7d14b1..95b1d1d7 100644 --- a/_doc/examples/plot_serialisation_examples.py +++ b/_doc/examples/plot_serialisation_examples.py @@ -146,14 +146,14 @@ def decode(self, o): # -timeit.timeit("json.dump(data, StringIO())") +timeit.timeit("json.dump(data, StringIO())", globals=globals(), number=100) ######################################### # -timeit.timeit("ujson.udump(data, StringIO())") +timeit.timeit("ujson.udump(data, StringIO())", globals=globals(), number=100) ######################################### @@ -164,20 +164,20 @@ def decode(self, o): buffer = StringIO() ujson.dump(data, buffer) res = buffer.getvalue() -timeit.timeit("load(StringIO(res))") +timeit.timeit("load(StringIO(res))", globals=globals(), number=100) ######################################### # -timeit.timeit("ujson.load(StringIO(res))") +timeit.timeit("ujson.load(StringIO(res))", globals=globals(), number=100) ######################################### # On enlève le temps passé dans la creation du buffer. -timeit.timeit("StringIO(res)") +timeit.timeit("StringIO(res)", globals=globals(), number=100) ######################################### @@ -323,13 +323,13 @@ def __setstate__(self, state): # data = B("r") -timeit.timeit("pickle.dump(data, BytesIO())") +timeit.timeit("pickle.dump(data, BytesIO())", globals=globals(), number=100) ######################################### # -timeit.timeit("pickle.load(BytesIO(seq))") +timeit.timeit("pickle.load(BytesIO(seq))", globals=globals(), number=100) ######################################### @@ -339,7 +339,11 @@ def __setstate__(self, state): # Il est possible d'accélérer un peu les choses. -timeit.timeit("pickle.dump(data, BytesIO(), protocol=pickle.HIGHEST_PROTOCOL)") +timeit.timeit( + "pickle.dump(data, BytesIO(), protocol=pickle.HIGHEST_PROTOCOL)", + globals=globals(), + number=100, +) ######################################### diff --git a/_doc/examples/plot_serialisation_protobuf.py b/_doc/examples/plot_serialisation_protobuf.py index e9a359bb..3943b7b7 100644 --- a/_doc/examples/plot_serialisation_protobuf.py +++ b/_doc/examples/plot_serialisation_protobuf.py @@ -19,7 +19,7 @@ import timeit import struct from io import BytesIO -from sphinx_runpython.runpython.loghelper import run_cmd +from sphinx_runpython.runpython import run_cmd import google.protobuf as gp from google.protobuf.json_format import MessageToJson, Parse as ParseJson @@ -139,7 +139,7 @@ ######################################## # -timeit.timeit("person.SerializeToString()") +timeit.timeit("person.SerializeToString()", globals=globals(), number=100) ######################################## @@ -160,13 +160,13 @@ ######################################## # -timeit.timeit("schema_pb2.Person.FromString(res)") +timeit.timeit("schema_pb2.Person.FromString(res)", globals=globals(), number=100) ######################################## # -timeit.timeit("pers.ParseFromString(res)") +timeit.timeit("pers.ParseFromString(res)", globals=globals(), number=100) ######################################## @@ -243,7 +243,7 @@ ######################################## # -timeit.timeit("MessageToJson(pers)") +timeit.timeit("MessageToJson(pers)", globals=globals(), number=100) ######################################## @@ -258,4 +258,6 @@ ######################################## # -timeit.timeit("ParseJson(js, message=schema_pb2.Person())") +timeit.timeit( + "ParseJson(js, message=schema_pb2.Person())", globals=globals(), number=100 +) From bd3bdfd37ffb28ad01d5f78c574c6c877a399cac Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 09:45:31 +0200 Subject: [PATCH 06/26] fix many typo --- .circleci/config.yml | 2 +- _doc/c_classes/classes.rst | 41 ++-- _doc/c_gui/tkinter.rst | 35 ++-- _doc/c_lang/constructions.rst | 2 +- _doc/c_lang/dates.rst | 16 +- _doc/c_lang/faq.rst | 11 +- _doc/c_lang/syntaxe.rst | 41 ++-- _doc/c_lang/types.rst | 75 +++---- _doc/c_module/files.rst | 73 +++---- _doc/c_module/module.rst | 42 ++-- _doc/c_module/serialization.rst | 13 +- _doc/conf.py | 19 ++ _unittests/ut_examples/test_classique.py | 6 - .../ut_examples/test_classique_permutation.py | 6 - .../test_construction_classique.py | 6 - _unittests/ut_examples/test_numpysex.py | 6 - _unittests/ut_faq/test_faq_exception.py | 5 +- _unittests/ut_faq/test_faq_missing.py | 5 +- _unittests/ut_faq/test_faq_numpy.py | 3 - _unittests/ut_faq/test_faq_python.py | 3 - .../test_documentation_examples.py | 4 +- _unittests/ut_xrun_doc/test_profiling.py | 195 ------------------ pyproject.toml | 1 + requirements-dev.txt | 2 +- teachpyx/examples/numpysex.py | 2 +- teachpyx/faq/faq_python.py | 22 +- 26 files changed, 211 insertions(+), 425 deletions(-) delete mode 100644 _unittests/ut_xrun_doc/test_profiling.py diff --git a/.circleci/config.yml b/.circleci/config.yml index 7c974d7d..900a5b95 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -52,7 +52,7 @@ jobs: - run: name: install dependencies 2 command: | - pip install -r requirements.txt + pip install -r requirements-dev.txt - save_cache: paths: diff --git a/_doc/c_classes/classes.rst b/_doc/c_classes/classes.rst index f1179cb4..7d27a647 100644 --- a/_doc/c_classes/classes.rst +++ b/_doc/c_classes/classes.rst @@ -5,8 +5,6 @@ Classes ======= -.. index:: classe - .. contents:: :local: :depth: 2 @@ -77,7 +75,7 @@ colonnes, les coefficients de la matrice. Cette matrice inclut aussi des méthodes comme des opérations entre deux matrices telles que l'addition, la soustraction, la multiplication ou des opérations sur elle-même comme l'inversion, la transposition, la diagonalisation. - + Cette liste n'est pas exhaustive, elle illustre ce que peut être une classe "matrice" - représentation informatique d'un objet "matrice" -, un type complexe incluant des informations de types variés (entier @@ -175,7 +173,7 @@ Méthodes Les méthodes sont des fonctions qui sont associées de manière explicite à une classe. Elles ont comme particularité un accès privilégié aux données de la classe elle-même. -Ces données ou *attributs* sont définis plus loin. Les méthodes sont en +Ces données ou *attributs* sont définis plus loin. Les méthodes sont en fait des fonctions pour lesquelles la liste des paramètres contient obligatoirement un paramètre explicite qui est l'instance de la classe à laquelle cette méthode est associée. Ce paramètre @@ -562,8 +560,8 @@ création d'une instance. Ils contiennent des informations sur l'instance. (voir paragraphe :ref:`par_class_liste_attribut`. * - ``__doc__`` - Contient un commentaire associé à la classe - (voir paragraphe :ref:`par_class_commentaire`. - + (voir paragraphe :ref:`par_class_commentaire`. + L'attribut ``__class__`` contient lui même d'autres d'attributs : .. list-table:: @@ -656,16 +654,13 @@ Le plus utilisé est .. index:: dir -La fonction `dir `_ -permet aussi d'obtenir des informations +La fonction :epkg:`dir` permet aussi d'obtenir des informations sur la classe. Cette fonction appliquée à la classe ou à une instance retourne l'ensemble de la liste des attributs et des méthodes. L'exemple suivant utilise la fonction -`dir `_ -avant et après l'appel de la méthode ``meth``. Etant donné +:epkg:`dir` avant et après l'appel de la méthode ``meth``. Etant donné que cette méthode ajoute un attribut, la fonction -`dir `_ -retourne une liste plus longue après l'appel. +:epkg:`dir` retourne une liste plus longue après l'appel. .. runpython:: :showcode: @@ -681,7 +676,7 @@ retourne une liste plus longue après l'appel. print(dir(a)) # affiche ['__doc__', '__module__', 'meth', 'y'] print(dir(essai_class)) # affiche ['__doc__', '__module__', 'meth'] -La fonction `dir `_ +La fonction :epkg:`dir` appliquée à la classe elle-même retourne une liste qui inclut les méthodes et les attributs déjà déclarés. Elle n'inclut pas ceux qui sont déclarés dans une méthode jamais exécutée @@ -1022,7 +1017,7 @@ l'interprétation de ``print(a[4])`` : - Opérateurs appelés pour les opérations ``+``, ``/``, ``*``, ``-``, ``**``, ``<``, ``<`` * - ``__iadd__(self,x)``, ``__idiv__(self,x)``, ``__imul__(self,x)``, - ``__isub__(self,x)``, ``__ipow__(self,x)``, ``__ilshift__(self, x)`` + ``__isub__(self,x)``, ``__ipow__(self,x)``, ``__ilshift__(self, x)`` ``__irshift__(self, x)`` - Opérateurs appelés pour les opérations ``+=``, ``/=``, ``*=``, ``-=``, ``**=``, ``<<=``, ``>>=`` @@ -2541,7 +2536,7 @@ définition reste inchangée. Lorsqu'une classe *B* hérite de la classe *A* et redéfinit une méthode de la classe *A* portant le même nom, on dit qu'elle surcharge cette méthode. S'il n'est pas explicitement précisé qu'on fait appel à une méthode d'une classe donnée, c'est toujours la méthode surchargée qui est exécutée. - + Syntaxe ------- @@ -2594,7 +2589,7 @@ On obtient le résultat suivant : .. _remarque_method_resolution_order: -La rubrique `Method Resolution Order `_ +La rubrique :epkg:`Method Resolution Order` indique la liste des héritages successifs qui ont mené à la classe ``piece_tres_truquee``. Cette rubrique indique aussi que, lorsqu'on appelle une méthode de la classe ``piece_tres_truquee``, si elle n'est pas redéfinie dans cette classe, @@ -2622,7 +2617,7 @@ classe hérite d'une autre comme le montre l'exemple suivant. print(piece_normale in piece_tres_truquee.__bases__) # affiche False print(piece_truquee in piece_tres_truquee.__bases__) # affiche True -La fonction `issubclass `_ +La fonction :epkg:`issubclass` permet d'obtenir un résultat équivalent. ``issubclass(A,B)`` indique si la classe ``A`` hérite directement ou indirectement de la classe ``B``. Le paragraphe :ref:`fonction_issubclass_paragraphe` revient sur cette fonction. @@ -2730,8 +2725,8 @@ de la classe fille afin que cette attribut existe pour la classe fille. .. _heritage_classe_sens_par: -Sens de l'héritage ------------------- +Sens de l'héritage (2) +---------------------- Il n'est pas toujours évident de concevoir le sens d'un héritage. En mathématique, le carré est un rectangle dont les côtés sont @@ -2886,7 +2881,7 @@ méthode ``calcul`` qui, par défaut, sera celle de la classe ``A``. Cette information est disponible via la fonction ``help`` appliquée à la classe ``C``. C'est dans ce genre de situations que l'information apportée par la section -`Method Resolution Order `_ +:epkg:`Method Resolution Order` est importante. :: @@ -2952,7 +2947,7 @@ Fonctions issubclass et isinstance .. index:: issubclass -La fonction `issubclass `_ +La fonction :epkg:`issubclass` permet de savoir si une classe hérite d'une autre. :: @@ -3244,8 +3239,8 @@ Constructions classiques .. _paragraphe_fonction_variable_classe: -Héritage --------- +Sens de l'héritage (1) +---------------------- Le premier exemple est classique puisqu'il reprend le programme du paragraphe :ref:`paragraphe_fonction_variable` diff --git a/_doc/c_gui/tkinter.rst b/_doc/c_gui/tkinter.rst index 392bb372..411946da 100644 --- a/_doc/c_gui/tkinter.rst +++ b/_doc/c_gui/tkinter.rst @@ -24,26 +24,27 @@ une fonction. C'est comme si le programme avait une multitude de points d'entrée. Il existe plusieurs modules permettant d'exploiter les interfaces graphiques. -Le plus simple est le module `tkinter `_ +Le plus simple est le module :epkg:`tkinter` présent lors de l'installation du langage *Python*. Ce module est simple mais limité. -Le module `wxPython `_ est une alternative plus riche +Le module :epkg:`wxPython` est une alternative plus riche mais il faut vérifier que sa dernière mise à jour est assez récente. La plus connue est `PyQt5 `_ (ou `PyQt4 `_). -Le module `tkinter `_ +Le module :epkg:`tkinter` fait partie de la distribution standard de *Python* et sera disponible dans toutes les verions de *Python*. Visuellement, *tkinter* est moins *joli* que d'autres extensions mais il vaut mieux vérifier la fréquence des mises à jour de leur code source avant d'en choisir une `github/wxPython `_ `github/PyQt5 `_. -La licence de `wxPython `_ est plus souple. +La licence de :epkg:`wxPython` est plus souple. D'autres alternatives sont disponibles à -`Other Graphical User Interface Packages `_. +`Other Graphical User Interface Packages +`_. Le fonctionnement des interfaces graphiques sous un module ou un autre est presque identique. C'est pourquoi ce chapitre n'en présentera qu'un seul, -le module `tkinter `_. +le module :epkg:`tkinter`. Pour d'autres modules, les noms de classes changent mais la logique reste la même : il s'agit d'associer des événements à des parties du programme *Python*. @@ -53,7 +54,17 @@ Une excellente source de documentation sont les forums de discussion qui sont un lieu où des programmeurs échangent questions et réponses. Un message d'erreur entré sur un moteur de recherche Internet permet souvent de tomber sur des échanges de ce type, sur des problèmes résolus par d'autres. -Le plus connu est `stackoverflow/tkinter `_. +Le plus connu est `stackoverflow/tkinter +`_. + +Sous Linux, l'utilisation de ce module requiert une étape supplémentaire +si l'erreur suivante se produit : +`ImportError: No module named 'Tkinter' +`_. + +:: + + sudo apt-get install python3-tk .. _chap_interface_intro_section: @@ -627,7 +638,7 @@ Il suffit de transposer cet exemple pour ajouter une barre de défilement horizo Toutefois, il est préférable d'utiliser un objet prédéfini présent dans le module `tix `_ qui est une extension du module -`tkinter `_. +:epkg:`tkinter`. Elle est présentée au paragraphe :ref:`chap_interface_exemple_programme`. Lorsqu'on insère plusieurs objets @@ -660,7 +671,7 @@ Liste avec barre de défilement, Combobox C'est une liste avec une barre de défilement incluse qui est présente dans l'extension `ttk `_ qui étend la liste des objets proposés par -`tkinter `_. +:epkg:`tkinter`. C'est ce que fait l'objet `ttk.Combobox `_. @@ -1649,7 +1660,7 @@ Fenêtres standard Le module `tix `_ propose une fenêtre de sélection de fichiers identique à celle de la figure suivante. -`tkinter `_ +:epkg:`tkinter` a l'avantage d'être simple et ne nécessite pas un long apprentissage pour le maîtriser mais il est limité. Pour ce type de fenêtres qu'on retrouve dans la plupart des programmes, il existe presque toujours @@ -2079,7 +2090,7 @@ première fonction pour revenir à la fonction ``mainloop``, la seule capable de saisir le prochain événement. La figure qui suit précise la gestion des messages. -`tkinter `_ +:epkg:`tkinter` se charge de la réception des messages puis de l'appel au traitement correspondant indiqué par la méthode ou la fonction attachée à l'événement. Le programmeur peut définir les traitements associés @@ -2156,7 +2167,7 @@ d'événements particulière. Communiquer un résultat par message ----------------------------------- -Le module `tkinter `_ +Le module :epkg:`tkinter` permet de définir ses propres messages qui peuvent servir à communiquer des informations. Une fonction est par exemple appelée lorsqu'un bouton est pressé. Celle-ci, une fois terminée, retourne son résultat sous forme diff --git a/_doc/c_lang/constructions.rst b/_doc/c_lang/constructions.rst index 5253411b..ae42fd93 100644 --- a/_doc/c_lang/constructions.rst +++ b/_doc/c_lang/constructions.rst @@ -8,7 +8,7 @@ Constructions classiques .. contents:: :local: -Constructions classiques +Constructions fréquentes ======================== .. exreflist:: diff --git a/_doc/c_lang/dates.rst b/_doc/c_lang/dates.rst index 86c0a35a..e61efd66 100644 --- a/_doc/c_lang/dates.rst +++ b/_doc/c_lang/dates.rst @@ -12,8 +12,7 @@ Dates datetime ======== -Le module `datetime `_ -fournit une classe `datetime `_ +Le module :mod:`datetime` fournit une classe :class:`datetime.datetime` qui permet de faire des opérations et des comparaisons sur les dates et les heures. L'exemple suivant calcule l'âge d'une personne née le 11 août 1975. @@ -27,16 +26,14 @@ L'exemple suivant calcule l'âge d'une personne née le 11 août 1975. age = jour - naissance # calcule une différence print(age) # affiche 12614 days, 1:25:10.712000 -L'objet `datetime `_ +L'objet :class:`datetime.datetime` autorise les soustractions et les comparaisons entre deux dates. Une soustraction -retourne un objet de type -`timedelta `_ +retourne un objet de type :class:`datetime.timedelta` qui correspond à une durée qu'on peut multiplier par un réel ou ajouter à un -objet de même type ou à un objet de type -`datetime `_. +objet de même type ou à un objet de type :class:`datetime.datetime`. L'utilisation de ce type d'objet évite de se pencher sur tous les problèmes de conversion. -Le module `calendar `_ +Le module :mod:`calendar` est assez pratique pour construire des calendriers. Le programme ci-dessous affiche une liste de t-uples incluant le jour et le jour de la semaine du mois d'août 1975. Dans cette liste, on y trouve le t-uple ``(11,0)`` @@ -65,8 +62,7 @@ dépend du système d'exploitation. C'est un nombre réel : la partie entière est un nombre de seconde, la partie décimale donne les millisecondes. La valeur n'a pas de sens exploitable à moins de la convertir en un format compréhensible. -C'est ce que fait la fonction -`fromtimestamp `_. +C'est ce que fait la fonction :meth:`datetime.datetime.fromtimestamp`. .. runpython:: :showcode: diff --git a/_doc/c_lang/faq.rst b/_doc/c_lang/faq.rst index 56e05c48..0c795179 100644 --- a/_doc/c_lang/faq.rst +++ b/_doc/c_lang/faq.rst @@ -8,9 +8,16 @@ FAQ .. contents:: :local: -FAQ -=== +Python +====== .. faqreflist:: :tag: python :contents: + +numpy +===== + +.. faqreflist:: + :tag: numpy + :contents: diff --git a/_doc/c_lang/syntaxe.rst b/_doc/c_lang/syntaxe.rst index bc966e6f..1d582d54 100644 --- a/_doc/c_lang/syntaxe.rst +++ b/_doc/c_lang/syntaxe.rst @@ -195,7 +195,7 @@ il est possible de condenser l'écriture avec le mot-clé ``elif`` : Le décalage des instructions par rapport aux lignes contenant les mots-clés ``if``, ``elif``, ``else`` est très important : il fait partie de la syntaxe du langage -et s'appelle l'`indentation `_. +et s'appelle l':epkg:`indentation`. Celle-ci permet de grouper les instructions ensemble. Le programme suivant est syntaxiquement correct même si le résultat n'est pas celui désiré. @@ -297,18 +297,18 @@ qui sont eux-mêmes sur les opérateurs logiques ``not``, ``and``, ``or``. Il est tout de même conseillé d'ajouter des parenthèses en cas de doute. C'est ce qu décrit la page `Operator precedence `_. -Ecriture condensée ------------------- +Ecriture condensée (test) +------------------------- Il existe deux écritures condensées de tests. La première consiste à écrire un test et l'unique instruction qui en dépend sur une seule ligne. :: -if condition : - instruction1 -else : - instruction2 + if condition : + instruction1 + else : + instruction2 Ce code peut tenir en deux lignes : @@ -327,8 +327,8 @@ variable à tester est entière. ``if x == 1 or x == 6 or x == 50 :`` peut être résumé simplement par ``if x in (1,6,50) :`` ou ``if x in {1,6,50}:`` pour les grandes listes. -Exemple -------- +Exemple (test) +-------------- L'exemple suivant associe à la variable ``signe`` le signe de la variable ``x``. @@ -356,7 +356,7 @@ Son écriture condensée lorsqu'il n'y a qu'une instruction à exécuter : print(signe) Le programme suivant saisit une ligne au clavier et dit si c'est "oui" ou "non" qui a été saisi. -La fonction `input `_ retourne +La fonction :func:`input` retourne ce qui vient de l'utilisateur : :: @@ -367,7 +367,7 @@ ce qui vient de l'utilisateur : else: print "non" -La fonction `input `_ +La fonction :func:`input` invite l'utilisateur d'un programme à saisir une réponse lors de l'exécution du programme. Tant que la touche entrée n'a pas été pressée, l'exécution du programme ne peut continuer. Cette fonction est en réalité peu utilisée. Les interfaces graphiques sont @@ -617,8 +617,7 @@ qui réduit l'exemple suivant en trois lignes: La boucle la plus répandue est celle qui parcourt des indices entiers compris entre *0* et *n-1*. On utilise pour cela la boucle ``for`` et la fonction -`range `_ -comme dans l'exemple qui suit. +:func:`range` comme dans l'exemple qui suit. .. runpython:: :showcode: @@ -780,8 +779,8 @@ Il est alors possible de parcourir plusieurs séquences print(y), " est le carré de ", x # affichage à droite -Ecriture condensée ------------------- +Ecriture condensée (for) +------------------------ Comme pour les tests, lorsque les boucles ne contiennent qu'une seule instruction, il est possible de l'écrire sur @@ -1130,8 +1129,8 @@ Sans l'instruction ``return``, toute fonction retourne ``None``. .. _para_fonction_exemple: -Exemple -------- +Exemple (for) +------------- Le programme suivant utilise deux fonctions. La première convertit des coordonnées cartésiennes en @@ -1186,7 +1185,6 @@ est spécifiée pour un paramètre, alors tous ceux qui suivent devront eux aussi avoir une valeur par défaut. Exemple : -% .. runpython:: :showcode: @@ -2064,8 +2062,7 @@ sont présentées :ref:`plus bas `. .. index:: map -La fonction `map `_ -permet d'écrire des boucles de façon simplifiée. +La fonction :func:`map` permet d'écrire des boucles de façon simplifiée. Elle est utile dans le cas où on souhaite appliquer la même fonction à tous les éléments d'un ensemble. Par exemple les deux dernières lignes du programme suivant sont équivalentes. @@ -2081,11 +2078,11 @@ lignes du programme suivant sont équivalentes. print(map(est_pair, l)) print(list(map(est_pair, l))) # affiche [0, 1, 0, 0, 1, 0] -La fonction `map `_ +La fonction :func:`map` retourne un itérateur et non un ensemble. Cela explique le second résultat du programme précédent. Pour obtenir les résultats, il faut explicitement parcourir l'ensemble des résultats. C'est ce que fait la dernière instruction. La fonction -`map `_ +:func:`map` est une :ref:`fonction générateur `. Elle peut aider à simplifier l'écriture lorsque plusieurs listes sont impliquées. Ici encore, les deux dernières lignes sont équivalentes. diff --git a/_doc/c_lang/types.rst b/_doc/c_lang/types.rst index 85af8113..00bf97ef 100644 --- a/_doc/c_lang/types.rst +++ b/_doc/c_lang/types.rst @@ -10,7 +10,7 @@ Types et variables du langage python Variables ========= -.. index:: variabl +.. index:: variable Il est impossible d'écrire un programme sans utiliser de variable. Ce terme désigne le fait d'attribuer un nom ou identificateur à des informations : @@ -424,8 +424,7 @@ Création d'une chaîne de caractères - str Ce texte est compris entre deux guillemets ou deux apostrophes, ces deux symboles sont interchangeables. -Le type *python* est `str `_. -L'exemple suivant montre comment +Le type *python* est :class:`str`. L'exemple suivant montre comment créer une chaîne de caractères. Il ne faut pas confondre la partie entre guillemets ou apostrophes, qui est une constante, de la variable qui la contient. @@ -492,7 +491,8 @@ du symbole ``\``. La séquence ``\`` est appelée un extra-caractère d'un système *Windows* à *Linux* car *Windows* l'ajoute automatiquement à tous ses fichiers textes * - ... - - Lire `String and Bytes literals `_. + - Lire `String and Bytes literals + `_. Liste des extra-caractères les plus couramment utilisés à l'intérieur d'une chaîne de caractères @@ -667,7 +667,7 @@ Formatage d'une chaîne de caractères Syntaxe % ^^^^^^^^^ -*python* (`printf-style String Formatting `_) +*python* (:epkg:`printf-style String Formatting`) offre une manière plus concise de former une chaîne de caractères à l'aide de plusieurs types d'informations en évitant la conversion explicite de ces informations (type ``str``) @@ -748,7 +748,7 @@ est susceptible d'évoluer et d'ajouter de nouveaux formats. * - ``s`` - chaîne de caractères * - ... - - Lire `printf-style String Formatting `_. + - Lire :epkg:`printf-style String Formatting`. Méthode format ^^^^^^^^^^^^^^ @@ -994,10 +994,9 @@ bytes .. index:: bytes -Le type `bytes `_ +Le type :class:`bytes` représente un tableau d'octets. Il fonctionne quasiment pareil que le type -`str `_. -Les opérations qu'on peut faire dessus sont quasiment identiques : +:class:`str`. Les opérations qu'on peut faire dessus sont quasiment identiques : .. index:: count, find, replace, split, join, startswith, endswith @@ -1052,7 +1051,7 @@ par **b** : .. index:: encode, decode Le type *bytes* est très utilisé quand il s'agit de convertit une chaîne -de caractères d'un `encoding `_ +de caractères d'un :epkg:`encoding` à l'autre. .. runpython:: @@ -1063,7 +1062,7 @@ de caractères d'un `encoding `_ +Les :epkg:`encoding` sont utiles dès qu'une chaîne de caractères contient un caractère non anglais (accent, sigle...). Les bytes sont aussi très utilisés pour `sérialiser `_ un objet. @@ -1104,16 +1103,15 @@ bytearray .. index:: bytearray -Le type `bytearray `_ -est la version *mutable* du type :ref:`l-type-bytes`. +Le type :epkg:`bytearray` est la version *mutable* du type :ref:`l-type-bytes`. Liste +++++ .. index:: liste, list -Définition et fonctions -^^^^^^^^^^^^^^^^^^^^^^^ +Définition et méthodes (list) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. mathdef:: :tag: Définition @@ -1229,8 +1227,8 @@ qui s'appliquent sur les chaînes de caractères, elles sont présentées par la Si ``reverse`` est ``True``, alors le tri est décroissant. Lire `Sorting HOW TO `_. -Exemples -^^^^^^^^ +Exemples (list) +^^^^^^^^^^^^^^^ L'exemple suivant montre une utilisation de la méthode ``sort``. @@ -1429,7 +1427,7 @@ bouts par petits bouts comme le montre le premier exemple ci-dessous. Cette construction peut s'avérer très lente lorsque le résultat est long. Dans ce cas, il est nettement plus rapide d'ajouter chaque morceau dans une liste puis de les concaténer en une seule fois grâce à la méthode -`join `_ +:meth:`str.join`. :: @@ -1484,8 +1482,7 @@ n'est pas recopiée, la liste reçoit seulement un nom de variable. L'affectation est en fait l'association d'un nom avec un objet (voir paragraphe :ref:`par_copie_objet`). Pour copier une liste, il faut utiliser la fonction -`copy `_ -du module `copy `_ +:func:`copy.copy` du module :mod:`copy`. .. runpython:: :showcode: @@ -1499,7 +1496,7 @@ du module `copy `_ print(l) # affiche [4,5,6] print(l2) # affiche [4, 'modif', 6] -Le module `copy `_ +Le module :mod:`copy` est une extension interne. Cette syntaxe sera vue au chapitre :ref:`chap_module`. Ce point sera rappelé au paragraphe :ref:`classe_list_dict_ref_par`. L'opérateur ``==`` permet de savoir si deux listes sont égales même si l'une est @@ -1523,12 +1520,10 @@ ou si l'une est une copie de l'autre comme le montre l'exemple suivant : .. _copy_deepopy_remarque_: -Le comportement de la fonction -`copy `_ +Le comportement de la fonction :func:`copy.copy` peut surprendre dans le cas où une liste contient d'autres listes. Pour être sûr que chaque élément d'une liste a été correctement recopiée, -il faut utiliser la fonction -`deepcopy `_. +il faut utiliser la fonction :epkg:`deepcopy`. La fonction est plus longue mais elle recopie toutes les listes que ce soit une liste incluse dans une liste elle-même incluse dans une autre liste elle-même incluse... @@ -1548,7 +1543,7 @@ dans une autre liste elle-même incluse... print(l [0] is l2 [0]) # affiche True print(l [0] is l3 [0]) # affiche False -La fonction `deepcopy `_ +La fonction :epkg:`deepcopy` est plus lente à exécuter car elle prend en compte les références récursives comme celles de l'exemple suivant où deux listes se contiennent l'une l'autre. @@ -1588,8 +1583,8 @@ ce nom ou parcourir toute la liste si jamais celui-ci ne s'y trouve pas. Dans le cas d'un dictionnaire, cette recherche du nom sera beaucoup plus rapide à écrire et à exécuter. -Définition et fonctions -^^^^^^^^^^^^^^^^^^^^^^^ +Définition et méthodes (dict) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. index:: clé, valeur @@ -1686,8 +1681,8 @@ Les itérateurs sont des objets qui permettent de parcourir rapidement un dictio ils seront décrits en détail au chapitre :ref:`chap_classe` sur les classes. Un exemple de leur utilisation est présenté dans le paragraphe suivant. -Exemples -^^^^^^^^ +Exemples (dict) +^^^^^^^^^^^^^^^ Il n'est pas possible de trier un dictionnaire. L'exemple suivant permet néanmoins d'afficher tous les éléments d'un dictionnaire selon @@ -1751,8 +1746,8 @@ Dans le meilleur des cas, l'erreur suivante survient : .. _par_dictionnaire_copie: -Copie -^^^^^ +Copie (dict) +^^^^^^^^^^^^ .. index:: copy, copie @@ -1775,7 +1770,7 @@ Lorsqu'on affecte un dictionnaire à une variable, celui-ci n'est pas recopié, le dictionnaire reçoit seulement un nom de variable. L'affectation est en fait l'association d'un nom avec un objet (voir paragraphe :ref:`par_copie_objet`). Pour copier un dictionnaire, on peut utiliser la méthode -`copy `_. +:meth:`dict.copy`. .. runpython:: :showcode: @@ -1792,7 +1787,7 @@ Le mot-clé ``is`` a la même signification pour les dictionnaires que pour les listes, l'exemple du paragraphe :ref:`par_liste_copie` est aussi valable pour les dictionnaires. Il en est de même pour la remarque concernant la fonction -`deepcopy `_. +:epkg:`deepcopy`. Cette fonction recopie les listes et les dictionnaires. .. _cle_dict_modificalbe_apr: @@ -1974,7 +1969,7 @@ La fonction `str `_ qui effectue cette conversion. Dans ce cas, le résultat peut être -interprété par la fonction `eval `_ +interprété par la fonction :epkg:`eval` qui se charge de la conversion inverse. Pour les types simples comme ceux présentés dans ce chapitre, ces deux fonctions retournent des résultats identiques. @@ -1995,7 +1990,7 @@ Fonction ``eval`` .. index:: eval Comme le suggère le paragraphe précédent, la fonction -`eval `_ +:epkg:`eval` permet d'évaluer une chaîne de caractères ou plutôt de l'interpréter comme si c'était une instruction en *python*. Le petit exemple suivant permet de tester toutes les opérations de @@ -2013,18 +2008,16 @@ calcul possibles entre deux entiers. Le programme va créer une chaîne de caractères pour chacune des opérations et celle-ci sera évaluée grâce à la fonction -`eval `_ +:epkg:`eval` comme si c'était une expression numérique. Il faut bien sûr que les variables que l'expression mentionne existent durant son évaluation. Informations fournies par *python* ++++++++++++++++++++++++++++++++++ -.. index:: dir - Bien que les fonctions ne soient définies que plus tard (paragraphe :ref:`par_fonction`, il peut être intéressant de mentionner -la fonction `dir `_ +la fonction :epkg:`dir` qui retourne la liste de toutes les variables créées et accessibles à cet instant du programme. L'exemple suivant : @@ -2059,7 +2052,7 @@ l'environnement dans lequel est exécuté le programme *python* : * - ``__name__`` - Contient le nom du module. -La fonction `dir `_ +La fonction :epkg:`dir` est également pratique pour afficher toutes les fonctions d'un module. L'instruction ``dir(sys)`` affiche la liste des fonctions du module `sys `_ diff --git a/_doc/c_module/files.rst b/_doc/c_module/files.rst index f48d7bc0..a73b1bde 100644 --- a/_doc/c_module/files.rst +++ b/_doc/c_module/files.rst @@ -37,7 +37,7 @@ commençant par 06... En utilisant des modules tels que ou encore `openpyxl `_, il serait possible d'étendre cette fonctionnalité aux fichiers de type `pdf `_ -et aux fichiers `Excel `_. +et aux fichiers :epkg:`Excel`. Format texte ============ @@ -46,11 +46,10 @@ Format texte Les `fichiers texte `_ sont les plus simples : ce sont des suites de caractères. Le format -`HTML `_ et -`XML `_ font partie de +:epkg:`HTML` et :epkg:`XML` font partie de cette catégorie. Ils servent autant à conserver des informations qu'à en échanger comme par exemple transmettre une matrice à -`Excel `_. +:epkg:`Excel`. Ce format, même s'il est simple, implique une certaine organisation dans la façon de conserver les données afin de pouvoir les récupérer. Le cas le @@ -152,11 +151,10 @@ Ou encore : f.write ( str (mat [i][j]) + "\t") f.write ("\n") -La fonction `open `_ -accepte deux paramètres, le premier est le nom du fichier, -le second définit le mode d'ouverture : ``"w"`` pour écrire (**w**rite), -"a" pour écrire et ajouter (**a**ppend), -"r" pour lire (**r**ead). Ceci signifie que la fonction ``open`` +La fonction :func:`open` accepte deux paramètres, le premier est le nom du fichier, +le second définit le mode d'ouverture : ``"w"`` pour écrire (**w** rite), +"a" pour écrire et ajouter (**a** ppend), +"r" pour lire (**r** ead). Ceci signifie que la fonction ``open`` sert à ouvrir un fichier quelque soit l'utilisation qu'on en fait. A la première écriture dans un fichier (premier appel à la fonction ``write``, @@ -286,13 +284,11 @@ d'une ligne. C'est pour cela que la lecture est parfois suivie d'une l_net = [ s.strip ("\n\r") for s in l ] Les informations peuvent être structurées de façon plus élaborée dans un fichier texte, -c'est le cas des formats `HTML `_ et -`XML `_. +c'est le cas des formats :epkg:`HTML` et +:epkg:`XML`. Pour ce type de format plus complexe, il est déconseillé de concevoir soi-même un programme capable de les lire, il existe presque toujours un module qui permette -de le faire. C'est le cas du module -`html.parser `_ -ou `xml `_. +de le faire. C'est le cas du module :mod:`html.parser` ou :mod:`xml`. De plus, les modules sont régulièrement mis à jour et suivent l'évolution des formats qu'ils décryptent. @@ -346,7 +342,7 @@ Encoding et les accents Par défaut, un fichier n'accepte pas d'enregistrer des accents, uniquement les acaractères `ascii `_. C'est pourquoi il faut presque tout le temps utiliser le paramètre *encoding* -de la fonction `open `_ +de la fonction :func:`open` que ce soit pour écrire ou lire. :: @@ -372,8 +368,8 @@ sur les fichiers textes existent comme `7-zip `_. Ce format n'est pas seulement utilisé pour compresser mais aussi comme un moyen de regrouper plusieurs fichiers en un seul. -Lecture -------- +Lecture (zip) +------------- L'exemple suivant permet par exemple d'obtenir la liste des fichiers inclus dans un fichier *zip* : @@ -399,16 +395,16 @@ lu est au format texte donc lisible). On retrouve dans ce cas les étapes d'ouverture et de fermeture même si la première est implicitement inclus dans le constructeur de la classe -`ZipFile `_. +:class:`zipfile.ZipFile`. -Ecriture --------- +Ecriture (zip) +-------------- Pour créer un fichier *zip*, le procédé ressemble à la création de n'importe quel fichier. La seule différence provient du fait qu'il est possible de stocker le fichier à compresser sous un autre nom à l'intérieur du fichier *zip*, ce qui explique les deux premiers arguments -de la méthode `write `_. +de la méthode :meth:`zipfile.ZipFile.write`. Le troisième paramètre indique si le fichier doit être compressé `ZIP_DEFLATED `_ ou non `ZIP_STORED `_. @@ -666,8 +662,8 @@ qui peut être alors pris en compte grâce aux expressions régulières if i > 5: break -Format binaire -============== +Sans format ou format binaire +============================= .. index:: format binaire @@ -689,20 +685,20 @@ l'ordinateur : une suite d'octets (bytes en anglais). Deux étapes vont intervenir que ce soit pour l'écriture : 1. On récupère les informations dans une suite d'octets - (fonction `pack `_ - du module `struct `_). + (fonction :func:`struct.pack` + du module :mod:`struct`). 2. On les écrit dans un fichier - (méthode `write `_ + (méthode :meth:`io.RawIOBase.write` affiliée aux fichiers). Ou la lecture : 1. On lit une suite d'octets depuis un fichier - (méthode `read `_ + (méthode :meth:`io.RawIOBase.read` affiliée aux fichiers). 2. On transforme cette suite d'octets pour retrouver l'information qu'elle formait initialement - (fonction `unpack `_). + (fonction :func:`struct.unpack`). L'utilisation de fichiers binaires est moins évidente qu'il n'y paraît et il faut faire appel à des modules spécialisés alors que la gestion des @@ -721,8 +717,7 @@ problèmes que pour un fichier texte : il faut organiser les données avant de les enregistrer pour savoir comment les retrouver. Les types immuables (réel, entier, caractère) sont assez simples à gérer dans ce format. Pour les objets complexes, *python* propose une solution grâce au module -`pickle `_ -(voir aussi le modile `dill `_ +:mod:`pickle` (voir aussi le modile :epkg:`dill` pour des types telles que des fonctions). Ecriture dans un fichier binaire @@ -734,11 +729,11 @@ C'est le code ``"wb"`` qui est important (*w* pour *write*, *b* pour *binary*), il spécifie le mode d'ouverture ``"w"`` et le format ``"b"``. La fermeture est la même que pour un fichier texte. -Le module `struct `_ -et la fonction `pack `_ +Le module :mod:`struct` +et la fonction :func:`struct.pack` permet de convertir les informations sous forme de chaîne de caractères avant de les enregistrer au format binaire. -La fonction `pack `_ +La fonction :func:`struct.pack` construit une chaîne de caractères égale au contenu de la mémoire. Son affichage avec la fonction *print* produit quelque chose d'illisible le plus souvent. @@ -759,7 +754,7 @@ Lecture d'un fichier binaire Le code associé à l'ouverture d'un fichier binaire en mode lecture est ``"rb"``, cela donne : ``open("", "rb")``. La lecture utilise la fonction -`unpack `_ +:func:`struct.unpack` pour effectuer la conversion inverse, celle d'une chaîne de caractères en entiers, réels, ... Le paragraphe suivant illustre la lecture et l'écriture au format binaire. @@ -797,7 +792,7 @@ fichier à l'aide d'un éditeur de texte. print(x) print(s) -Les résultats de la méthode `unpack `_ +Les résultats de la méthode :func:`struct.unpack` apparaissent dans un tuple mais les données sont correctement récupérées. Ce programme fait aussi apparaître une des particularité du format binaire. On suppose ici que la chaîne de caractères est toujours de @@ -860,7 +855,7 @@ Objets plus complexes .. index:: sérialisation Il existe un moyen de sauvegarder dans un fichier des objets -plus complexes à l'aide du module `pickle `_ +plus complexes à l'aide du module :mod:`pickle` Celui-ci permet de stocker dans un fichier le contenu d'un dictionnaire à partir du moment où celui-ci contient des objets standard du langage *python*. Le principe pour l'écriture est le suivant : @@ -884,7 +879,7 @@ La lecture est aussi simple : dico = pickle.load(fb) lis = pickle.load(fb) -Un des avantages du module `pickle `_ +Un des avantages du module :mod:`pickle` est de pouvoir gérer les références circulaires : il est capable d'enregistrer et de relire une liste qui se contient elle-même, ce peut être également une liste qui en contient une autre qui contient la première... @@ -963,8 +958,8 @@ que le montre l'exemple suivant : print(t) -Le module `pickle `_ +Le module :mod:`pickle` ne permet de sérialiser tout type d'objet comme les fonctions. Il est parfois utile de sauver une fonction car c'est un paramètre du programme. Il faut dans ce cas soit le faire soi-même, soit utiliser le module -`dill `_. +:epkg:`dill`. diff --git a/_doc/c_module/module.rst b/_doc/c_module/module.rst index 4712334b..f0a54725 100644 --- a/_doc/c_module/module.rst +++ b/_doc/c_module/module.rst @@ -3,9 +3,9 @@ .. _chap_module: -======= -Modules -======= +=================== +Module ou extension +=================== .. contents:: :local: @@ -19,8 +19,8 @@ fichier principal, il contient son point d'entrée, les premières instructions exécutées. Les autres fichiers sont considérés comme des modules, en quelque sorte, des annexes qui contiennent tout ce dont le fichier principal a besoin. -Modules -======= +Un module +========= Exemple ------- @@ -28,7 +28,7 @@ Exemple .. index:: point d'entrée Cet exemple montre comment répartir un programme sur deux fichiers. -Le premier est appelé \textit{module} car il n'inclut pas le point d'entrée du programme. +Le premier est appelé *module* car il n'inclut pas le point d'entrée du programme. .. mathdef:: :title: point d'entrée du programme @@ -132,7 +132,7 @@ La dernière instruction affiche l'aide du module : FILE module_exemple.py -Pour importer un module, il suffit d'insérer l'instruction \ +Pour importer un module, il suffit d'insérer l'instruction ``import nom_module`` avant d'utiliser une des choses qu'il définit. Ces importations sont souvent regroupées au début du programme, elles sont de cette façon mises en évidence même s'il est possible de les @@ -174,8 +174,7 @@ Le module ``module_exemple`` contient une variable ``exemple_variable`` peut être modifiée au cours de l'exécution du programme. Il est possible de revenir à sa valeur initiale en forçant *python* à recharger le module grâce à la fonction `import.reload `_ -elle même implémentée dans le module -`importlib `_. +elle même implémentée dans le module :mod:`importlib`. .. mathdef:: :title: importer un module (1) @@ -286,7 +285,7 @@ d'installation de *python*. Si ce n'est pas le cas, il faut préciser sys.path.append("répertoire où se trouve le module à importer") import nom_module -La variable `sys.path `_ +La variable :epkg:`sys.path` contient les répertoires où *python* va chercher les modules. Le premier d'entre eux est le répertoire du programme. Il suffit d'ajouter à cette liste le répertoire désiré. @@ -397,8 +396,7 @@ module si celui-ci est désigné par un nom de fichier incluant son répertoire. Il faut d'abord déterminer le répertoire où est le module grâce à la fonction `split `_ -du module -`os.path `_. +du module :mod:`os.path`. Le programme suivant illustre cette possibilité en proposant une fonction qui importe un module connaissant le nom du fichier qui le contient. Il ne faut pas oublier d'enlever l'extension et ne pas garder aucun répertoire. @@ -414,8 +412,8 @@ Il ne faut pas oublier d'enlever l'extension et ne pas garder aucun répertoire. Liste des modules importés -------------------------- -Le dictionnaire `modules `_ -du module `sys `_ contient l'ensemble +Le dictionnaire :epkg:`sys.modules` +du module :mod:`sys` contient l'ensemble des modules importés. Le programme suivant affiche cette liste. .. runpython:: @@ -433,13 +431,13 @@ Lorsque le programme stipule l'import d'un module, *python* vérifie s'il n'est pas déjà présent dans cette liste. Dans le cas contraire, il l'importe. Chaque module n'est importé qu'une seule fois. La première instruction ``import module_exemple`` rencontrée introduit une nouvelle -entrée dans le dictionnaire `modules `_ : +entrée dans le dictionnaire :epkg:`sys.modules` : :: module_exemple -Le dictionnaire `modules `_ +Le dictionnaire :epkg:`sys.modules` peut être utilisé pour vérifier la présence d'un module ou lui assigner un autre identificateur. Un module est un objet qui n'autorise qu'une seule instance. @@ -458,7 +456,7 @@ Arborescence de modules, paquetage Lorsque le nombre de modules devient conséquent, il est parfois souhaitable de répartir tous ces fichiers dans plusieurs répertoires. Il faudrait alors inclure tous ces répertoires dans la liste -`sys.path `_ +:epkg:`sys.path` ce qui paraît fastidieux. *python* propose la définition de paquetage, ce dernier englobe tous les fichiers *python* d'un répertoire à condition que celui-ci contienne un fichier ``__init__.py`` qui peut @@ -567,7 +565,7 @@ susceptible de s'allonger au fur et à mesure du développement du langage - Lire le format HTML * - `importlib `_ - Pour importer des modules. - * - `math `_ + * - :mod:`math` - Fonctions mathématiques standard telles que `cos `_, `exp `_, @@ -583,7 +581,7 @@ susceptible de s'allonger au fur et à mesure du développement du langage structurées de façon complexe en une structure linéaire facilement enregistrable dans un fichier * - `profile `_ - Etudier le temps passé dans les fonctions d'un programme - * - `random `_ + * - :mod:`random` - Génération de nombres aléatoires * - `re `_ - Expressions régulières @@ -593,7 +591,7 @@ susceptible de s'allonger au fur et à mesure du développement du langage - Accès aux fonctionnalités du gestionnaire de base de données SQLite3 * - `string `_ - Manipulations des chaînes de caractères - * - `sys `_ + * - :mod:`sys` - Fonctions systèmes, fonctions liées au langage *python* * - `threading `_ - Utilisation de threads @@ -614,8 +612,8 @@ susceptible de s'allonger au fur et à mesure du développement du langage Certains de ces modules sont présentés dans les chapitres qui suivent. Le programme suivant par exemple utilise les modules -`random `_ -`math `_ +:mod:`random` +:mod:`math` pour estimer le nombre :math:`\pi`. Pour cela, on tire aléatoirement deux nombres :math:`x,y` dans l'intervalle :math:`[0,1]`, si :math:`\sqrt{x^2+y^2} \infegal 1`, diff --git a/_doc/c_module/serialization.rst b/_doc/c_module/serialization.rst index 25db4ed8..2cb138a9 100644 --- a/_doc/c_module/serialization.rst +++ b/_doc/c_module/serialization.rst @@ -7,7 +7,7 @@ Sérialisation .. index:: sérialisation -La `sérialisation `_ est +La :epkg:`sérialisation` est un besoin fréquent depuis l'avènement d'internet. Une appplication web est souvent un assemblage de services indépendant qui s'échangent des informations complexes. Un service doit transmettre des données @@ -30,7 +30,7 @@ JSON ==== Un des premiers utilisés dans le monde internet est le format -`XML `_. +:epkg:`XML`. Le langage `HTML `_ suit la même logique que le format *XML*. Il peut représenter un assemblage de liste et de dictionnaires @@ -70,7 +70,7 @@ de dictionnaires puis à la convertir sous la forme d'une séquence d'octets. A -> B -> C; } -Le format `XML `_ +Le format :epkg:`XML` intervient lors de la seconde étape. Il est assez *verbeux*. La séquence d'octets ou plutôt de caractères qu'il produit est assez longue même une fois les espaces enlevés. On lui préfère le format :epkg:`JSON` @@ -154,9 +154,9 @@ plus sérialisables par défaut. print(e) On peut néanmoins contourner l'obstacle en indiquant à la fonction -`dump `_ +:func:`json.dump` comment convertir l'instance en un assemblage de listes et de dictionnaires -avec la classe `JSONEncoder `_. +avec la classe :class:`json.JSONEncoder`. .. runpython:: :showcode: @@ -204,8 +204,7 @@ Et la relecture s'effectue comme suit : print(obj) Il existe des alternatives plus rapides au module -`json `_ -come le module :epkg:`ultrajson`. +:mod:`json` comme le module :epkg:`ultrajson`. Binaire ======= diff --git a/_doc/conf.py b/_doc/conf.py index f34de341..ede73c8e 100644 --- a/_doc/conf.py +++ b/_doc/conf.py @@ -174,17 +174,29 @@ "B+ tree": "https://en.wikipedia.org/wiki/B%2B_tree", "BLAS": "https://www.netlib.org/blas/", "Branch and Bound": "https://en.wikipedia.org/wiki/Branch_and_bound", + "bytearray": "https://docs.python.org/3/library/functions.html#bytearray", "C++": "https://fr.wikipedia.org/wiki/C%2B%2B", + "copy": "https://docs.python.org/3/library/copy.html?highlight=copy#copy.copy", "Custom Criterion for DecisionTreeRegressor": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/piecewise_linear_regression_criterion.html", "cython": "https://cython.org/", "DecisionTreeClassifier": "https://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html", "DecisionTreeRegressor optimized for Linear Regression": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/piecewise_linear_regression_criterion.html", + "deepcopy": "https://docs.python.org/3/library/copy.html?highlight=copy#copy.deepcopy", + "dill": "https://dill.readthedocs.io/en/latest/", + "dir": "https://docs.python.org/3/library/functions.html?highlight=dir#dir", "dot": "https://fr.wikipedia.org/wiki/DOT_(langage)", + "encoding": "https://fr.wikipedia.org/wiki/Codage_des_caract%C3%A8res", + "eval": "https://docs.python.org/3/library/functions.html?highlight=id#eval", + "Excel": "https://fr.wikipedia.org/wiki/Microsoft_Excel", "Holm-Bonferroni method": "https://en.wikipedia.org/wiki/Holm%E2%80%93Bonferroni_method", + "HTML": "https://fr.wikipedia.org/wiki/Hypertext_Markup_Language", "ICML 2016": "https://icml.cc/2016/index.html", + "indentation": "https://fr.wikipedia.org/wiki/Style_d%27indentation", + "issubclass": "https://docs.python.org/3/library/functions.html?highlight=issubclass#issubclass", "KMeans": "https://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html", "LAESA": "https://tavianator.com/aesa/", "LAPACK": "http://www.netlib.org/lapack/", + "Method Resolution Order": "https://www.python.org/download/releases/2.3/mro/", "mlinsights": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/index.html", "mlstatpy": "https://sdpython.github.io/doc/mlstatpy/dev/", "numpy": ( @@ -196,6 +208,7 @@ "piecewise_tree_regression.html#mlinsights.mlmodel.piecewise_tree_regression.PiecewiseTreeRegressor", "Pillow": "https://pillow.readthedocs.io/en/stable/", "Predictable t-SNE": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/predictable_tsne.html", + "printf-style String Formatting": "https://docs.python.org/3/library/stdtypes.html#old-string-formatting", "QuantileLinearRegression": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/mlinsights/mlmodel/quantile_regression.html#mlinsights.mlmodel.quantile_regression.QuantileLinearRegression", "R-tree": "https://en.wikipedia.org/wiki/R-tree", "R* tree": "https://en.wikipedia.org/wiki/R*_tree", @@ -203,15 +216,21 @@ "relu": "https://en.wikipedia.org/wiki/Rectifier_(neural_networks)", "ROC": "https://fr.wikipedia.org/wiki/Courbe_ROC", "scikit-learn": "https://scikit-learn.org/stable/index.html", + "sérialisation": "https://fr.wikipedia.org/wiki/S%C3%A9rialisation", "sklearn": "https://scikit-learn.org/stable/index.html", "sklearn-onnx": "https://onnx.ai/sklearn-onnx/", "statsmodels": "http://www.statsmodels.org/stable/index.html", "SVD": "https://fr.wikipedia.org/wiki/D%C3%A9composition_en_valeurs_singuli%C3%A8res", + "sys.modules": "https://docs.python.org/3/library/sys.html?highlight=modules#sys.modules", + "sys.path": "https://docs.python.org/3/library/sys.html#sys.path", "teachpyx": "https://sdpython.github.io/doc/teachpyx/dev/", + "tkinter": "https://docs.python.org/3/library/tk.html", "tqdm": "https://tqdm.github.io/", "Visualize a scikit-learn pipeline": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/visualize_pipeline.html", "X-tree": "https://en.wikipedia.org/wiki/X-tree", + "XML": "https://fr.wikipedia.org/wiki/Extensible_Markup_Language", "wikipedia dumps": "https://dumps.wikimedia.org/frwiki/latest/", + "wxPython": "https://wxpython.org/", } imgmath_latex_preamble = preamble diff --git a/_unittests/ut_examples/test_classique.py b/_unittests/ut_examples/test_classique.py index e9ca7ada..7a999922 100644 --- a/_unittests/ut_examples/test_classique.py +++ b/_unittests/ut_examples/test_classique.py @@ -1,9 +1,3 @@ -""" -@brief test log(time=1s) - -You should indicate a time in seconds. The program ``run_unittests.py`` -will sort all test files by increasing time and run them. -""" import unittest from datetime import datetime from teachpyx.examples.classiques import ( diff --git a/_unittests/ut_examples/test_classique_permutation.py b/_unittests/ut_examples/test_classique_permutation.py index a1fa179f..d83de773 100644 --- a/_unittests/ut_examples/test_classique_permutation.py +++ b/_unittests/ut_examples/test_classique_permutation.py @@ -1,9 +1,3 @@ -""" -@brief test log(time=1s) - -You should indicate a time in seconds. The program ``run_unittests.py`` -will sort all test files by increasing time and run them. -""" import unittest import itertools from teachpyx.examples.construction_classique import ( diff --git a/_unittests/ut_examples/test_construction_classique.py b/_unittests/ut_examples/test_construction_classique.py index b613352d..f259c976 100644 --- a/_unittests/ut_examples/test_construction_classique.py +++ b/_unittests/ut_examples/test_construction_classique.py @@ -1,9 +1,3 @@ -""" -@brief test log(time=1s) - -You should indicate a time in seconds. The program ``run_unittests.py`` -will sort all test files by increasing time and run them. -""" import unittest from teachpyx.examples.construction_classique import ( recherche, diff --git a/_unittests/ut_examples/test_numpysex.py b/_unittests/ut_examples/test_numpysex.py index 3ffd0869..90345dc0 100644 --- a/_unittests/ut_examples/test_numpysex.py +++ b/_unittests/ut_examples/test_numpysex.py @@ -1,9 +1,3 @@ -""" -@brief test log(time=1s) - -You should indicate a time in seconds. The program ``run_unittests.py`` -will sort all test files by increasing time and run them. -""" import unittest import numpy from teachpyx.examples.numpysex import numpy_matrix2list, numpy_types diff --git a/_unittests/ut_faq/test_faq_exception.py b/_unittests/ut_faq/test_faq_exception.py index 9e9d3f70..3c1f2bcb 100644 --- a/_unittests/ut_faq/test_faq_exception.py +++ b/_unittests/ut_faq/test_faq_exception.py @@ -1,8 +1,5 @@ -""" -@brief test log(time=2s) -""" import unittest -from pyquickhelper.pycode import ExtTestCase +from teachpyx.ext_test_case import ExtTestCase from teachpyx.faq.faq_exception import call_stack diff --git a/_unittests/ut_faq/test_faq_missing.py b/_unittests/ut_faq/test_faq_missing.py index ce527343..6ff7e586 100644 --- a/_unittests/ut_faq/test_faq_missing.py +++ b/_unittests/ut_faq/test_faq_missing.py @@ -1,10 +1,7 @@ -""" -@brief test log(time=4s) -""" import unittest import warnings from datetime import datetime -from pyquickhelper.pycode import ExtTestCase +from teachpyx.ext_test_case import ExtTestCase from teachpyx.faq.faq_python import ( entier_grande_taille, difference_div, diff --git a/_unittests/ut_faq/test_faq_numpy.py b/_unittests/ut_faq/test_faq_numpy.py index 72d081b4..2e3b0800 100644 --- a/_unittests/ut_faq/test_faq_numpy.py +++ b/_unittests/ut_faq/test_faq_numpy.py @@ -1,6 +1,3 @@ -""" -@brief test log(time=7s) -""" import unittest import math from teachpyx.faq.faq_numpy import to_float32 diff --git a/_unittests/ut_faq/test_faq_python.py b/_unittests/ut_faq/test_faq_python.py index ff80da67..e2e0f364 100644 --- a/_unittests/ut_faq/test_faq_python.py +++ b/_unittests/ut_faq/test_faq_python.py @@ -1,6 +1,3 @@ -""" -@brief test log(time=7s) -""" import unittest import datetime from teachpyx.faq.faq_python import get_month_name, get_day_name, class_getitem diff --git a/_unittests/ut_xrun_doc/test_documentation_examples.py b/_unittests/ut_xrun_doc/test_documentation_examples.py index 34b56a47..e27daf73 100644 --- a/_unittests/ut_xrun_doc/test_documentation_examples.py +++ b/_unittests/ut_xrun_doc/test_documentation_examples.py @@ -4,11 +4,11 @@ import importlib import subprocess import time -from teachpyx import __file__ as onnx_array_api_file +from teachpyx import __file__ as teachpyx_file from teachpyx.ext_test_case import ExtTestCase VERBOSE = 0 -ROOT = os.path.realpath(os.path.abspath(os.path.join(onnx_array_api_file, "..", ".."))) +ROOT = os.path.realpath(os.path.abspath(os.path.join(teachpyx_file, "..", ".."))) def import_source(module_file_path, module_name): diff --git a/_unittests/ut_xrun_doc/test_profiling.py b/_unittests/ut_xrun_doc/test_profiling.py deleted file mode 100644 index e6c7e693..00000000 --- a/_unittests/ut_xrun_doc/test_profiling.py +++ /dev/null @@ -1,195 +0,0 @@ -""" -@brief test tree node (time=5s) -""" -import os -import sys -import time -import unittest -from io import StringIO -from pstats import SortKey - -import pandas - -from onnx_array_api import __file__ as rootfile -from onnx_array_api.ext_test_case import ExtTestCase, ignore_warnings -from onnx_array_api.profiling import ProfileNode, profile, profile2df, profile2graph - - -class TestProfiling(ExtTestCase): - def test_profile(self): - def simple(): - df = pandas.DataFrame( - [{"A": "x", "AA": "xx", "AAA": "xxx"}, {"AA": "xxxxxxx", "AAA": "xxx"}] - ) - return df.to_csv(StringIO()) - - rootrem = os.path.normpath( - os.path.abspath(os.path.join(os.path.dirname(rootfile), "..")) - ) - ps, res = profile(simple, rootrem=rootrem) - res = res.replace("\\", "/") - self.assertIn("function calls", res) - self.assertNotEmpty(ps) - - ps, res = profile(simple) - res = res.replace("\\", "/") - self.assertIn("function calls", res) - self.assertNotEmpty(ps) - - @ignore_warnings(FutureWarning) - def test_profile_df(self): - def simple(): - def simple2(): - df = pandas.DataFrame( - [ - {"A": "x", "AA": "xx", "AAA": "xxx"}, - {"AA": "xxxxxxx", "AAA": "xxx"}, - ] - ) - return df.to_csv(StringIO()) - - return simple2() - - rootrem = os.path.normpath( - os.path.abspath(os.path.join(os.path.dirname(rootfile), "..")) - ) - ps, df = profile(simple, rootrem=rootrem, as_df=True) - self.assertIsInstance(df, pandas.DataFrame) - self.assertEqual(df.loc[0, "namefct"].split("-")[-1], "simple") - self.assertNotEmpty(ps) - df = profile2df(ps, False) - self.assertIsInstance(df, list) - self.assertIsInstance(df[0], dict) - df = profile2df(ps, True) - self.assertIsInstance(df, pandas.DataFrame) - - def test_profile_df_verbose(self): - calls = [0] - - def f0(t): - calls[0] += 1 - time.sleep(t) - - def f1(t): - calls[0] += 1 - time.sleep(t) - - def f2(): - calls[0] += 1 - f1(0.1) - f1(0.01) - - def f3(): - calls[0] += 1 - f0(0.2) - f1(0.5) - - def f4(): - calls[0] += 1 - f2() - f3() - - ps = profile(f4)[0] - df = self.capture(lambda: profile2df(ps, verbose=True, fLOG=print))[0] - dfi = df.set_index("fct") - self.assertEqual(dfi.loc["f4", "ncalls1"], 1) - self.assertEqual(dfi.loc["f4", "ncalls2"], 1) - - @unittest.skipIf(sys.version_info[:2] < (3, 7), reason="not supported") - def test_profile_graph(self): - calls = [0] - - def f0(t): - calls[0] += 1 - time.sleep(t) - - def f1(t): - calls[0] += 1 - time.sleep(t) - - def f2(): - calls[0] += 1 - f1(0.1) - f1(0.01) - - def f3(): - calls[0] += 1 - f0(0.2) - f1(0.5) - - def f4(): - calls[0] += 1 - f2() - f3() - - ps = profile(f4)[0] - profile2df(ps, verbose=False, clean_text=lambda x: x.split("/")[-1]) - root, nodes = profile2graph(ps, clean_text=lambda x: x.split("/")[-1]) - self.assertEqual(len(nodes), 6) - self.assertIsInstance(nodes, dict) - self.assertIsInstance(root, ProfileNode) - self.assertIn("(", str(root)) - dicts = root.as_dict() - self.assertEqual(10, len(dicts)) - text = root.to_text() - self.assertIn("1 1", text) - self.assertIn(" f1", text) - text = root.to_text(fct_width=20) - self.assertIn("...", text) - root.to_text(sort_key=SortKey.CUMULATIVE) - root.to_text(sort_key=SortKey.TIME) - self.assertRaise( - lambda: root.to_text(sort_key=SortKey.NAME), NotImplementedError - ) - js = root.to_json(indent=2) - self.assertIn('"details"', js) - js = root.to_json(as_str=False) - self.assertIsInstance(js, dict) - - def test_profile_graph_recursive2(self): - def f0(t): - if t < 0.2: - time.sleep(t) - else: - f1(t - 0.1) - - def f1(t): - if t < 0.1: - time.sleep(t) - else: - f0(t) - - def f4(): - f1(0.3) - - ps = profile(f4)[0] - profile2df(ps, verbose=False, clean_text=lambda x: x.split("/")[-1]) - root, nodes = profile2graph(ps, clean_text=lambda x: x.split("/")[-1]) - self.assertEqual(len(nodes), 4) - text = root.to_text() - self.assertIn(" f1", text) - js = root.to_json(indent=2) - self.assertIn('"details"', js) - - def test_profile_graph_recursive1(self): - def f0(t): - if t < 0.1: - time.sleep(t) - else: - f0(t - 0.1) - - def f4(): - f0(0.15) - - ps = profile(f4)[0] - profile2df(ps, verbose=False, clean_text=lambda x: x.split("/")[-1]) - root, nodes = profile2graph(ps, clean_text=lambda x: x.split("/")[-1]) - self.assertEqual(len(nodes), 3) - text = root.to_text() - self.assertIn(" f0", text) - js = root.to_json(indent=2) - self.assertIn('"details"', js) - - -if __name__ == "__main__": - unittest.main() diff --git a/pyproject.toml b/pyproject.toml index 97d42ead..11f4b4c8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,6 +5,7 @@ ignore_directives = [ "autoclass", "autofunction", "automodule", + "blockdiag", "blogpost", "blogpostagg", "exref", diff --git a/requirements-dev.txt b/requirements-dev.txt index 28a5c8ec..33742abe 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -9,9 +9,9 @@ pandas pillow pydata_sphinx_theme pytest +pytest-cov ruff scikit-learn>=1.1 -git+https://github.com/onnx/sklearn-onnx.git sphinx sphinx-gallery sphinx-issues diff --git a/teachpyx/examples/numpysex.py b/teachpyx/examples/numpysex.py index 35c921c2..54460ac4 100644 --- a/teachpyx/examples/numpysex.py +++ b/teachpyx/examples/numpysex.py @@ -78,7 +78,7 @@ def numpy_types(): moins de place en mémoire. Le coût des calculs avec des *double* est plus coûteux avec les GPU. Lire `Explaining FP64 performance on GPUs - `_. + `_. """ return [ diff --git a/teachpyx/faq/faq_python.py b/teachpyx/faq/faq_python.py index c2de4695..58eef0d0 100644 --- a/teachpyx/faq/faq_python.py +++ b/teachpyx/faq/faq_python.py @@ -103,7 +103,7 @@ def difference_div(): def python_path(): """ .. faqref:: - :tag: module + :tag: python :title: Comment éviter sys.path.append... quand on développe un module ? @@ -239,7 +239,13 @@ def same_variable(a, b): `_ * `Ways to make a class immutable in Python `_ - * `freeze `_ + * surcharger des méthodes `__getattr__ + `_, + `__getattribute__ + `_, + `__setattr__ + `_. + Enfin, pour les objects qui s'imbriquent les uns dans les autres, une liste de listes, une classe @@ -354,7 +360,7 @@ def property_example(): """ .. faqref:: - :tag: class + :tag: python :title: property Une `property @@ -415,7 +421,7 @@ def enumerate_regex_search(exp, text): :return: itérateur .. faqref:: - :tag: regex + :tag: python :title: Comment itérer sur les résultats d'une expression régulière ? On utilise la méthode @@ -441,7 +447,7 @@ def enumerate_regex_search(exp, text): def sortable_class(cl): """ .. faqref:: - :tag: class + :tag: python :title: Classe sortable Il faut prononcer *sortable* à l'anglaise. @@ -483,7 +489,7 @@ def list_of_installed_packages(): calls ``pip list`` to retrieve the list of packages .. faqref:: - :tag: module + :tag: python :title: Obtenir des informations sur les packages installés Le module `pip `_ @@ -547,7 +553,7 @@ def information_about_package(name): Calls ``pip show`` to retrieve information about packages. .. faqref:: - :tag: module + :tag: python :title: Récupérer la liste des modules installés Le module `pip `_ @@ -588,7 +594,7 @@ def information_about_package(name): `Compiling Python on Windows `_). C'est pour cela qu'on préfère utiliser des distributions comme - `Anaconda `_ + `Anaconda `_ qui propose par défaut une version de Python accompagnée des modules les plus utilisés. Elle propose également une façon From dbdc5e6ff88e1e182e0488a6b3458dbaa268fe92 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 09:45:45 +0200 Subject: [PATCH 07/26] lint --- teachpyx/faq/faq_python.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/teachpyx/faq/faq_python.py b/teachpyx/faq/faq_python.py index 58eef0d0..a041cc28 100644 --- a/teachpyx/faq/faq_python.py +++ b/teachpyx/faq/faq_python.py @@ -239,13 +239,13 @@ def same_variable(a, b): `_ * `Ways to make a class immutable in Python `_ - * surcharger des méthodes `__getattr__ + * surcharger des méthodes `__getattr__ `_, - `__getattribute__ + `__getattribute__ `_, - `__setattr__ + `__setattr__ `_. - + Enfin, pour les objects qui s'imbriquent les uns dans les autres, une liste de listes, une classe From b0e7aa048e8a3d257f9655ffc667dc66d6572a73 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 10:57:15 +0200 Subject: [PATCH 08/26] link --- _doc/c_exception/exception.rst | 5 +- _doc/c_exception/exception_ext.rst | 4 +- _doc/c_exception/warning.rst | 43 +++-- _doc/c_gui/tkinter.rst | 266 ++++++++++++++--------------- _doc/c_parallelisation/index.rst | 7 +- _doc/c_parallelisation/thread.rst | 37 ++-- _doc/c_regex/regex.rst | 33 ++-- _doc/c_resume/python_sheet.rst | 7 +- _doc/conf.py | 2 + _doc/license.rst | 2 +- requirements-dev.txt | 1 + 11 files changed, 207 insertions(+), 200 deletions(-) diff --git a/_doc/c_exception/exception.rst b/_doc/c_exception/exception.rst index e32ea6ea..ad929219 100644 --- a/_doc/c_exception/exception.rst +++ b/_doc/c_exception/exception.rst @@ -37,8 +37,9 @@ Attraper toutes les erreurs Une exception est un objet qui indique que le programme ne peut continuer son exécution. Le type de l'exception donne une indication sur le type de l'erreur rencontrée. L'exception contient généralement un message plus détaillé. -Toutes les exceptions hérite du type -`Exception `_. +Toutes les exceptions hérite des types :class:`BaseException` +pour les exceptions définies par le langage et :class:`Exception` pour +les exceptions définies par l'utilisateur. On décide par exemple qu'on veut rattraper toutes les erreurs du programme et afficher un message d'erreur. Le programme suivant appelle diff --git a/_doc/c_exception/exception_ext.rst b/_doc/c_exception/exception_ext.rst index f17baa7d..151d0980 100644 --- a/_doc/c_exception/exception_ext.rst +++ b/_doc/c_exception/exception_ext.rst @@ -5,8 +5,8 @@ Usage ===== -Pile d'appel -============ +Pile d'appel ou call stack +========================== La `pile d'appel `_ (ou *pile d'exécution* ou *call stack*) mémorise les appels de fonctions. diff --git a/_doc/c_exception/warning.rst b/_doc/c_exception/warning.rst index 00e53fa4..d7854513 100644 --- a/_doc/c_exception/warning.rst +++ b/_doc/c_exception/warning.rst @@ -1,14 +1,16 @@ .. _l-warning: -======= -Warning -======= +================== +Warning et logging +================== .. index:: warning -Les `warning `_ -ne sont pas des erreurs mais des soupçons d'erreurs. +Warnings +======== + +Les *warnings* ne sont pas des erreurs mais des soupçons d'erreurs. Le programme peut continuer mais il est possible qu'il s'arrête un peu plus tard et la cause pourrait être un *warning* déclenché un peu plus tôt. @@ -24,10 +26,9 @@ finalement supprimée. Tout code s'appuyant encore sur cette fonction provoquera une erreur. Générer un warning -================== +------------------ -Le module `warnings `_ -permet de lancer un *warning* comme ceci : +Le module :mod:`warnings` permet de lancer un *warning* comme ceci : .. runpython:: :showcode: @@ -47,7 +48,7 @@ les trier. warnings.warn("Warning d'un certain lancé !", UserWarning) Intercepter un warning -====================== +---------------------- Les *warning* sont parfois très agaçants car il s'insère dans les sorties du programme qui deviennent moins lisibles. Il serait @@ -122,7 +123,7 @@ des tests unitaires. print("warning {0} : {1}".format(i, w)) Warning personnalisé -==================== +-------------------- Comme pour les exceptions, il est possible de définir ses propres *warning* en héritant d'un *warning* en particulier. @@ -136,3 +137,25 @@ Comme pour les exceptions, il est possible de définir ses propres pass warnings.warn("mon warning", MonWarning) + +Logging +======= + +Les logs enregistrent des événements qu'un programme produit. +Ils sont utilisées pour comprendre des erreurs que celui-ci produit. +Le premier réflexe est d'insérer des instructions `print` pour +afficher des résultats intermédiaires pour déterminer le premier +endroit où une erreur se produit. Et puis on les enlève car ils +rendent les résultats illisibles dans une masse d'informations +inutiles lorsque tout se passe bien. + +Il faut voir les logs comme des `print` silencieux qu'un développeur +peut activer s'il a besoin de traces d'exécution pour débugger. +C'est aussi pratique pour comprendre ce qu'il se passe sur un problème +créer par un utilisateur d'un programme qu'on développe. L'utilisateur +peut activer les logs et les transmettre à celui qui peut les comprendre. +Les logs sont indispensables à tout site web. Ils enregistrent toutes les +connexions et permettent vérifier rapidement si un site est attaqué ou pas. + +Les logs sont une fonctionnalité présente dans la plupart des langages. +En python, c'est le module :mod:`logging` qui l'implémente. diff --git a/_doc/c_gui/tkinter.rst b/_doc/c_gui/tkinter.rst index 411946da..28d84780 100644 --- a/_doc/c_gui/tkinter.rst +++ b/_doc/c_gui/tkinter.rst @@ -116,7 +116,7 @@ Les exemples de codes des paragraphes qui suivent permettent de disposer les obj dans une fenêtre qui ne s'affichera pas sans les quelques lignes de code supplémentaires présentées au paragraphe :ref:`mainloop_fenetre_principale` et l'utilisation d'une méthode -`pack `_ +:meth:`tkinter.Widget.pack` L'exemple suivant crée un objet : :: @@ -190,7 +190,7 @@ Bouton .. index:: bouton Un bouton a pour but de faire le lien entre une fonction et un clic de souris. -Un bouton correspond à la classe `Button `_ +Un bouton correspond à la classe :class:`tkinter.Button` Pour créer un bouton, il suffit d'écrire la ligne suivante : :: @@ -199,7 +199,7 @@ Pour créer un bouton, il suffit d'écrire la ligne suivante : Il est possible que le texte de ce bouton doive changer après quelques temps. Dans ce cas, il faut appeler la méthode -`config `_ comme suit : +:meth:`tkinter.Button.config` comme suit : :: @@ -265,7 +265,7 @@ Zone de saisie Une zone de saisie a pour but de recevoir une information entrée par l'utilisateur. Une zone de saisie correspond à la classe -`Entry `_ ; +:class:`tkinter.Entry` ; pour en créer une, il suffit d'écrire la ligne suivante : :: @@ -273,7 +273,7 @@ pour en créer une, il suffit d'écrire la ligne suivante : saisie = tkinter.Entry () Pour modifier le contenu de la zone de saisie, il faut utiliser -la méthode `insert `_ +la méthode :meth:`tkinter.Entry.insert` qui insère un texte à une position donnée. :: @@ -283,14 +283,14 @@ qui insère un texte à une position donnée. saisie.insert (pos, "contenu") Pour obtenir le contenu de la zone de saisie, il faut utiliser la méthode -`get `_ : +:meth:`tkinter.Entry.get` : :: contenu = saisie.get () Pour supprimer le contenu de la zone de saisie, il faut utiliser la -méthode `delete `_. +méthode :meth:`tkinter.Entry.delete`. Cette méthode supprime le texte entre deux positions. :: @@ -317,7 +317,7 @@ on peut utiliser l'instruction suivante : La seconde zone de saisie est grisée par rapport à la première. Les zones de saisie grisées ne peuvent pas être modifiées. Pour obtenir cet état, il suffit d'utiliser la méthode -`config `_ +:meth:`tkinter.Entry.config` comme pour les précédents objets. Cette option sera rappelée au paragraphe :ref:`methode_communes_interface`. @@ -330,7 +330,7 @@ Zone de saisie à plusieurs lignes Une zone de saisie à plusieurs lignes est identique à la précédente à ceci près qu'elle autorise la saisie d'un texte sur plusieurs lignes. Cette zone -correspond à la classe `Text `_. +correspond à la classe :class:`tkinter.Text`. Pour créer une telle zone, il suffit d'écrire la ligne suivante : :: @@ -338,7 +338,7 @@ Pour créer une telle zone, il suffit d'écrire la ligne suivante : saisie = tkinter.Text () Pour modifier le contenu de la zone de saisie, il faut utiliser la méthode -`insert `_ +:meth:`tkinter.Text.insert` qui insère un texte à une position donnée. La méthode diffère de celle de la classe :ref:`Entry ` puisque la position d'insertion est maintenant une chaîne de caractères contenant deux nombres séparés @@ -352,7 +352,7 @@ par un point : le premier nombre désigne la ligne, le second la position sur ce saisie.insert (pos, "première ligne\nseconde ligne") Pour obtenir le contenu de la zone de saisie, il faut utiliser la méthode -`get `_ +:meth:`tkinter.Text.get` qui retourne le texte entre deux positions. La position de fin n'est pas connue, on utilise la chaîne de caractères ``"end"`` pour désigner la fin de la zone de saisie. @@ -364,7 +364,7 @@ connue, on utilise la chaîne de caractères ``"end"`` pour désigner la fin de contenu = saisie.get (pos1, pos2) Pour supprimer le contenu de la zone de saisie, il faut utiliser la méthode -`delete `_. +:meth:`tkinter.Text.delete`. Cette méthode supprime le texte entre deux positions. :: @@ -399,7 +399,7 @@ on utilise l'instruction suivante : L'image précédente montre une zone de saisie à plusieurs lignes. Pour griser cette zone, il suffit d'utiliser la méthode -`config `_ +:meth:`tkinter.Text.config` rappelée au paragraphe :ref:`methode_communes_interface`. .. _tkinter-checkbutton: @@ -410,7 +410,7 @@ Case à cocher .. index:: CheckButton, case à cocher Une case à cocher correspond à la classe -`Checkbutton `_. +:class:`tkinter.CheckButton`. Pour créer une case à cocher, il suffit d'écrire la ligne suivante : :: @@ -421,9 +421,9 @@ Pour créer une case à cocher, il suffit d'écrire la ligne suivante : case = tkinter.Checkbutton (variable = v) En fait, ce sont deux objets qui sont créés. Le premier, de type -`IntVar `_, +:class:`tkinter.IntVar`, mémorise la valeur de la case à cocher. Le second objet, de type -`Checkbutton `_, gère l'apparence +:class:`tkinter.CheckButton`, gère l'apparence au niveau de l'interface graphique. La raison de ces deux objets est plus évidente dans le cas de l'objet :ref:`RadioButton ` décrit au paragraphe suivant. @@ -457,7 +457,7 @@ Il est possible d'associer du texte à l'objet case à cocher : La troisième est grisée par rapport à la première. Les cases grisées ne peuvent pas être cochées. Pour obtenir cet état, il suffit d'utiliser la méthode -`config `_ +:meth:`tkinter.CheckButton.config` rappelée au paragraphe :ref:`methode_communes_interface`. .. _tkinter-radiobutton: @@ -468,7 +468,7 @@ Case ronde ou bouton radio .. index:: RadioButton, bouton radio, IntVar Une case ronde ou *bouton radio* correspond à la classe -`Radiobutton `_. +:class:`tkinter.RadioButton`. Elles fonctionnent de manière semblable à des cases à cocher excepté le fait qu'elles n'apparaissent jamais seules : elles fonctionnent en groupe. Pour créer un groupe de trois cases rondes, il suffit d'écrire la ligne suivante : @@ -531,7 +531,7 @@ Liste Un objet liste contient une liste d'intitulés qu'il est possible de sélectionner. Une liste correspond à la classe -`ListBox `_. +:class:`tkinter.ListBox`. Pour la créer, il suffit d'écrire la ligne suivante : :: @@ -549,7 +549,7 @@ on utilise l'instruction suivante : li.config (width = 10, height = 5) On peut insérer un élément dans la liste avec la méthode -`insert `_ : +:meth:`tkiner.ListBox.insert` : :: @@ -557,7 +557,7 @@ On peut insérer un élément dans la liste avec la méthode li.insert (pos, "première ligne") On peut supprimer des intitulés de cette liste avec la méthode -`delete `_. +:meth:`tkiner.ListBox.delete`. :: @@ -568,8 +568,7 @@ On peut supprimer des intitulés de cette liste avec la méthode Les intitulés de cette liste peuvent ou non être sélectionnés. Cliquer sur un intitulé le sélectionne mais la méthode -`select_set `_ -permet aussi de le faire. +:meth:`tkiner.ListBox.select_set` permet aussi de le faire. :: @@ -579,8 +578,7 @@ permet aussi de le faire. # pos2 inclus ou seulement celui d'indice pos1 si pos2 == None Réciproquement, il est possible d'enlever un intitulé de la sélection à -l'aide de la méthode -`select_clear `_. +l'aide de la méthode :meth:`tkiner.ListBox.select_clear`. :: @@ -589,16 +587,14 @@ l'aide de la méthode # retire la sélection de tous les éléments entre les indices # pos1 et pos2 inclus ou seulement celui d'indice pos1 si pos2 == None -La méthode -`curselection `_ +La méthode :meth:`tkiner.ListBox.curselection` permet d'obtenir la liste des indices des éléments sélectionnés. :: sel = li.curselection () -La méthode -`get `_ +La méthode :meth:`tkiner.ListBox.get` permet récupérer un élément de la liste tandis que la méthode \codes{size} retourne le nombre d'éléments :\indextkk{size}\indextkk{get} :: @@ -616,11 +612,11 @@ Exemple de liste. La seconde liste est grisée et ne peut être modifiée. - .. image:: images/list2.png Pour obtenir l'état grisé, il faut appeler la méthode -`config `_ +:meth:`tkiner.ListBox.config` et rappelée au paragraphe :ref:`methode_communes_interface`. Il est possible d'adjoindre une barre de défilement verticale. Il faut pour cela inclure l'objet dans une sous-fenêtre -`Frame `_ +:class:`tkinter.Frame` qui est définie au paragraphe :ref:`interf_fraph_sous_gene` comme dans l'exemple suivant : @@ -636,19 +632,16 @@ comme dans l'exemple suivant : Il suffit de transposer cet exemple pour ajouter une barre de défilement horizontale. Toutefois, il est préférable d'utiliser un objet prédéfini présent dans le module -`tix `_ -qui est une extension du module -:epkg:`tkinter`. +:mod:`tkinter.tix` qui est une extension du module :epkg:`tkinter`. Elle est présentée au paragraphe :ref:`chap_interface_exemple_programme`. -Lorsqu'on insère plusieurs objets -`ListBox `_ +Lorsqu'on insère plusieurs objets :class:`tkinter.ListBox` dans une seule fenêtre, ces objets partagent par défaut la même sélection. Autrement dit, lorsqu'on clique sur un élément de la seconde -`ListBox `_, +:class:`tkinter.ListBox`, l'élément sélectionné dans la première ne l'est plus. Afin de pouvoir sélectionner un élément dans chaque -`ListBox `_, il faut ajouter +:class:`tkinter.ListBox`, il faut ajouter dans les paramètres du constructeur l'option ``exportselection=0`` comme l'illustre l'exemple suivant : @@ -658,7 +651,7 @@ comme l'illustre l'exemple suivant : Il existe des méthodes plus avancées qui permettent de modifier l'aspect graphique d'un élément comme la méthode -`itemconfig `_. +:meth:`tkinter.ListBox.itemconfig`. Son utilisation est peu fréquente à moins de vouloir réaliser une belle interface graphique. Le paragraphe :ref:`more_than_on_e_window_ref_liste` montre l'utilisation qu'on peut en faire. @@ -669,11 +662,8 @@ Liste avec barre de défilement, Combobox ---------------------------------------- C'est une liste avec une barre de défilement incluse qui est présente dans l'extension -`ttk `_ -qui étend la liste des objets proposés par -:epkg:`tkinter`. -C'est ce que fait l'objet -`ttk.Combobox `_. +:mod:`tkinter.ttk` qui étend la liste des objets proposés par +:epkg:`tkinter`. C'est ce que fait l'objet :class:`tkinter.ttk.ComboBox`. :: @@ -694,8 +684,7 @@ C'est ce que fait l'objet root.mainloop() # idem -Les extensions `ttk `_ -et `tix `_ +Les extensions :mod:`tkinter.ttk` et :mod:`tkinter.tix` ne sont pas très bien documentés mais il existe de nombreuses réponses sur les forums de discussions. @@ -710,8 +699,7 @@ Canevas ------- Pour dessiner, il faut utiliser un objet canevas, -correspondant à la classe -`Canvas `_. +correspondant à la classe :class:`tkinter.Canvas`. Pour la créer, il suffit d'écrire la ligne suivante : :: @@ -730,22 +718,25 @@ on utilise l'instruction suivante : Cet objet permet de dessiner des lignes, des courbes, d'écrire du texte grâce aux méthodes -`create_line `_, -`create_rectangle `_, -`create_text `_. +:meth:`tkinter.Canvas.create_line`, +:meth:`tkinter.Canvas.create_rectangle`, +:meth:`tkinter.Canvas.create_text`. :: - # dessine deux lignes du point 10,10 au point 40,100 et au point 200,60 - # de couleur bleue, d'épaisseur 2 + # dessine deux lignes du point 10,10 au point 40,100 et au point 200,60 + # de couleur bleue, d'épaisseur 2 ca.create_line (10,10,40,100, 200,60, fill = "blue", width = 2) - # dessine une courbe du point 10,10 au point 200,60 - # de couleur rouge, d'épaisseur 2, c'est une courbe de Bézier - # pour laquelle le point 40,100 sert d'assise + + # dessine une courbe du point 10,10 au point 200,60 + # de couleur rouge, d'épaisseur 2, c'est une courbe de Bézier + # pour laquelle le point 40,100 sert d'assise ca.create_line (10,10, 40,100, 200,60, smooth=1, fill = "red", width = 2) - # dessine un rectangle plein de couleur jaune, de bord noir et d'épaisseur 2 + + # dessine un rectangle plein de couleur jaune, de bord noir et d'épaisseur 2 ca.create_rectangle (300,100,60,120, fill = "gray", width = 2) - # écrit du texte de couleur noire au point 80,80 et avec la police arial + + # écrit du texte de couleur noire au point 80,80 et avec la police arial ca.create_text (80,80, text = "écrire", fill = "black", font = "arial") Visuellement, cela donne : @@ -765,8 +756,7 @@ Méthodes communes ----------------- Nous avons vu que tous les objets présentés dans ce -paragraphe possèdent une méthode -``config`` +paragraphe possèdent une méthode ``config`` qui permet de définir l'état du widget (grisé ou normal) voire de la faire disparaître (voir paragraphe :ref:`disposition_paragraphe_python`). @@ -839,9 +829,9 @@ Emplacements Chacun des objets (ou widgets) présentés au paragraphe précédent possède trois méthodes qui permettent de déterminer sa position dans une fenêtre : -`pack `_, -`grid `_, -`place `_. +:meth:`tkinter.Widget.pack`, +:meth:`tkinter.Widget.grid`, +:meth:`tkinter.Widget.place`. Les deux premières permettent de disposer les objets sans se soucier ni de leur dimension ni de leur position. La fenêtre gère cela automatiquement. La dernière place les objets dans une fenêtre à @@ -900,8 +890,8 @@ Il n'est pas toujours évident d'obtenir du premier coup le positionnement des objets souhaités au départ et il faut tâtonner pour y arriver. Lorsque un objet n'est plus nécessaire, il est possible de le faire disparaître en appelant la méthode -`pack_forget `_. -Le rappel de la méthode `pack `_ +:meth:`tkinter.Widget.pack_forget`. +Le rappel de la méthode :meth:`tkinter.Widget.pack` le fera réapparaître mais rarement au même endroit. :: @@ -912,7 +902,7 @@ le fera réapparaître mais rarement au même endroit. Méthode grid ++++++++++++ -La méthode `grid `_ +La méthode :meth:`tkinter.Widget.grid` suppose que la fenêtre qui les contient est organisée selon une grille dont chaque case peut recevoir un objet. L'exemple suivant place trois objets dans les cases de coordonnées @@ -933,7 +923,7 @@ compte des lignes et colonnes vides. .. image:: images/grid1.png -La méthode `grid `_ +La méthode :meth:`tkinter.Widget.grid` possède plusieurs options, en voici cinq : * ``column`` : colonne dans laquelle sera placée l'objet. @@ -949,8 +939,8 @@ possède plusieurs options, en voici cinq : d'étendre l'objet d'un bord à l'autre en écrivant ``sticky="N+S"`` ou ``sticky="E+W"``. -Enfin, comme pour la méthode `pack `_, -il existe une méthode `grid_forget `_ +Enfin, comme pour la méthode :meth:`tkinter.Widget.pack`, +il existe une méthode :meth:`tkinter.Widget.grid_forget` qui permet de faire disparaître les objets. :: @@ -960,25 +950,25 @@ qui permet de faire disparaître les objets. Méthode place +++++++++++++ -La méthode `place `_ +La méthode :meth:`tkinter.Widget.place` est sans doute la plus simple à comprendre puisqu'elle permet de placer chaque objet à une position définie par des coordonnées. Elle peut être utilisée en parallèle avec les méthodes -`place `_ et -`grid `_. +:meth:`tkinter.Widget.place` et +:meth:`tkinter.Widget.grid`. :: l = tkinter.Label(text="première ligne") l.place (x=10, y=50) -La méthode `place_forget `_ +La méthode :meth:`tkinter.Widget.place_forget` permet de faire disparaître un objet placer avec cette méthode. L'inconvénient de cette méthode survient lorsqu'on cherche à modifier l'emplacement d'un objet : il faut en général revoir les positions de tous les autres éléments de la fenêtre. On procède souvent par tâtonnement pour construire une fenêtre et disposer les objets. Ce travail est beaucoup -plus long avec la méthode `place `_. +plus long avec la méthode :meth:`tkinter.Widget.place`. .. _interf_fraph_sous_gene: @@ -992,7 +982,7 @@ C'est aussi la seule façon de réutiliser un groupe de contrôle ou widgets dans plusieurs fenêtres sans avoir à dupliquer le code. La figure suivante montre deux objets regroupés dans un rectangle avec à sa gauche une zone de texte. Les boîtes sont des instances de la classe -`Frame `_. +:class:`tkinter.Frame`. .. image:: images/frame.png @@ -1000,7 +990,7 @@ Les deux premiers objets, une zone de texte au-dessus d'une zone de saisie, sont regroupés dans une boîte rectangle rouge, invisible à l'écran. A droite et centrée, une dernière zone de texte. Cet alignement est plus simple à réaliser en regroupant les deux premiers objets dans un object -`Frame `_. +:class:`tkinter.Frame`. Pour créer une boîte, il suffit d'écrire la ligne suivante : :: @@ -1032,7 +1022,7 @@ la fenêtre de la figure ci-dessus. e.pack (side = tkinter.RIGHT) # positionne e à l'intérieur # de la fenêtre principale -L'utilisation de ces blocs `Frame `_ +L'utilisation de ces blocs :class:`tkinter.Frame` est pratique lorsque le même ensemble de contrôles apparaît dans plusieurs fenêtres différentes ou au sein de la même fenêtre. Cette possibilité est envisagée au paragraphe @@ -1080,12 +1070,12 @@ Une fenêtre peut contenir plusieurs zones de saisie, toutes capables d'intercepter la pression d'une touche du clavier et d'ajouter la lettre correspondante à la zone de saisie. Or la seule qui ajoute effectivement une lettre à son contenu est celle qui a le -`focus `_. +:meth:`tkinter.Widget.focus`. La pression de la touche tabulation fait passer le focus d'un objet à l'autre. La figure ci-dessous montre un bouton qui a le focus. Lorsqu'on désire qu'un objet en particulier ait le focus, il suffit d'appeler la méthode -`focus_set `_. +:meth:`tkinter.Widget.focus_set`. .. image:: images/focus.png @@ -1171,7 +1161,7 @@ fonctions à des événements liés à leur apparence. Toutefois, pour un jeu par exemple, il est parfois nécessaire d'avoir accès au mouvement de la souris et il faut revenir aux événements *bruts*. Un événement est décrit par la classe -`Event `_ +:class:`tkinter.Event` dont les attributs listés par la table suivante décrivent l'événement qui sera la plupart du temps la pression d'une touche du clavier ou le mouvement de la souris. @@ -1207,10 +1197,10 @@ La liste complète est accessible avec l'instruction suivante : import tkinter help(tkinter.Event) -La méthode `bind `_ +La méthode :meth:`tkinter.Widget.bind` permet d'exécuter une fonction lorsqu'un certain événement donné est intercepté par un objet donné. La fonction exécutée accepte un seul -paramètre de type `Event `_ +paramètre de type :class:`tkinter.Event` qui est l'événement qui l'a déclenchée. Cette méthode a pour syntaxe : :: @@ -1221,7 +1211,7 @@ qui est l'événement qui l'a déclenchée. Cette méthode a pour syntaxe : caractères ``ev`` dont les valeurs possibles sont décrites ci-dessous. ``fonction`` est la fonction qui est appelée lorsque l'événement survient. Cette fonction ne prend qu'un paramètre de type -`Event `_. +:class:`tkinter.Event`. .. list-table:: :widths: 5 10 @@ -1258,7 +1248,7 @@ La liste complète est accessible avec l'instruction suivante : help(tkinter.Label.bind) L'exemple suivant utilise la méthode -`bind `_ +:meth:`tkinter.Widget.bind` pour que le seul bouton de la fenêtre intercepte toute pression d'une touche, tout mouvement et toute pression du premier bouton de la souris lorsque le curseur est au dessus de la zone graphique du bouton. @@ -1344,9 +1334,9 @@ suivantes qui signifie que l'événement ```` n'existe pas. Il arrive parfois qu'un événement ne doive pas être associé à un seul objet mais à tous ceux que la fenêtre contient. C'est -l'objectif de la méthode `bind_all `_. +l'objectif de la méthode :meth:`tkinter.Widget.bind_all`. Sa syntaxe est exactement la même que la méthode -`bind `_. +:meth:`tkinter.Widget.bind`. :: @@ -1358,9 +1348,9 @@ On utilise peu cette fonction, on préfère construire des objets propres De la même manière qu'il est possible d'associer un événement à un objet d'une fenêtre, il est possible d'effectuer l'opération inverse qui consiste à supprimer cette association. -La méthode `unbind `_ +La méthode :meth:`tkinter.Widget.unbind` désactive un événement associé à un objet. -La méthode `unbind_all `_ +La méthode :meth:`tkinter.Widget.unbind_all` désactive un événement associé pour tous les objets d'une fenêtre. :: @@ -1390,7 +1380,7 @@ Menu Les menus fonctionnent de la même manière que les boutons. Chaque intitulé du menu est relié à une fonction qui sera exécutée à la condition que l'utilisateur sélectionne cet -intitulé. L'objet `Menu `_ +intitulé. L'objet :class:`tkinter.Menu` ne désigne pas le menu dans son ensemble mais seulement un niveau. Par exemple, le menu présenté par la figure suivante est en fait un assemblage de trois menus auquel on pourrait ajouter d'autres sous-menus. @@ -1400,7 +1390,7 @@ assemblage de trois menus auquel on pourrait ajouter d'autres sous-menus. La représentation d'un menu tient plus d'un graphe que d'une liste. Chaque intitulé du menu peut être connecté à une fonction ou être le point d'entrée d'un nouveau sous-menu. Pour créer un menu ou un sous-menu, il suffit de créer un objet de type -`Menu `_ : +:class:`tkinter.Menu` : :: @@ -1415,10 +1405,10 @@ le suivant : root.config (menu = m) ``root`` est ici la fenêtre principale mais ce pourrait être également -une fenêtre de type `Toplevel `_ +une fenêtre de type :class:`tkinter.Toplevel` Ce menu peut aussi être le sous-menu associé à un intitulé d'un menu existant. La méthode -`add_cascade `_ +:meth:`tkinter.Menu.add_cascade` permet d'ajouter un sous-menu associé à un label : :: @@ -1428,7 +1418,7 @@ permet d'ajouter un sous-menu associé à un label : mainmenu.add_cascade (label = "sous-menu 1", menu = msousmenu) En revanche, si on souhaite affecter une fonction à un menu, on utilisera -la méthode `add_command `_ +la méthode :meth:`tkinter.Menu.add_command`. :: @@ -1484,7 +1474,7 @@ Ce qui donne : Chaque intitulé d'un menu est ajouté en fin de liste, il est possible d'en supprimer certains à partir de leur position avec -la méthode `delete `_. +la méthode :meth:`tkinter.Menu.delete`. :: @@ -1513,32 +1503,32 @@ un seul bouton qui, s'il est pressé, mettra fin à l'application. La table suivante regroupe les fonctions les plus utilisées. Celles-ci s'applique à une fenêtre de type -`Toplevel `_ +:class:`tkinter.Toplevel` qui est aussi le type de la fenêtre principale. .. list-table:: :widths: 5 10 :header-rows: 0 - * - `destroy() `_ + * - :meth:`tkinter.Toplevel.destroy` - Détruit la fenêtre. - * - `deiconify() `_ + * - :meth:`tkinter.Toplevel.deiconify` - La fenêtre reprend une taille normale. - * - `geometry(s) `_ + * - :meth:`tkinter.Toplevel.geometry` (s) - Modifie la taille de la fenêtre. ``s`` est une chaîne de - caractères de type ``"wxh±x±y"``. + caractères de type ``"w x h ± x ± y"``. ``w`` et ``h`` sont la largeur et la hauteur. ``x`` et ``y`` sont la position du coin supérieur haut à l'écran. - * - `iconify() `_ + * - :meth:`tkinter.Toplevel.iconify` - La fenêtre se réduit à un icône. - * - `resizable(w,h) `_ + * - :meth:`tkinter.Toplevel.resizable` (w, h) - Spécifie si la fenêtre peut changer de taille. ``w`` et ``h`` sont des booléens. - * - `title(s) `_ + * - :meth:`tkinter.Toplevel.title` (s) - Change le titre de la fenêtre, ``s`` est une chaîne de caractères. - * - `withdraw() `_ + * - :meth:`tkinter.Toplevel.withdraw` - Fait disparaître la fenêtre. La fonction inverse est - `deiconify() `_. + :meth:`tkinter.Toplevel.deiconify`. D'autres fenêtres et contrôles ------------------------------ @@ -1546,20 +1536,18 @@ D'autres fenêtres et contrôles *tkinter* ne propose pas beaucoup de *widgets*, pas autant que la liste étendue qu'on trouve dans la plupart des applications. Deux extensions complètent cette liste -`ttk `_ -et `tix `_. +:mod:`tkinter.ttk` et :mod:`tkinter.tix`. On trouve notamment : -* `Combobox `_ -* `Notebook `_ -* `Progressbar `_ -* `Treeview `_ +* :class:`tkinter.ttk.Combobox` +* :class:`tkinter.ttk.Notebook` +* :class:`tkinter.ttk.Progressbar` +* :class:`tkinter.ttk.Treeview` -`tix `_ propose -des widgets un peu plus complexes : +:mod:`tkinter.tix` propose des widgets un peu plus complexes : -* `DirTree `_ -* `FileSelectBox `_ +* :class:`tkinter.tix.DirTree` +* :class:`tkinter.tix.FileSelectBox` Cette liste n'est pas exhaustive. @@ -1568,7 +1556,7 @@ Créer une seconde boîte de dialogues Lorsqu'un programme doit utiliser plusieurs fenêtres et non pas une seule, l'emploi de l'objet -`Toplevel `_ +:class:`tkinter.Toplevel` est inévitable. L'instruction ``root = tkinter.Tk()`` crée la fenêtre principale, l'instruction ``win = tkinter.Toplevel()`` crée une seconde fenêtre qui fonctionne exactement comme la fenêtre @@ -1584,16 +1572,16 @@ messages via la méthode ``mainloop``. Un cas d'utilisation simple est par exemple un bouton pressé qui fait apparaître une fenêtre permettant de sélectionner un fichier, cette seconde fenêtre sera un objet -`Toplevel `_. +:class:`tkinter.Toplevel`. Il n'est pas nécessaire de s'étendre plus sur cet objet, son comportement est identique à celui de la fenêtre principale, les fonctions décrites au paragraphe :ref:`fonction_predefeinies_toot` s'appliquent également -aux objets `Toplevel `_. +aux objets :class:`tkinter.Toplevel`. Il reste néanmoins à préciser un dernier point. Tous les objets précédemment décrits au paragraphe :ref:`interface_graphique_objet_s` doivent inclure un paramètre supplémentaire dans leur constructeur pour signifier qu'ils appartiennent à un objet -`Toplevel `_ +:class:`tkinter.Toplevel` et non à la fenêtre principale. Par exemple, pour créer une zone de texte, la syntaxe est la suivante : @@ -1602,7 +1590,7 @@ une zone de texte, la syntaxe est la suivante : # zone_texte appartient à la fenêtre principale zone_texte = tkinter.Label (text = "premier texte") -Pour l'inclure à une fenêtre `Toplevel `_, +Pour l'inclure à une fenêtre :class:`tkinter.Toplevel`, cette syntaxe devient : :: @@ -1613,20 +1601,20 @@ cette syntaxe devient : Lors de la définition de chaque objet ou *widget*, si le premier paramètre est de type -`Toplevel `_, +:class:`tkinter.Toplevel`, alors ce paramètre sera affecté à la fenêtre passée en premier argument et non à la fenêtre principale. Ce principe est le même que celui de la sous-fenêtre -`Frame `_ +:class:`tkinter.Frame` (voir paragraphe :ref:`interf_fraph_sous_gene`). La seule différence provient du fait que l'objet -`Toplevel `_ +:class:`tkinter.Toplevel` est une fenêtre autonome qui peut attendre un message grâce à la méthode ``mainloop``, ce n'est pas le cas de l'objet -`Frame `_. +:class:`tkinter.Frame`. Toutefois, il est possible d'afficher plusieurs fenêtres -`Toplevel `_ simultanément. +:class:`tkinter.Toplevel` simultanément. Le programme suivant en est un exemple : :: @@ -1657,7 +1645,7 @@ Le programme suivant en est un exemple : Fenêtres standard ----------------- -Le module `tix `_ +Le module :mod:`tkinter.tix` propose une fenêtre de sélection de fichiers identique à celle de la figure suivante. :epkg:`tkinter` @@ -1665,7 +1653,7 @@ a l'avantage d'être simple et ne nécessite pas un long apprentissage pour le maîtriser mais il est limité. Pour ce type de fenêtres qu'on retrouve dans la plupart des programmes, il existe presque toujours des solutions toutes faites, via le module -`tix `_ +:mod:`tkinter.tix` par exemple. On trouve également de nombreux programmes sur Internet par le biais de moteurs de recherche. Le programme ci-dessous affiche une fenêtre qui permet de sélectionner un fichier. @@ -1847,7 +1835,7 @@ affiche une fenêtre qui permet de sélectionner un fichier. print("fichier sélectionné ", win.chemin) Il faut comparer ce programme à celui qu'on écrirait avec -l'extension `tix `_ : +l'extension :mod:`tkinter.tix` : :: @@ -1902,7 +1890,7 @@ Compte à rebours Il est possible de demander à un objet d'appeler une fonction après un certains laps de temps exprimé un millisecondes. Le programme suivant crée un objet de type -`Label `_. +:class:`tkinter.Label`. Il contient une fonction qui change son contenu et lui affecte un compte à rebours qui impose à l'objet de rappeler cette fonction 1000 millisecondes plus tard. Le résultat est un programme qui crée @@ -1933,10 +1921,10 @@ L'intitulé de l'objet ``Label`` change toutes les secondes. .. image:: images/after.png -La méthode `after `_ +La méthode `tkinter.Label.after` retourne un entier permettant d'identifier le compte à rebours qu'il est possible d'interrompre en utilisant la méthode -`after_cancel `_. +:meth:`tkinter.Label.after_cancel` Dans l'exemple précédent, il faudrait utiliser l'instruction suivante : @@ -1953,14 +1941,14 @@ On peut personnifier un contrôle. Par exemple, on peut mettre en évidence l'intitulé d'une liste sous le curseur de la souris. Le moyen le plus simple est de créer une nouvelle classe qui se substituera au classique -`ListBox `_. +:class:`tkinter.ListBox`. Il suffit que cette nouvelle classe hérite de -`ListBox `_ +:class:`tkinter.ListBox` en prenant soin de lui donner un constructeur reprenant les mêmes paramètres que celui de la classe -`ListBox `_. +:class:`tkinter.ListBox`. De cette façon, il suffit de remplacer -`ListBox `_ +:class:`tkinter.ListBox` par ``MaListbox`` pour changer l'apparence d'une liste. :: @@ -1997,7 +1985,9 @@ Dans ce cas précis, on fait en sorte que le contrôle intercepte le mouvement du curseur. Lorsque celui-ci bouge, la méthode ``mouvement`` est appelée comme le constructeur de ``MaListbox`` l'a spécifié. La méthode ``nearest`` permet de définir l'intitulé le plus proche du curseur. -La méthode ``itemconfig`` permet de changer le fond de cet intitulé en gris après avoir modifié le fond de l'intitulé précédent pour qu'il retrouve sa couleur d'avant. Le résultat est illustré la figure~\ref{listbox_curseur_soiut}. +La méthode ``itemconfig`` permet de changer le fond de cet intitulé en gris après avoir modifié le +fond de l'intitulé précédent pour qu'il retrouve sa couleur d'avant. +Le résultat est illustré la figure suivante. .. image:: images/listboxs.png @@ -2055,8 +2045,8 @@ Ce programme crée trois boutons et attache à chacun d'entre eux une méthode de la classe ``MaFenetre``. Le constructeur de la classe prend comme unique paramètre un pointeur sur un objet qui peut être la fenêtre principale, un objet de type -`Frame `_ ou -`Toplevel `_. +:class:`tkinter.Frame` ou +:class:`tkinter.Toplevel`. Cette construction permet de considérer cet ensemble de trois boutons comme un objet à part entière ; de ce fait il peut être inséré plusieurs fois comme le montre l'exemple suivant illustré par la figure qui suit. @@ -2178,7 +2168,7 @@ Le programme suivant utilise ce concept. La pression d'un bouton appelle une fonction ``event_generate`` qui génère un message personnalisé ``<>`` avec comme paramètre ``rooty=-5``. A son tour, celui-ci est attrapé et dirigé vers la fonction ``perso`` qui affiche l'attribut -``y_root`` de la classe `Event `_ +``y_root`` de la classe :class:`tkinter.Event` qui a reçu la valeur \codes{-5} lors de l'appel de la fonction ``event_generate``. Ce procédé ne permet toutefois que de renvoyer que quelques résultats entiers. diff --git a/_doc/c_parallelisation/index.rst b/_doc/c_parallelisation/index.rst index 963c0912..9a8361ae 100644 --- a/_doc/c_parallelisation/index.rst +++ b/_doc/c_parallelisation/index.rst @@ -21,17 +21,18 @@ spécifiques telles que `joblib `_ qui est utilisé par `scikit-learn `_. La librairie `gevent `_ est un équivalent -de la librairie `asyncio `_ +de la librairie :mod:`asyncio` qui a été intégrée à Python 3.4. Plus récemment, le package `uvloop `_ propose une accélération de deux à quatre fois par rapport à la librairie -`asyncio `_ : +:mod:`asyncio` : `uvloop: Blazing fast Python networking `_. Cette dernière librairie est utilisée par le module `sanic `_ qui implémenté un serveur web plus rapide que `flask `_. -La page `Parallel Processing in Python `_ +La page `Parallel Processing in Python +`_ passe en revue différentes stratégies de parallélisation pour l'implémentation de calculs numériques avec :epkg:`joblib`, :epkg:`cython`, :epkg:`OpenMP`. diff --git a/_doc/c_parallelisation/thread.rst b/_doc/c_parallelisation/thread.rst index 936ef200..1883254c 100644 --- a/_doc/c_parallelisation/thread.rst +++ b/_doc/c_parallelisation/thread.rst @@ -19,7 +19,7 @@ maintenant vers la construction de processeurs multicoeurs, c'est-à-dire des machines capables d'exécuter des programmes simultanément, de maintenir plusieurs *fils d'exécution* en parallèle. -Les `threads `_ +Les :epkg:`threads` ou fils d'exécution ont trois usages principaux. Le premier est relié au `calcul distribué `_ ou calcul parallèle. Par exemple, le calcul d'une intégrale sur un intervalle peut être effectué sur @@ -769,11 +769,10 @@ Le module `threading `_ a beaucoup été utilisé mais d'autres modules ont été ajoutés à la distribution standard de python. -* `concurrent.futures `_ : +* :mod:`concurrent.futures` : le module propose une interface similaire pour paralléliser avec des threads ou des processus. La création des threads s'écrit plus rapidement. -* `asyncio `_ : - ce module fonctionne avec les mots-clés +* :mod:`asyncio` : ce module fonctionne avec les mots-clés `async, await `_ et il est particulièrement adapté à la parallélisation à des accès aux ressources. @@ -784,17 +783,17 @@ qui gère pas mal d'accès à Internet. concurrent.futures ++++++++++++++++++ -Le module `concurrent.futures `_ -implémente une classe `Executor `_ +Le module :mod:`concurrent.futures` +implémente une classe :class:`concurrent.futures.Executor` qui définit une interface pour l'exécution en parallèle. On peut soit : * soumettre l'exécution d'une fonction avec - `submit `_, + :meth:`concurrent.futures.Executor.submit` * ou soumettre l'exécution de la même fonction appliquée à séquence de jeux de paramètres - avec `map `_. + avec :meth:`concurrent.futures.Executor.map` Cette classe est dérivée en un -`ThreadPoolExecutor `_ +:class:`concurrent.futures.ThreadPoolExecutor` dont le principal argument *max_works* définit le nombre de threads à exécuter en parallèle. Je reproduis ici l'`exemple `_ de la documentation de *Python* qui détermine si un nombre est premier. @@ -958,18 +957,16 @@ Les `futures ou promesses font référence à un résultat dont le calcul est géré par un autre thread ou processus. Le résultat n'est pas prêt au moment où ce second thread démarre mais il le sera bientôt d'où son nom. On les retrouve en C# -`Programmation asynchrone avec Async et Await `_ +`Programmation asynchrone avec Async et Await +`_ ou C++ `std::async `_. Il y a deux objets *futures* en Python qui sont produits par différents jeux de fonctions. On ne créé jamais un *futures*, c'est toujours une fonction qui le fait. -* `concurrent.futures.Future `_ : - ils sont créés par le module - `concurrent.futures `_. +* :class:`concurrent.futures.Future` : ils sont créés par le module :mod:`concurrent.futures`. * `asyncio.future `_ : - ils sont créés par le module - `asyncio `_. + ils sont créés par le module :mod:`asyncio`. Les deux objets possèdent la même interface et sont presque compatibles. Cela dit, il vaut mieux éviter de les mélanger. Je cite la documentation : @@ -1032,7 +1029,7 @@ async - await - asyncio `asyncio `_ a fait émerger les mots-clés `async and await `_ qui font partie du langage depuis la version 3.5 tout comme elles font partie -d'autres langages comme `C# `_ +d'autres langages comme `C#/async `_ ou `C++ `_. Concrètement, ce n'est pas si difficile d'écrire une fonction @@ -1065,14 +1062,14 @@ de synchronisation si besoin. Le langage Python protège listes et dictionnaires par l'intermédiaire de ce verrou qui est unique pour toutes les listes afin de pouvoir gérer efficacement le -`garbage collector `_ +:epkg:`garbage collector` (voir module `gc `_). En conséquence, si le langage Python est multithread par design, dans les faits, il ne l'est presque pas car le *GIL* est sans cesse utilisé. Le notebook :ref:`gilexamplerst` finira de vous convaincre. -cython -++++++ +cython : un mélange de python et C +++++++++++++++++++++++++++++++++++ Tout est possible avec le langage C même si `cython `_ @@ -1098,7 +1095,7 @@ qui peut être utilisé via le module `py4j `_, `pyjnius `_. Les threads sont plus faciles à implémenter dans ces langages -même si le `garbage collector `_ +même si le :epkg:`garbage collector` peut nuire aux performances. Bibliographie diff --git a/_doc/c_regex/regex.rst b/_doc/c_regex/regex.rst index fe2b2a7e..3b2cc8fb 100644 --- a/_doc/c_regex/regex.rst +++ b/_doc/c_regex/regex.rst @@ -13,12 +13,12 @@ A quoi ça sert ? ================ Chercher un mot dans un texte est une tâche facile, c'est l'objectif -de la méthode `find `_ +de la méthode :meth:`str.find` attachée aux chaînes de caractères, elle suffit encore lorsqu'on cherche un mot au pluriel ou au singulier mais il faut l'appeler au moins deux fois pour chercher ces deux formes. Pour des expressions plus -compliquées, il est conseillé d'utiliser les -`expressions régulières `_. +compliquées, il est conseillé d'utiliser une +`expression régulière `_. C'est une fonctionnalité qu'on retrouve dans beaucoup de langages. C'est une forme de grammaire qui permet de rechercher des expressions. @@ -53,10 +53,10 @@ ce qu'on précise avec des parenthèses : [0-3]?[0-9]/[0-1]?[0-9]/([0-2][0-9])?[0-9][0-9] -Le module `re `_ +Le module :mod:`re` gère les expressions régulières, celui-ci traite différemment les parties de l'expression régulière qui sont entre parenthèses de celles qui ne le sont pas : c'est un moyen -de dire au module `re `_ +de dire au module :mod:`re` que nous nous intéressons à telle partie de l'expression qui est signalée entre parenthèses. Comme la partie qui nous intéresse - une date - concerne l'intégralité de l'expression régulière, @@ -224,15 +224,14 @@ l'expression *Xavier Dupont* ou *M. Dupont* s'écrira : ``(Xavier)|(M[.]) Dupont Fonctions --------- -La fonction `compile `_ -du module `re `_ +La fonction :func:`re.compile` +du module :mod:`re` permet de construire un objet "expression régulière". A partir de cet objet, on peut vérifier la correspondance entre une expression régulière et une chaîne -de caractères (méthode `match `_). -On peut chercher une expression régulière -(méthode `search `_). +de caractères (méthode :func:`re.match`). +On peut chercher une expression régulière (méthode :func:`re.search`). On peut aussi remplacer une expression régulière par une chaîne de caractères -(méthode `sub `_). +(méthode :func:`re.sub`). .. list-table:: :widths: 5 10 @@ -268,10 +267,8 @@ On peut aussi remplacer une expression régulière par une chaîne de caractère - Chaîne de caractères associée à l'expression régulière. C'est un attribut. Ces méthodes et attributs qui s'appliquent à un objet de type "expression régulière" -retourné par la fonction `compile `_. -Les méthodes `search `_ -et `match `_ -retournent toutes des objets `Match `_ : +retourné par la fonction :func:`re.compile`. Les méthodes :func:`re.search` +et :func:`re.match` retournent toutes des objets :func:`re.match` : .. runpython:: :showcode: @@ -298,10 +295,8 @@ retournent toutes des objets `Match `_ -qui est le résultat des méthodes `search `_ -et `match `_. +Ces méthodes qui s'appliquent à un objet de type :func:`re.match` +qui est le résultat des méthodes :func:`re.search` et :func:`re.match`. Les groupes sont des sous-parties de l'expression régulière, chacune d'entre elles incluses entre parenthèses. Le énième correspond au groupe qui suit la énième parenthèse ouvrante. Le premier groupe a pour indice 1. diff --git a/_doc/c_resume/python_sheet.rst b/_doc/c_resume/python_sheet.rst index 286da934..58f5dc0a 100644 --- a/_doc/c_resume/python_sheet.rst +++ b/_doc/c_resume/python_sheet.rst @@ -535,8 +535,8 @@ Il existe un raccourci pour les intervalles : if 5 < x and x < 10 : # peut être écrit : if 5 < x < 10 : ... -Boucles -+++++++ +for ou while +++++++++++++ Il y a deux types de boucles, la boucle ``for`` parcourt un ensemble, la boucle ``while`` continue tant qu'une condition est vraie. @@ -1505,9 +1505,6 @@ aurait si la liste était vide. for m in l : s += m # concaténation des mots en une seule chaîne de caractères -Fonctions -+++++++++ - Différence entre ``print`` et ``return`` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/_doc/conf.py b/_doc/conf.py index ede73c8e..59f618ea 100644 --- a/_doc/conf.py +++ b/_doc/conf.py @@ -188,6 +188,7 @@ "encoding": "https://fr.wikipedia.org/wiki/Codage_des_caract%C3%A8res", "eval": "https://docs.python.org/3/library/functions.html?highlight=id#eval", "Excel": "https://fr.wikipedia.org/wiki/Microsoft_Excel", + "garbage collector": "https://fr.wikipedia.org/wiki/Ramasse-miettes_(informatique)", "Holm-Bonferroni method": "https://en.wikipedia.org/wiki/Holm%E2%80%93Bonferroni_method", "HTML": "https://fr.wikipedia.org/wiki/Hypertext_Markup_Language", "ICML 2016": "https://icml.cc/2016/index.html", @@ -224,6 +225,7 @@ "sys.modules": "https://docs.python.org/3/library/sys.html?highlight=modules#sys.modules", "sys.path": "https://docs.python.org/3/library/sys.html#sys.path", "teachpyx": "https://sdpython.github.io/doc/teachpyx/dev/", + "threads": "https://fr.wikipedia.org/wiki/Thread_(informatique)", "tkinter": "https://docs.python.org/3/library/tk.html", "tqdm": "https://tqdm.github.io/", "Visualize a scikit-learn pipeline": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/visualize_pipeline.html", diff --git a/_doc/license.rst b/_doc/license.rst index d1a0e751..73075b21 100644 --- a/_doc/license.rst +++ b/_doc/license.rst @@ -4,4 +4,4 @@ License ======= .. include:: LICENSE.txt - :literal: + :language: none diff --git a/requirements-dev.txt b/requirements-dev.txt index 33742abe..133cf33c 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -7,6 +7,7 @@ jyquickhelper matplotlib pandas pillow +protobuf pydata_sphinx_theme pytest pytest-cov From 3a83ede219d28eeb697b7139593a805fac31a0a7 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 11:24:43 +0200 Subject: [PATCH 09/26] doc --- .github/workflows/documentation.yml | 2 +- _doc/c_gui/tkinter.rst | 2 +- _doc/c_module/module.rst | 2 +- _doc/c_parallelisation/index.rst | 4 ++-- _doc/c_parallelisation/thread.rst | 4 ++-- _doc/examples/plot_pandas_groupby.py | 18 ++---------------- _doc/license.rst | 2 +- 7 files changed, 10 insertions(+), 24 deletions(-) diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index c70ed3d8..fc6b3861 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -26,7 +26,7 @@ jobs: - uses: tlylt/install-graphviz@v1 - name: Install pandoc - run: sudo apt-get install -y pandoc + run: sudo apt-get install -y pandoc protobuf-compiler - name: Install requirements run: python -m pip install -r requirements.txt diff --git a/_doc/c_gui/tkinter.rst b/_doc/c_gui/tkinter.rst index 28d84780..d82f6cef 100644 --- a/_doc/c_gui/tkinter.rst +++ b/_doc/c_gui/tkinter.rst @@ -40,7 +40,7 @@ la fréquence des mises à jour de leur code source avant d'en choisir une La licence de :epkg:`wxPython` est plus souple. D'autres alternatives sont disponibles à `Other Graphical User Interface Packages -`_. +`_. Le fonctionnement des interfaces graphiques sous un module ou un autre est presque identique. C'est pourquoi ce chapitre n'en présentera qu'un seul, diff --git a/_doc/c_module/module.rst b/_doc/c_module/module.rst index f0a54725..f76de6b6 100644 --- a/_doc/c_module/module.rst +++ b/_doc/c_module/module.rst @@ -690,7 +690,7 @@ comme celle qui fournit le module `tensorflow `_. Tout va souvent très vite. Le nombre de modifications est un critère assez simple pour s'assurer qu'un module -est maintenu : `commit `_. +est maintenu : `commit `_. La plupart des modules sont sur Github aujourd'hui. S'il ne l'est pas, passez votre chemin. diff --git a/_doc/c_parallelisation/index.rst b/_doc/c_parallelisation/index.rst index 9a8361ae..11bcca5e 100644 --- a/_doc/c_parallelisation/index.rst +++ b/_doc/c_parallelisation/index.rst @@ -18,7 +18,7 @@ les paragraphes suivantes. Il existe d'autres librairies qui ont été développés pour des usages spécifiques telles que -`joblib `_ qui est utilisé +`joblib `_ qui est utilisé par `scikit-learn `_. La librairie `gevent `_ est un équivalent de la librairie :mod:`asyncio` @@ -32,7 +32,7 @@ Cette dernière librairie est utilisée par le module un serveur web plus rapide que `flask `_. La page `Parallel Processing in Python -`_ +`_ passe en revue différentes stratégies de parallélisation pour l'implémentation de calculs numériques avec :epkg:`joblib`, :epkg:`cython`, :epkg:`OpenMP`. diff --git a/_doc/c_parallelisation/thread.rst b/_doc/c_parallelisation/thread.rst index 1883254c..3a546485 100644 --- a/_doc/c_parallelisation/thread.rst +++ b/_doc/c_parallelisation/thread.rst @@ -1080,7 +1080,7 @@ Plus de liberté veut dire aussi plus d'attention à apporter au code. La page `Using parallelism `_ donne quelques exemples simples de parallélisation. Il est plus facile de paralléliser Python avec un autre langage -(voir aussi `Parallelizing numpy array loops with Cython and OpenMP `_). +(voir aussi `Parallelizing numpy array loops with Cython and OpenMP `_). C#, Java ++++++++ @@ -1103,4 +1103,4 @@ Bibliographie *articles* -* `Aynschonous API for Python `_ +* `Async API for Python `_ diff --git a/_doc/examples/plot_pandas_groupby.py b/_doc/examples/plot_pandas_groupby.py index 9e6174ad..76de0618 100644 --- a/_doc/examples/plot_pandas_groupby.py +++ b/_doc/examples/plot_pandas_groupby.py @@ -30,21 +30,7 @@ ######################################## # Les valeurs manquantes ont disparu et c'est le comportement attendu -# d'après `groupby and missing values -# `_. -# Il est possible de ocrriger le tir avec la fonction implémenté dans ce module. +# Il est possible de corriger le tir avec l'argument `dropna`. -pandas_groupby_nan(df, "a").sum() - - -######################################## -# L'astuce consiste à remplacer les valeurs manquantes par -# d'autres non utilisées dans le dataframe, -# à grouper, puis à leur redonner leur valeurs initiales. -# Le code de la fonction n'est pas très propre car il modifie des -# variables que l'utilisateur n'est pas censé modifier. -# Il est possible que la fonction "casse" pour des versions ultérieures. -# Le `code `_ -# utilise quelques variables non documentation du module :epkg:`pandas`. +df.groupby("a", dropna=False).sum() diff --git a/_doc/license.rst b/_doc/license.rst index 73075b21..f4b00c96 100644 --- a/_doc/license.rst +++ b/_doc/license.rst @@ -3,5 +3,5 @@ License ======= -.. include:: LICENSE.txt +.. literalinclude:: LICENSE.txt :language: none From e66b3dfe5b647116734dc0617276e65fe0303314 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 11:25:07 +0200 Subject: [PATCH 10/26] fix example --- _doc/examples/plot_pandas_groupby.py | 1 - 1 file changed, 1 deletion(-) diff --git a/_doc/examples/plot_pandas_groupby.py b/_doc/examples/plot_pandas_groupby.py index 76de0618..44da9176 100644 --- a/_doc/examples/plot_pandas_groupby.py +++ b/_doc/examples/plot_pandas_groupby.py @@ -14,7 +14,6 @@ import pandas -from pandas_streaming.df import pandas_groupby_nan data = [{"a": 1, "b": 2}, {"a": 10, "b": 20}, {"b": 3}, {"b": 4}] From dcab0d3a40b702b12df87d28a867e029b2b061c1 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 11:38:49 +0200 Subject: [PATCH 11/26] fix example --- _doc/examples/plot_serialisation_protobuf.py | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/_doc/examples/plot_serialisation_protobuf.py b/_doc/examples/plot_serialisation_protobuf.py index 3943b7b7..8a2b3701 100644 --- a/_doc/examples/plot_serialisation_protobuf.py +++ b/_doc/examples/plot_serialisation_protobuf.py @@ -9,6 +9,14 @@ un accès rapide à une information précise dans désérialiser les autres. Elle réalise cela en imposant un schéma strict de données. +L'exemple fonctionne si l'exécutable `protoc` et le package `protobuf` +ont des versions compatibles. Un message apparaîtra dans le cas contraire. + +:: + + protoc --version + python -c "import google.protobuf as gp;print(gp.__version__)" + Schéma ====== @@ -16,6 +24,7 @@ `_. """ import os +import sys import timeit import struct from io import BytesIO @@ -29,8 +38,8 @@ package tutorial; message Person { - required string name = 1; - required int32 id = 2; + optional string name = 1; + optional int32 id = 2; optional string email = 3; enum PhoneType { @@ -40,7 +49,7 @@ } message PhoneNumber { - required string number = 1; + optional string number = 1; optional PhoneType type = 2 [default = HOME]; } @@ -106,6 +115,7 @@ # Pour utliser *protobuf*, il faut importer le module créé. +sys.path.append(".") import schema_pb2 # noqa: E402 ######################################## From 29e2ddfdec707c4a32a5f21a2a3d9428f335880c Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 11:53:17 +0200 Subject: [PATCH 12/26] downgrade to protobuf<4 --- requirements-dev.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements-dev.txt b/requirements-dev.txt index 133cf33c..5f3d1cb6 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -7,7 +7,7 @@ jyquickhelper matplotlib pandas pillow -protobuf +protobuf<4 pydata_sphinx_theme pytest pytest-cov From 1877c7e6392d8b6804cf3144d3b701fdca9aace5 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 12:13:09 +0200 Subject: [PATCH 13/26] protoc --- .circleci/config.yml | 6 ++++++ .github/workflows/documentation.yml | 5 +++++ requirements-dev.txt | 1 + 3 files changed, 12 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 900a5b95..bcbada44 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -59,6 +59,12 @@ jobs: - ./venv key: v2-dependencies-{{ checksum "requirements-dev.txt" }} + - run: + name: version + command: | + protoc --version + python -c "import google.protobuf as gp;print(gp.__version__)" + - run: name: run tests command: | diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index fc6b3861..185a7faa 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -43,6 +43,11 @@ jobs: ${{ runner.os }}-pip- ${{ runner.os }}- + - name: protobuf version + run: | + protoc --version + python -c "import google.protobuf as gp;print(gp.__version__)" + - name: Generate coverage report run: | pip install pytest diff --git a/requirements-dev.txt b/requirements-dev.txt index 5f3d1cb6..bbf7a829 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -18,4 +18,5 @@ sphinx-gallery sphinx-issues git+https://github.com/sdpython/sphinx-runpython.git tqdm +ujson wheel From 70b2f6b510c7f71bbedcb5e6301cec8da89dab5f Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 12:58:22 +0200 Subject: [PATCH 14/26] req --- _unittests/ut_xrun_doc/test_documentation_examples.py | 6 ++++++ requirements-dev.txt | 1 + 2 files changed, 7 insertions(+) diff --git a/_unittests/ut_xrun_doc/test_documentation_examples.py b/_unittests/ut_xrun_doc/test_documentation_examples.py index e27daf73..20887d23 100644 --- a/_unittests/ut_xrun_doc/test_documentation_examples.py +++ b/_unittests/ut_xrun_doc/test_documentation_examples.py @@ -49,6 +49,12 @@ def run_test(self, fold: str, name: str, verbose=0) -> int: if verbose: print(f"failed: {name!r} due to missing dot.") return 0 + if "No such file or directory: 'schema_pb2.py'" in str(st): + if verbose: + print( + f"failed: {name!r} due to missing protoc (or wrong version)." + ) + return 0 raise AssertionError( "Example '{}' (cmd: {} - exec_prefix='{}') " "failed due to\n{}" diff --git a/requirements-dev.txt b/requirements-dev.txt index bbf7a829..ea43e883 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,6 +1,7 @@ black black-nb blockdiag +cloudpickle coverage jupyter jyquickhelper From 55baabfc71e796cf1fb8600f65978382dcc12c4e Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 13:31:08 +0200 Subject: [PATCH 15/26] dic --- _doc/examples/plot_serialisation_examples.py | 2 +- _unittests/ut_xrun_doc/test_documentation_examples.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/_doc/examples/plot_serialisation_examples.py b/_doc/examples/plot_serialisation_examples.py index 95b1d1d7..2743ca4f 100644 --- a/_doc/examples/plot_serialisation_examples.py +++ b/_doc/examples/plot_serialisation_examples.py @@ -153,7 +153,7 @@ def decode(self, o): # -timeit.timeit("ujson.udump(data, StringIO())", globals=globals(), number=100) +timeit.timeit("ujson.dump(data, StringIO())", globals=globals(), number=100) ######################################### diff --git a/_unittests/ut_xrun_doc/test_documentation_examples.py b/_unittests/ut_xrun_doc/test_documentation_examples.py index 20887d23..3bca0935 100644 --- a/_unittests/ut_xrun_doc/test_documentation_examples.py +++ b/_unittests/ut_xrun_doc/test_documentation_examples.py @@ -52,7 +52,8 @@ def run_test(self, fold: str, name: str, verbose=0) -> int: if "No such file or directory: 'schema_pb2.py'" in str(st): if verbose: print( - f"failed: {name!r} due to missing protoc (or wrong version)." + f"failed: {name!r} due to missing protoc " + f"(or wrong version)." ) return 0 raise AssertionError( From 08d1cc91c8f07d01eabe919f2c09076e9e8501b1 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 18:21:55 +0200 Subject: [PATCH 16/26] doc --- _doc/examples/plot_serialisation_examples.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_doc/examples/plot_serialisation_examples.py b/_doc/examples/plot_serialisation_examples.py index 2743ca4f..5710e357 100644 --- a/_doc/examples/plot_serialisation_examples.py +++ b/_doc/examples/plot_serialisation_examples.py @@ -164,7 +164,7 @@ def decode(self, o): buffer = StringIO() ujson.dump(data, buffer) res = buffer.getvalue() -timeit.timeit("load(StringIO(res))", globals=globals(), number=100) +timeit.timeit("ujson.load(StringIO(res))", globals=globals(), number=100) ######################################### From 9e568cb8d4eb051ad746659c8f256e1c89cdbc28 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 18:24:21 +0200 Subject: [PATCH 17/26] doc --- _doc/examples/plot_serialisation_examples.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_doc/examples/plot_serialisation_examples.py b/_doc/examples/plot_serialisation_examples.py index 5710e357..d93367c2 100644 --- a/_doc/examples/plot_serialisation_examples.py +++ b/_doc/examples/plot_serialisation_examples.py @@ -164,7 +164,7 @@ def decode(self, o): buffer = StringIO() ujson.dump(data, buffer) res = buffer.getvalue() -timeit.timeit("ujson.load(StringIO(res))", globals=globals(), number=100) +timeit.timeit("json.load(StringIO(res))", globals=globals(), number=100) ######################################### From eb4ca4cacbbf9dc9814c5c3321e08fae1db52786 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 18:48:55 +0200 Subject: [PATCH 18/26] ex --- _unittests/ut_xrun_doc/test_documentation_examples.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/_unittests/ut_xrun_doc/test_documentation_examples.py b/_unittests/ut_xrun_doc/test_documentation_examples.py index 3bca0935..8856dbfc 100644 --- a/_unittests/ut_xrun_doc/test_documentation_examples.py +++ b/_unittests/ut_xrun_doc/test_documentation_examples.py @@ -48,14 +48,14 @@ def run_test(self, fold: str, name: str, verbose=0) -> int: # is tested in onnx framework if verbose: print(f"failed: {name!r} due to missing dot.") - return 0 + return -1 if "No such file or directory: 'schema_pb2.py'" in str(st): if verbose: print( f"failed: {name!r} due to missing protoc " f"(or wrong version)." ) - return 0 + return -1 raise AssertionError( "Example '{}' (cmd: {} - exec_prefix='{}') " "failed due to\n{}" @@ -77,7 +77,7 @@ def add_test_methods(cls): def _test_(self, name=name): res = self.run_test(fold, name, verbose=VERBOSE) - self.assertTrue(res) + self.assertIn(res, (-1, 1)) setattr(cls, f"test_{short_name}", _test_) From ab08f632589c5c965627ce14d07dc04b61113112 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Mon, 31 Jul 2023 18:55:21 +0200 Subject: [PATCH 19/26] req --- requirements-dev.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/requirements-dev.txt b/requirements-dev.txt index ea43e883..e1eb6719 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -6,6 +6,7 @@ coverage jupyter jyquickhelper matplotlib +nbsphinx pandas pillow protobuf<4 From d4214e8c2e2de54c12241ca190be4ad4cdfecd4a Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Tue, 1 Aug 2023 11:43:03 +0200 Subject: [PATCH 20/26] update doc --- .gitignore | 4 + _doc/c_classes/classes.rst | 2 +- _doc/c_classes/index.rst | 2 + _doc/c_classes/questions.rst | 177 +++++++++++++++++++ _doc/c_exception/exception_ext.rst | 8 +- _doc/c_lang/faq.rst | 23 --- _doc/c_lang/index.rst | 1 - _doc/c_lang/types.rst | 9 +- _doc/c_module/faq.rst | 10 -- _doc/c_module/index.rst | 1 - _doc/c_module/serialization.rst | 9 +- _doc/conf.py | 33 ++++ _doc/examples/plot_serialisation_examples.py | 27 +-- _doc/examples/plot_serialisation_protobuf.py | 2 + _doc/examples/plot_tarabiscote.py | 2 +- _doc/glossary.rst | 2 - _doc/i_examples.rst | 16 -- _doc/i_faq.rst | 29 +-- _doc/index.rst | 8 +- pyproject.toml | 2 - requirements-dev.txt | 2 + 21 files changed, 250 insertions(+), 119 deletions(-) create mode 100644 _doc/c_classes/questions.rst delete mode 100644 _doc/c_lang/faq.rst delete mode 100644 _doc/c_module/faq.rst delete mode 100644 _doc/i_examples.rst diff --git a/.gitignore b/.gitignore index 95cc9a02..ece1510f 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,8 @@ *.pyc *.pyd *.so +*.bin +*.log .coverage .eggs/* _cache/* @@ -13,9 +15,11 @@ dist/* onnxruntime_profile* prof temp_* +essai.txt .ipynb_checkpoints _doc/CHANGELOGS.rst _doc/LICENSE.txt +_doc/examples/*.proto _doc/auto_examples/* _doc/examples/plot_*.png _doc/examples/plot_*.xlsx diff --git a/_doc/c_classes/classes.rst b/_doc/c_classes/classes.rst index 7d27a647..bb60a32a 100644 --- a/_doc/c_classes/classes.rst +++ b/_doc/c_classes/classes.rst @@ -926,7 +926,7 @@ et ``__setitem__`` de manière à pouvoir accéder aux coordonnées de la classe ``point_espace`` qui définit un point dans l'espace. En règle générale, lorsque les indices ne sont pas corrects, ces deux opérateurs lèvent l'exception ``IndexError`` -(voir le chapitre :ref:`chap_exception`. +(voir le chapitre :ref:`chap_exception`). .. runpython:: :showcode: diff --git a/_doc/c_classes/index.rst b/_doc/c_classes/index.rst index c0458fdb..3f56ce20 100644 --- a/_doc/c_classes/index.rst +++ b/_doc/c_classes/index.rst @@ -7,3 +7,5 @@ Classes :maxdepth: 2 classes + questions + diff --git a/_doc/c_classes/questions.rst b/_doc/c_classes/questions.rst new file mode 100644 index 00000000..24de6e75 --- /dev/null +++ b/_doc/c_classes/questions.rst @@ -0,0 +1,177 @@ + +######### +Questions +######### + +.. contents:: + :local: + +.. blog-class-ou-fonction: + +C'est obligé d'utiliser les classes ? +====================================== + +*Monsieur, c'est obligé d'utiliser les classes ?* +C'est une question qu'on me pose chaque année +lors des projets informatiques +et je réponds chaque année que non, les classes +ne sont pas obligatoires mais qu'elles ont le don +de simplifier l'écriture des programmes. +Le lanage :epkg:`Python` propose une des syntaxes +les plus explicites par rapport à d'autres langages +car il n'y a pas de paramètres cachés. +Le programme suivant calcule la somme et le produit +de deux entiers stockés dans un dictionnaire. + +.. runpython:: + :showcode: + + def deux_entiers_somme(de): + return de['i1'] + de['i2'] + + def deux_entiers_multiplication(de): + return de['i1'] * de['i2'] + + de = {'i1': 3, 'i2': 2} + s = deux_entiers_somme(de) + m = deux_entiers_multiplication(de) + print(s, m) + +Les deux fonctions ne sont applicables qu'à deux entiers. +Il paraît normal de les préfixer avec *deux_entiers* +pour signifier à celui qui les utiliser que ça ne sert +à rien de les utiliser pour autre chose. +Les classes permettent de regrouper formellement +ces deux fonctions. + +.. runpython:: + :showcode: + + class DeuxEntiers: + + def somme(de): + return de['i1'] + de['i2'] + + def multiplication(de): + return de['i1'] * de['i2'] + + de = {'i1': 3, 'i2': 2} + s = DeuxEntiers.somme(de) # _ --> . + m = DeuxEntiers.multiplication(de) # _ --> . + print(s, m) + +On a juste remplacé le signe ``_`` par ``.`` qui signifie +que la fonction cherchée est dans la classe qui précède ``.``. +Comme les deux entiers en questions sont toujours liés +aux fonctions qui les manipulent, il paraît normal de les +inclure dans la classe. + +.. runpython:: + :showcode: + + class DeuxEntiers: + + def __init__(self, de): # on accroche les données à la classe + self.de = de + + def somme(self): + return self.de['i1'] + self.de['i2'] + + def multiplication(self): + return self.de['i1'] * self.de['i2'] + + de = DeuxEntiers({'i1': 3, 'i2': 2}) + s = DeuxEntiers.somme(de) + m = DeuxEntiers.multiplication(de) + print(s, m) + +Comme le concept a beaucoup plu aux informaticiens, +ils ont cherché à simplifier l'appel aux fonctions qu'ils +ont appelé des *méthodes* : + +.. runpython:: + :showcode: + + class DeuxEntiers: + + def __init__(self, de): + self.de = de + + def somme(self): + return self.de['i1'] + self.de['i2'] + + def multiplication(self): + return self.de['i1'] * self.de['i2'] + + de = DeuxEntiers({'i1': 3, 'i2': 2}) + s = de.somme() # disparition de DeuxEntiers + m = de.multiplication() # disparition de DeuxEntiers + print(s, m) + +.. index:: attribut + +Ensuite, ils se sont penchés sur la simplification de la représentation +des deux entiers ``{'i1': 3, 'i2': 2}``. Et s'ils étaient considérés comme +des variables de la classe qui ont été renommés en *attributs*. + +.. runpython:: + :showcode: + + class DeuxEntiers: + + def __init__(self, i1, i2): + self.i1 = i1 # plus de dictionnaire + self.i2 = i2 + + def somme(self): + return self.i1 + self.i2 # plus de dictionnaire + + def multiplication(self): + return self.i1 * self.i2 # plus de dictionnaire + + de = DeuxEntiers(3, 2) # plus de dictionnaire + s = de.somme() + m = de.multiplication() + print(s, m) + +Les classes permettent de regrouper formellement +les fonctions qui ne s'appliquent toujours aux mêmes +données. Plus encore, ce nouveau concept a permis d'en +introduire un autre, l':ref:`par_classe_heritage`, qui +permet de réutiliser certaines fonctions, d'en remplacer +d'autres et d'en ajouter pour une autre situation. + +.. runpython:: + :showcode: + + class DeuxEntiers: + + def __init__(self, i1, i2): + self.i1 = i1 + self.i2 = i2 + + def somme(self): + return self.i1 + self.i2 + + def multiplication(self): + return self.i1 * self.i2 + + class DeuxEntiersModifies(DeuxEntiers): # héritage + + def multiplication(self): + return abs(self.i1 * self.i2) # modifié + + def division(self): + return abs(self.i1 / self.i2) # ajouté + + de = DeuxEntiersModifies(-3, 2) + s = de.somme() + m = de.multiplication() + d = de.division() + print(s, m, d) + +Cela peut paraît anodin mais la grande majorité des +programmeurs utilisent majoritairement les classes +une fois qu'ils les ont découvertes car elles +permettent d'organiser le code informatique +en bloc logique. diff --git a/_doc/c_exception/exception_ext.rst b/_doc/c_exception/exception_ext.rst index 151d0980..720d9486 100644 --- a/_doc/c_exception/exception_ext.rst +++ b/_doc/c_exception/exception_ext.rst @@ -113,8 +113,8 @@ Conventions Erreur ou code d'erreur +++++++++++++++++++++++ -.. todoext:: - :title: terminer la section Erreur ou code d'erreur +*à compléter* - parler aussi de coûts d'une exception, - libération des ressources +* erreur ou code d'erreur +* coûts d'une exception +* libération des ressources diff --git a/_doc/c_lang/faq.rst b/_doc/c_lang/faq.rst deleted file mode 100644 index 0c795179..00000000 --- a/_doc/c_lang/faq.rst +++ /dev/null @@ -1,23 +0,0 @@ - -.. _l-faq-python: - -=== -FAQ -=== - -.. contents:: - :local: - -Python -====== - -.. faqreflist:: - :tag: python - :contents: - -numpy -===== - -.. faqreflist:: - :tag: numpy - :contents: diff --git a/_doc/c_lang/index.rst b/_doc/c_lang/index.rst index 28db3912..240bf84c 100644 --- a/_doc/c_lang/index.rst +++ b/_doc/c_lang/index.rst @@ -12,4 +12,3 @@ Variables et fonctions collections dates encoding - faq diff --git a/_doc/c_lang/types.rst b/_doc/c_lang/types.rst index 00bf97ef..a43c8356 100644 --- a/_doc/c_lang/types.rst +++ b/_doc/c_lang/types.rst @@ -807,8 +807,8 @@ Dates : d = datetime.datetime.now() print('{:%Y-%m-%d %H:%M:%S}'.format(d)) -Le site :epkg:`pyformat` recense d'autres usages de la méthode -:epkg:`format` comme l'affichage de chaînes de caractères tronquées. +Le site :epkg:`format` recense d'autres usages de la méthode +`format` comme l'affichage de chaînes de caractères tronquées. .. runpython:: :showcode: @@ -1926,11 +1926,6 @@ comme l'intersection, l'union. servir comme clé dans un dictionnaire ou comme valeur dans un `set` ou `frozenset`. -.. todoext:: - :title: Compléter le paragraphe sur les set - - set, frozen set - Matrices et DataFrames ====================== diff --git a/_doc/c_module/faq.rst b/_doc/c_module/faq.rst deleted file mode 100644 index 6ab13559..00000000 --- a/_doc/c_module/faq.rst +++ /dev/null @@ -1,10 +0,0 @@ - -.. _l-faq-module: - -=== -FAQ -=== - -.. faqreflist:: - :tag: module - :contents: diff --git a/_doc/c_module/index.rst b/_doc/c_module/index.rst index d4673a73..1a3d2f25 100644 --- a/_doc/c_module/index.rst +++ b/_doc/c_module/index.rst @@ -9,4 +9,3 @@ Entrées, Sorties, Modules files serialization module - faq diff --git a/_doc/c_module/serialization.rst b/_doc/c_module/serialization.rst index 2cb138a9..90e8d205 100644 --- a/_doc/c_module/serialization.rst +++ b/_doc/c_module/serialization.rst @@ -321,12 +321,7 @@ dans le language de votre choix. A -> B [label = "compilation"]; } -La suite est dans le notebook : - -.. toctree:: - :maxdepth: 1 - - ../notebooks/serialisation_protobuf +La suite est dans l'exemple :ref:`l-example-protobuf`. Sérialiser autre chose que des données ====================================== @@ -340,4 +335,4 @@ où cela est néanmoins possible sans trop de développement. .. toctree:: :maxdepth: 1 - ../notebooks/serialisation_examples + ../auto_examples/serialisation_examples diff --git a/_doc/conf.py b/_doc/conf.py index 59f618ea..35f52118 100644 --- a/_doc/conf.py +++ b/_doc/conf.py @@ -25,6 +25,7 @@ "sphinx_runpython.epkg", "sphinx_runpython.gdot", "sphinx_runpython.runpython", + "sphinxcontrib.blockdiag", "matplotlib.sphinxext.plot_directive", ] @@ -169,14 +170,20 @@ epkg_dictionary = { "ACP": "https://fr.wikipedia.org/wiki/Analyse_en_composantes_principales", "AESA": "https://tavianator.com/aesa/", + "algorithme": "https://fr.wikipedia.org/wiki/Algorithme", + "algortihmes de tri": "https://fr.wikipedia.org/wiki/Algorithme_de_tri", + "API REST": "https://fr.wikipedia.org/wiki/Representational_state_transfer", + "Anaconda": "https://continuum.io/downloads", "ApproximateNMFPredictor": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/mlinsights/mlmodel/anmf_predictor.html", "AUC": "https://en.wikipedia.org/wiki/Receiver_operating_characteristic#Area_under_the_curve", + "Awesome Python": "https://awesome-python.com/", "B+ tree": "https://en.wikipedia.org/wiki/B%2B_tree", "BLAS": "https://www.netlib.org/blas/", "Branch and Bound": "https://en.wikipedia.org/wiki/Branch_and_bound", "bytearray": "https://docs.python.org/3/library/functions.html#bytearray", "C++": "https://fr.wikipedia.org/wiki/C%2B%2B", "copy": "https://docs.python.org/3/library/copy.html?highlight=copy#copy.copy", + "cloudpickle": "https://github.com/cloudpipe/cloudpickle", "Custom Criterion for DecisionTreeRegressor": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/piecewise_linear_regression_criterion.html", "cython": "https://cython.org/", "DecisionTreeClassifier": "https://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html", @@ -188,16 +195,23 @@ "encoding": "https://fr.wikipedia.org/wiki/Codage_des_caract%C3%A8res", "eval": "https://docs.python.org/3/library/functions.html?highlight=id#eval", "Excel": "https://fr.wikipedia.org/wiki/Microsoft_Excel", + "format": "https://pyformat.info/", + "format style": "https://pyformat.info/", "garbage collector": "https://fr.wikipedia.org/wiki/Ramasse-miettes_(informatique)", "Holm-Bonferroni method": "https://en.wikipedia.org/wiki/Holm%E2%80%93Bonferroni_method", "HTML": "https://fr.wikipedia.org/wiki/Hypertext_Markup_Language", "ICML 2016": "https://icml.cc/2016/index.html", "indentation": "https://fr.wikipedia.org/wiki/Style_d%27indentation", "issubclass": "https://docs.python.org/3/library/functions.html?highlight=issubclass#issubclass", + "joblib": "https://joblib.readthedocs.io/en/stable/", + "JSON": "https://en.wikipedia.org/wiki/JSON", + "jupyter": "https://jupyter.org/", "KMeans": "https://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html", "LAESA": "https://tavianator.com/aesa/", "LAPACK": "http://www.netlib.org/lapack/", "Method Resolution Order": "https://www.python.org/download/releases/2.3/mro/", + "miniconda": "https://docs.conda.io/en/latest/miniconda.html", + "Miniconda": "https://docs.conda.io/en/latest/miniconda.html", "mlinsights": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/index.html", "mlstatpy": "https://sdpython.github.io/doc/mlstatpy/dev/", "numpy": ( @@ -205,11 +219,28 @@ ("https://docs.scipy.org/doc/numpy/reference/generated/numpy.{0}.html", 1), ("https://docs.scipy.org/doc/numpy/reference/generated/numpy.{0}.{1}.html", 2), ), + "OpenMP": "https://www.openmp.org/", + "pandas": ( + "https://pandas.pydata.org/pandas-docs/stable/", + ("https://pandas.pydata.org/pandas-docs/stable/generated/pandas.{0}.html", 1), + ( + "https://pandas.pydata.org/pandas-docs/stable/generated/pandas.{0}.{1}.html", + 2, + ), + ), "PiecewiseTreeRegressor": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/mlinsights/mlmodel/" "piecewise_tree_regression.html#mlinsights.mlmodel.piecewise_tree_regression.PiecewiseTreeRegressor", "Pillow": "https://pillow.readthedocs.io/en/stable/", "Predictable t-SNE": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/predictable_tsne.html", "printf-style String Formatting": "https://docs.python.org/3/library/stdtypes.html#old-string-formatting", + "programmation impérative": "https://fr.wikipedia.org/wiki/Programmation_imp%C3%A9rative", + "programmation fonctionnelle": "https://fr.wikipedia.org/wiki/Programmation_fonctionnelle", + "protobuf": "https://protobuf.dev/", + "pypi": "https://pypi.org/", + "PyPi": "https://pypi.org/", + "pylint": "https://www.pylint.org/", + "python": "https://www.python.org/", + "Python": "https://www.python.org/", "QuantileLinearRegression": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/mlinsights/mlmodel/quantile_regression.html#mlinsights.mlmodel.quantile_regression.QuantileLinearRegression", "R-tree": "https://en.wikipedia.org/wiki/R-tree", "R* tree": "https://en.wikipedia.org/wiki/R*_tree", @@ -228,6 +259,8 @@ "threads": "https://fr.wikipedia.org/wiki/Thread_(informatique)", "tkinter": "https://docs.python.org/3/library/tk.html", "tqdm": "https://tqdm.github.io/", + "ujson": "https://github.com/ultrajson/ultrajson", + "Visual Studio Code": "https://code.visualstudio.com/", "Visualize a scikit-learn pipeline": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/visualize_pipeline.html", "X-tree": "https://en.wikipedia.org/wiki/X-tree", "XML": "https://fr.wikipedia.org/wiki/Extensible_Markup_Language", diff --git a/_doc/examples/plot_serialisation_examples.py b/_doc/examples/plot_serialisation_examples.py index d93367c2..6c7e9f8f 100644 --- a/_doc/examples/plot_serialisation_examples.py +++ b/_doc/examples/plot_serialisation_examples.py @@ -12,8 +12,8 @@ Le format :epkg:`JSON` est le format le plus utilisé sur internet notemmant via les :epkg:`API REST`. -Ecriture -++++++++ +Ecriture (json) ++++++++++++++++ """ from io import StringIO, BytesIO import timeit @@ -45,8 +45,8 @@ ######################################### -# Lecture -# +++++++ +# Lecture (json) +# ++++++++++++++ buffer = StringIO(seq) @@ -188,8 +188,8 @@ def decode(self, o): # Celui-ci est propre à *Python* et ne peut être lu d'autres langages, # voire parfois par d'autres versions de *Python*. # -# Ecriture -# ++++++++ +# Ecriture (pickle) +# +++++++++++++++++ data = { @@ -214,8 +214,8 @@ def decode(self, o): ######################################### -# Lecture -# +++++++ +# Lecture (pickle) +# ++++++++++++++++ buffer = BytesIO(seq) @@ -401,7 +401,7 @@ def myfunc(x): ######################################### # Il est possible de contourner l'obstacle en utilisant le module -# :epkg:`cloudpicke` qui stocke le code de la fonction. +# :epkg:`cloudpickle` qui stocke le code de la fonction. def myfunc(x): @@ -433,10 +433,11 @@ def myfunc(x): ######################################### -# JSON -# ++++ +# Fonction et JSON +# ++++++++++++++++ # -# La sérialisation au format JSON ne fonctionne pas avec le module standard. +# La sérialisation d'une fonction au format JSON ne +# fonctionne pas avec le module standard. buffer = StringIO() @@ -453,7 +454,7 @@ def myfunc(x): buffer = StringIO() try: - res = json.dump(data, buffer) # 3 + res = ujson.dump(data, buffer) # 3 except TypeError as e: print(e) buffer.getvalue() diff --git a/_doc/examples/plot_serialisation_protobuf.py b/_doc/examples/plot_serialisation_protobuf.py index 8a2b3701..5ca04343 100644 --- a/_doc/examples/plot_serialisation_protobuf.py +++ b/_doc/examples/plot_serialisation_protobuf.py @@ -1,5 +1,7 @@ # coding: utf-8 """ +.. _l-example-protobuf: + =========================== Sérialisation avec protobuf =========================== diff --git a/_doc/examples/plot_tarabiscote.py b/_doc/examples/plot_tarabiscote.py index 5f231c59..e66191eb 100644 --- a/_doc/examples/plot_tarabiscote.py +++ b/_doc/examples/plot_tarabiscote.py @@ -439,7 +439,7 @@ def valeurs_propres(self): # :math:`M''` ? Quelles sont ses vraies valeurs propres ? # # La matrice :math:`M''` n'est en fait pas diagonalisable, c'est-à-dire que -# :math:`\tr(M'')^2 - 4 * \det{M''} = 4 - 4 (1 + 10^{-18}) < 0`. +# :math:`tr(M'')^2 - 4 \det{M''} = 4 - 4 (1 + 10^{-18}) < 0`. # Or le calcul proposé par la question 3 aboutit au même résultat faux que pour # la matrice :math:`M_2`, les deux valeurs propres trouvées seront égales à 1. # Si on applique la décomposition proposée : diff --git a/_doc/glossary.rst b/_doc/glossary.rst index 59938190..0ec5a94e 100644 --- a/_doc/glossary.rst +++ b/_doc/glossary.rst @@ -21,8 +21,6 @@ Glossary Le formatage de données est utilisé dès qu'une information est affichée à l'écran, le plus souvent pour débugger ou pour logger. - Le site :epkg:`pyformat` recense différents usages utiles mais - parfois peu connus de la fonction :epkg:`format`. ml Raccourci pour `Machine Learning `_. diff --git a/_doc/i_examples.rst b/_doc/i_examples.rst deleted file mode 100644 index d8fc6185..00000000 --- a/_doc/i_examples.rst +++ /dev/null @@ -1,16 +0,0 @@ - -======== -Exemples -======== - -Exemples, FAQ (Frequently Asked Questions), notebooks -et autres petits bouts de codes qu'on espère pouvoir copier -coller sans les comprendre. Parfois c'est vrai. - -.. toctree:: - :maxdepth: 1 - - i_ex - i_faq - gyexamples/index - all_notebooks diff --git a/_doc/i_faq.rst b/_doc/i_faq.rst index a29ee4d8..0fc091f5 100644 --- a/_doc/i_faq.rst +++ b/_doc/i_faq.rst @@ -15,33 +15,8 @@ Langage Python :contents: :tag: python -Classes -======= - -.. faqreflist:: - :contents: - :tag: class - -Modules -======= - -.. faqreflist:: - :contents: - :tag: module - -Manipulation de texte -===================== - -.. faqreflist:: - :contents: - :tag: regex - -Manipulation des données, calcul matriciel -========================================== - -.. faqreflist:: - :contents: - :tag: pandas +numpy +===== .. faqreflist:: :contents: diff --git a/_doc/index.rst b/_doc/index.rst index f944cb92..ab555a2a 100644 --- a/_doc/index.rst +++ b/_doc/index.rst @@ -32,6 +32,10 @@ Il est aussi disponible en c_data/index i_examples c_resume/index + auto_examples/index + defthe_index + license + CHANGELOGS Les ordinateurs font principalement des calculs. Ils permettent aussi d'automatiser de nombreuses tâches pour lesquelles ils @@ -67,10 +71,6 @@ souvent reliés au machine learning. :alt: GitHub Issues :target: https://github.com/sdpython/teachpyx/issues - .. image:: nbcov.png - :target: http://www.xavierdupre.fr/app/teachpyx/helpsphinx/all_notebooks_coverage.html - :alt: Notebook Coverage - .. image:: https://img.shields.io/github/repo-size/sdpython/teachpyx :target: https://github.com/sdpython/teachpyx/ :alt: size diff --git a/pyproject.toml b/pyproject.toml index 11f4b4c8..981ebdc4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -21,8 +21,6 @@ ignore_directives = [ "plot", "runpython", "tocdelay", - "todoext", - "todoextlist", ] ignore_roles = ["epkg", "githublink", "issue"] ignore_messages = [ diff --git a/requirements-dev.txt b/requirements-dev.txt index e1eb6719..e800a2b3 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -6,6 +6,7 @@ coverage jupyter jyquickhelper matplotlib +mutagen # mp3 nbsphinx pandas pillow @@ -18,6 +19,7 @@ scikit-learn>=1.1 sphinx sphinx-gallery sphinx-issues +sphinxcontrib-blockdiag git+https://github.com/sdpython/sphinx-runpython.git tqdm ujson From c964913187d14d435b01085a58a41f780544c18a Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Tue, 1 Aug 2023 11:44:26 +0200 Subject: [PATCH 21/26] black --- _doc/examples/plot_serialisation_examples.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_doc/examples/plot_serialisation_examples.py b/_doc/examples/plot_serialisation_examples.py index 6c7e9f8f..e6bb21f9 100644 --- a/_doc/examples/plot_serialisation_examples.py +++ b/_doc/examples/plot_serialisation_examples.py @@ -436,7 +436,7 @@ def myfunc(x): # Fonction et JSON # ++++++++++++++++ # -# La sérialisation d'une fonction au format JSON ne +# La sérialisation d'une fonction au format JSON ne # fonctionne pas avec le module standard. From fa2c320ba0870e235aad4e45f7ff26777265de73 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Wed, 2 Aug 2023 00:14:07 +0200 Subject: [PATCH 22/26] many modifications --- _doc/c_classes/classes.rst | 32 ++- _doc/c_classes/questions.rst | 2 +- _doc/c_gui/tkinter.rst | 237 ++++++++++---------- _doc/c_lang/collections.rst | 4 +- _doc/c_lang/syntaxe.rst | 24 +- _doc/c_lang/types.rst | 53 ++--- _doc/c_module/files.rst | 2 +- _doc/c_module/module.rst | 4 +- _doc/c_module/serialization.rst | 6 +- _doc/c_resume/python_sheet.rst | 18 +- _doc/conf.py | 75 ++++++- _doc/examples/plot_gil_example.py | 3 + _doc/examples/plot_hypercube.py | 3 + _doc/examples/plot_partie_dame.py | 3 + _doc/examples/plot_tarabiscote.py | 3 + _doc/glossary.rst | 29 --- _doc/index.rst | 17 +- _doc/introduction.rst | 3 +- teachpyx/__init__.py | 43 +--- teachpyx/examples/classiques.py | 5 +- teachpyx/examples/construction_classique.py | 79 ++++--- teachpyx/examples/numpysex.py | 4 +- teachpyx/faq/faq_python.py | 9 - 23 files changed, 325 insertions(+), 333 deletions(-) delete mode 100644 _doc/glossary.rst diff --git a/_doc/c_classes/classes.rst b/_doc/c_classes/classes.rst index bb60a32a..b5fa33ef 100644 --- a/_doc/c_classes/classes.rst +++ b/_doc/c_classes/classes.rst @@ -913,7 +913,7 @@ l'instruction ``print`` affiche un nombre complexe sous la forme :math:`a+ i b`. print(c3) # affiche 1.000000 + 1.000000 i Il existe de nombreux opérateurs qu'il est possible de définir. -La table :ref:`operateur_classe` présente les plus utilisés. +La table :ref:`opérateurs et classes ` présente les plus utilisés. Parmi ceux-là, on peut s'attarder sur les opérateurs ``__getitem__`` et ``__setitem__``, ils redéfinissent l'opérateur ``[]`` permettant d'accéder à un élément d'une liste ou d'un dictionnaire. @@ -966,7 +966,7 @@ Par le biais de l'exception ``IndexError``, les expressions le programme par un message comme celui qui suit obtenu après l'interprétation de ``print(a[4])`` : -.. _operator_classe: +.. _operateur_classe: .. list-table:: :widths: 5 10 @@ -1497,6 +1497,8 @@ du corps de ``essai_class``. .. _classe_proprietes_par: +.. _exemple_point_xyz: + Propriétés ---------- @@ -1560,8 +1562,6 @@ qui multiplie les parties réelle et imaginaire par un nombre réel positif de manière à ce que le nombre complexe ait le module demandé. On procède de même pour la propriété ``arg``. -.. _exemple_point_xyz: - La propriété ``conj`` retourne quant à elle le conjugué du nombre complexe mais la réciproque n'est pas prévue. On ne peut affecter une valeur à ``conj``. @@ -1801,7 +1801,7 @@ Pour effectivement copier les attributs dont le type est une classe, la première option - la plus simple - est de remplacer la fonction ``copy`` par la fonction ``deepcopy``. Le comportement de cette fonction dans le cas des classes est le même que dans le cas des -listes comme l'explique la remarque :ref:`copy_deepopy_remarque_`. +listes comme l'explique la remarque :ref:`copy_deepopy_remarque`. La seconde solution, rarement utilisée, est d'utiliser l'opérateur ``__copy__`` et ainsi écrire le code associé à la copie des attributs de la classe. @@ -3128,8 +3128,7 @@ la chaîne de caractères ``s`` et non à la troisième ligne du programme. def decouper(self,nb): l = [] for i in range (0,nb) : - f = fromage (self.poids/nb, \ - self.couleur, self.odeur) + f = fromage(self.poids/nb, self.couleur, self.odeur) l.append(f) return l @@ -3144,12 +3143,11 @@ la chaîne de caractères ``s`` et non à la troisième ligne du programme. poids = self.poids + f.poids couleur = [0,0,0] for i in range (0,3) : - couleur [i] = (self.couleur [i] * self.poids \ - + f.couleur [i] * f.poids) / poids - odeur = (self.odeur * self.poids + \ - f.odeur * f.poids) / poids - couleur = ( couleur [0], couleur [1], couleur [2]) - return fromage (poids, couleur, odeur) + couleur [i] = (self.couleur [i] * self.poids + + f.couleur[i] * f.poids) / poids + odeur = (self.odeur * self.poids + f.odeur * f.poids) / poids + couleur = (couleur[0], couleur[1], couleur[2]) + return fromage(poids, couleur, odeur) class gruyere(fromage): def __init__ (self,p) : @@ -3243,7 +3241,7 @@ Sens de l'héritage (1) ---------------------- Le premier exemple est classique puisqu'il reprend le programme du -paragraphe :ref:`paragraphe_fonction_variable` +paragraphe :ref:`fonction comme paramètre ` pour le réécrire avec des classes et éviter de passer des fonctions comme paramètre d'une autre fonction. La première classe définit le module des suivantes. La méthode ``calcul`` n'accepte qu'un @@ -3365,8 +3363,7 @@ suivre le schéma qui suit. class MatriceList (Matrice) : def __init__ (self,lin,col,coef): - Matrice.__init__ (self, \ - lin, col, coef) + Matrice.__init__ (self, lin, col, coef) #... def __getitem__ (self, i,j) : #... @@ -3376,8 +3373,7 @@ suivre le schéma qui suit. class MatriceDict (Matrice) : def __init__ (self,lin,col,coef): - Matrice.__init__ (self, \ - lin, col, coef) + Matrice.__init__ (self, lin, col, coef) #... def __getitem__ (self, i,j) : #... diff --git a/_doc/c_classes/questions.rst b/_doc/c_classes/questions.rst index 24de6e75..ba444b6a 100644 --- a/_doc/c_classes/questions.rst +++ b/_doc/c_classes/questions.rst @@ -6,7 +6,7 @@ Questions .. contents:: :local: -.. blog-class-ou-fonction: +.. _blog-class-ou-fonction: C'est obligé d'utiliser les classes ? ====================================== diff --git a/_doc/c_gui/tkinter.rst b/_doc/c_gui/tkinter.rst index d82f6cef..a10b7d22 100644 --- a/_doc/c_gui/tkinter.rst +++ b/_doc/c_gui/tkinter.rst @@ -116,7 +116,7 @@ Les exemples de codes des paragraphes qui suivent permettent de disposer les obj dans une fenêtre qui ne s'affichera pas sans les quelques lignes de code supplémentaires présentées au paragraphe :ref:`mainloop_fenetre_principale` et l'utilisation d'une méthode -:meth:`tkinter.Widget.pack` +:epkg:`tkinter.Widget.pack` L'exemple suivant crée un objet : :: @@ -190,7 +190,7 @@ Bouton .. index:: bouton Un bouton a pour but de faire le lien entre une fonction et un clic de souris. -Un bouton correspond à la classe :class:`tkinter.Button` +Un bouton correspond à la classe :epkg:`tkinter.Button` Pour créer un bouton, il suffit d'écrire la ligne suivante : :: @@ -199,7 +199,7 @@ Pour créer un bouton, il suffit d'écrire la ligne suivante : Il est possible que le texte de ce bouton doive changer après quelques temps. Dans ce cas, il faut appeler la méthode -:meth:`tkinter.Button.config` comme suit : +:epkg:`tkinter.Button.config` comme suit : :: @@ -265,7 +265,7 @@ Zone de saisie Une zone de saisie a pour but de recevoir une information entrée par l'utilisateur. Une zone de saisie correspond à la classe -:class:`tkinter.Entry` ; +:epkg:`tkinter.Entry` ; pour en créer une, il suffit d'écrire la ligne suivante : :: @@ -273,7 +273,7 @@ pour en créer une, il suffit d'écrire la ligne suivante : saisie = tkinter.Entry () Pour modifier le contenu de la zone de saisie, il faut utiliser -la méthode :meth:`tkinter.Entry.insert` +la méthode :epkg:`tkinter.Entry.insert` qui insère un texte à une position donnée. :: @@ -283,14 +283,14 @@ qui insère un texte à une position donnée. saisie.insert (pos, "contenu") Pour obtenir le contenu de la zone de saisie, il faut utiliser la méthode -:meth:`tkinter.Entry.get` : +:epkg:`tkinter.Entry.get` : :: contenu = saisie.get () Pour supprimer le contenu de la zone de saisie, il faut utiliser la -méthode :meth:`tkinter.Entry.delete`. +méthode :epkg:`tkinter.Entry.delete`. Cette méthode supprime le texte entre deux positions. :: @@ -317,7 +317,7 @@ on peut utiliser l'instruction suivante : La seconde zone de saisie est grisée par rapport à la première. Les zones de saisie grisées ne peuvent pas être modifiées. Pour obtenir cet état, il suffit d'utiliser la méthode -:meth:`tkinter.Entry.config` +:epkg:`tkinter.Entry.config` comme pour les précédents objets. Cette option sera rappelée au paragraphe :ref:`methode_communes_interface`. @@ -330,7 +330,7 @@ Zone de saisie à plusieurs lignes Une zone de saisie à plusieurs lignes est identique à la précédente à ceci près qu'elle autorise la saisie d'un texte sur plusieurs lignes. Cette zone -correspond à la classe :class:`tkinter.Text`. +correspond à la classe :epkg:`tkinter.Text`. Pour créer une telle zone, il suffit d'écrire la ligne suivante : :: @@ -338,7 +338,7 @@ Pour créer une telle zone, il suffit d'écrire la ligne suivante : saisie = tkinter.Text () Pour modifier le contenu de la zone de saisie, il faut utiliser la méthode -:meth:`tkinter.Text.insert` +:epkg:`tkinter.Text.insert` qui insère un texte à une position donnée. La méthode diffère de celle de la classe :ref:`Entry ` puisque la position d'insertion est maintenant une chaîne de caractères contenant deux nombres séparés @@ -352,7 +352,7 @@ par un point : le premier nombre désigne la ligne, le second la position sur ce saisie.insert (pos, "première ligne\nseconde ligne") Pour obtenir le contenu de la zone de saisie, il faut utiliser la méthode -:meth:`tkinter.Text.get` +:epkg:`tkinter.Text.get` qui retourne le texte entre deux positions. La position de fin n'est pas connue, on utilise la chaîne de caractères ``"end"`` pour désigner la fin de la zone de saisie. @@ -364,7 +364,7 @@ connue, on utilise la chaîne de caractères ``"end"`` pour désigner la fin de contenu = saisie.get (pos1, pos2) Pour supprimer le contenu de la zone de saisie, il faut utiliser la méthode -:meth:`tkinter.Text.delete`. +:epkg:`tkinter.Text.delete`. Cette méthode supprime le texte entre deux positions. :: @@ -399,7 +399,7 @@ on utilise l'instruction suivante : L'image précédente montre une zone de saisie à plusieurs lignes. Pour griser cette zone, il suffit d'utiliser la méthode -:meth:`tkinter.Text.config` +:epkg:`tkinter.Text.config` rappelée au paragraphe :ref:`methode_communes_interface`. .. _tkinter-checkbutton: @@ -410,7 +410,7 @@ Case à cocher .. index:: CheckButton, case à cocher Une case à cocher correspond à la classe -:class:`tkinter.CheckButton`. +:epkg:`tkinter.CheckButton`. Pour créer une case à cocher, il suffit d'écrire la ligne suivante : :: @@ -421,9 +421,9 @@ Pour créer une case à cocher, il suffit d'écrire la ligne suivante : case = tkinter.Checkbutton (variable = v) En fait, ce sont deux objets qui sont créés. Le premier, de type -:class:`tkinter.IntVar`, +:epkg:`tkinter.IntVar`, mémorise la valeur de la case à cocher. Le second objet, de type -:class:`tkinter.CheckButton`, gère l'apparence +:epkg:`tkinter.CheckButton`, gère l'apparence au niveau de l'interface graphique. La raison de ces deux objets est plus évidente dans le cas de l'objet :ref:`RadioButton ` décrit au paragraphe suivant. @@ -457,7 +457,7 @@ Il est possible d'associer du texte à l'objet case à cocher : La troisième est grisée par rapport à la première. Les cases grisées ne peuvent pas être cochées. Pour obtenir cet état, il suffit d'utiliser la méthode -:meth:`tkinter.CheckButton.config` +:epkg:`tkinter.CheckButton.config` rappelée au paragraphe :ref:`methode_communes_interface`. .. _tkinter-radiobutton: @@ -468,7 +468,7 @@ Case ronde ou bouton radio .. index:: RadioButton, bouton radio, IntVar Une case ronde ou *bouton radio* correspond à la classe -:class:`tkinter.RadioButton`. +:epkg:`tkinter.RadioButton`. Elles fonctionnent de manière semblable à des cases à cocher excepté le fait qu'elles n'apparaissent jamais seules : elles fonctionnent en groupe. Pour créer un groupe de trois cases rondes, il suffit d'écrire la ligne suivante : @@ -531,7 +531,7 @@ Liste Un objet liste contient une liste d'intitulés qu'il est possible de sélectionner. Une liste correspond à la classe -:class:`tkinter.ListBox`. +:epkg:`tkinter.ListBox`. Pour la créer, il suffit d'écrire la ligne suivante : :: @@ -549,7 +549,7 @@ on utilise l'instruction suivante : li.config (width = 10, height = 5) On peut insérer un élément dans la liste avec la méthode -:meth:`tkiner.ListBox.insert` : +:epkg:`tkinter.ListBox.insert` : :: @@ -557,7 +557,7 @@ On peut insérer un élément dans la liste avec la méthode li.insert (pos, "première ligne") On peut supprimer des intitulés de cette liste avec la méthode -:meth:`tkiner.ListBox.delete`. +:epkg:`tkinter.ListBox.delete`. :: @@ -568,7 +568,7 @@ On peut supprimer des intitulés de cette liste avec la méthode Les intitulés de cette liste peuvent ou non être sélectionnés. Cliquer sur un intitulé le sélectionne mais la méthode -:meth:`tkiner.ListBox.select_set` permet aussi de le faire. +:epkg:`tkinter.ListBox.select_set` permet aussi de le faire. :: @@ -578,7 +578,7 @@ intitulé le sélectionne mais la méthode # pos2 inclus ou seulement celui d'indice pos1 si pos2 == None Réciproquement, il est possible d'enlever un intitulé de la sélection à -l'aide de la méthode :meth:`tkiner.ListBox.select_clear`. +l'aide de la méthode :epkg:`tkinter.ListBox.select_clear`. :: @@ -587,14 +587,14 @@ l'aide de la méthode :meth:`tkiner.ListBox.select_clear`. # retire la sélection de tous les éléments entre les indices # pos1 et pos2 inclus ou seulement celui d'indice pos1 si pos2 == None -La méthode :meth:`tkiner.ListBox.curselection` +La méthode :epkg:`tkinter.ListBox.curselection` permet d'obtenir la liste des indices des éléments sélectionnés. :: sel = li.curselection () -La méthode :meth:`tkiner.ListBox.get` +La méthode :epkg:`tkinter.ListBox.get` permet récupérer un élément de la liste tandis que la méthode \codes{size} retourne le nombre d'éléments :\indextkk{size}\indextkk{get} :: @@ -612,11 +612,11 @@ Exemple de liste. La seconde liste est grisée et ne peut être modifiée. - .. image:: images/list2.png Pour obtenir l'état grisé, il faut appeler la méthode -:meth:`tkiner.ListBox.config` +:epkg:`tkinter.ListBox.config` et rappelée au paragraphe :ref:`methode_communes_interface`. Il est possible d'adjoindre une barre de défilement verticale. Il faut pour cela inclure l'objet dans une sous-fenêtre -:class:`tkinter.Frame` +:epkg:`tkinter.Frame` qui est définie au paragraphe :ref:`interf_fraph_sous_gene` comme dans l'exemple suivant : @@ -624,7 +624,7 @@ comme dans l'exemple suivant : frame = tkinter.Frame (parent) scrollbar = tkinter.Scrollbar (frame) - li = tkinter.Listbox (frame, width = 88, height = 6, \ + li = tkinter.Listbox (frame, width = 88, height = 6, yscrollcommand = scrollbar.set) scrollbar.config (command = li.yview) li.pack (side = tkinter.LEFT) @@ -635,13 +635,13 @@ Toutefois, il est préférable d'utiliser un objet prédéfini présent dans le :mod:`tkinter.tix` qui est une extension du module :epkg:`tkinter`. Elle est présentée au paragraphe :ref:`chap_interface_exemple_programme`. -Lorsqu'on insère plusieurs objets :class:`tkinter.ListBox` +Lorsqu'on insère plusieurs objets :epkg:`tkinter.ListBox` dans une seule fenêtre, ces objets partagent par défaut la même sélection. Autrement dit, lorsqu'on clique sur un élément de la seconde -:class:`tkinter.ListBox`, +:epkg:`tkinter.ListBox`, l'élément sélectionné dans la première ne l'est plus. Afin de pouvoir sélectionner un élément dans chaque -:class:`tkinter.ListBox`, il faut ajouter +:epkg:`tkinter.ListBox`, il faut ajouter dans les paramètres du constructeur l'option ``exportselection=0`` comme l'illustre l'exemple suivant : @@ -651,7 +651,7 @@ comme l'illustre l'exemple suivant : Il existe des méthodes plus avancées qui permettent de modifier l'aspect graphique d'un élément comme la méthode -:meth:`tkinter.ListBox.itemconfig`. +:epkg:`tkinter.ListBox.itemconfig`. Son utilisation est peu fréquente à moins de vouloir réaliser une belle interface graphique. Le paragraphe :ref:`more_than_on_e_window_ref_liste` montre l'utilisation qu'on peut en faire. @@ -663,7 +663,7 @@ Liste avec barre de défilement, Combobox C'est une liste avec une barre de défilement incluse qui est présente dans l'extension :mod:`tkinter.ttk` qui étend la liste des objets proposés par -:epkg:`tkinter`. C'est ce que fait l'objet :class:`tkinter.ttk.ComboBox`. +:epkg:`tkinter`. C'est ce que fait l'objet :epkg:`tkinter.ttk.Combobox`. :: @@ -699,7 +699,7 @@ Canevas ------- Pour dessiner, il faut utiliser un objet canevas, -correspondant à la classe :class:`tkinter.Canvas`. +correspondant à la classe :epkg:`tkinter.Canvas`. Pour la créer, il suffit d'écrire la ligne suivante : :: @@ -718,9 +718,9 @@ on utilise l'instruction suivante : Cet objet permet de dessiner des lignes, des courbes, d'écrire du texte grâce aux méthodes -:meth:`tkinter.Canvas.create_line`, -:meth:`tkinter.Canvas.create_rectangle`, -:meth:`tkinter.Canvas.create_text`. +:epkg:`tkinter.Canvas.create_line`, +:epkg:`tkinter.Canvas.create_rectangle`, +:epkg:`tkinter.Canvas.create_text`. :: @@ -829,9 +829,9 @@ Emplacements Chacun des objets (ou widgets) présentés au paragraphe précédent possède trois méthodes qui permettent de déterminer sa position dans une fenêtre : -:meth:`tkinter.Widget.pack`, -:meth:`tkinter.Widget.grid`, -:meth:`tkinter.Widget.place`. +:epkg:`tkinter.Widget.pack`, +:epkg:`tkinter.Widget.grid`, +:epkg:`tkinter.Widget.place`. Les deux premières permettent de disposer les objets sans se soucier ni de leur dimension ni de leur position. La fenêtre gère cela automatiquement. La dernière place les objets dans une fenêtre à @@ -890,8 +890,8 @@ Il n'est pas toujours évident d'obtenir du premier coup le positionnement des objets souhaités au départ et il faut tâtonner pour y arriver. Lorsque un objet n'est plus nécessaire, il est possible de le faire disparaître en appelant la méthode -:meth:`tkinter.Widget.pack_forget`. -Le rappel de la méthode :meth:`tkinter.Widget.pack` +:epkg:`tkinter.Widget.pack_forget`. +Le rappel de la méthode :epkg:`tkinter.Widget.pack` le fera réapparaître mais rarement au même endroit. :: @@ -902,7 +902,7 @@ le fera réapparaître mais rarement au même endroit. Méthode grid ++++++++++++ -La méthode :meth:`tkinter.Widget.grid` +La méthode :epkg:`tkinter.Widget.grid` suppose que la fenêtre qui les contient est organisée selon une grille dont chaque case peut recevoir un objet. L'exemple suivant place trois objets dans les cases de coordonnées @@ -923,7 +923,7 @@ compte des lignes et colonnes vides. .. image:: images/grid1.png -La méthode :meth:`tkinter.Widget.grid` +La méthode :epkg:`tkinter.Widget.grid` possède plusieurs options, en voici cinq : * ``column`` : colonne dans laquelle sera placée l'objet. @@ -939,8 +939,8 @@ possède plusieurs options, en voici cinq : d'étendre l'objet d'un bord à l'autre en écrivant ``sticky="N+S"`` ou ``sticky="E+W"``. -Enfin, comme pour la méthode :meth:`tkinter.Widget.pack`, -il existe une méthode :meth:`tkinter.Widget.grid_forget` +Enfin, comme pour la méthode :epkg:`tkinter.Widget.pack`, +il existe une méthode :epkg:`tkinter.Widget.grid_forget` qui permet de faire disparaître les objets. :: @@ -950,25 +950,25 @@ qui permet de faire disparaître les objets. Méthode place +++++++++++++ -La méthode :meth:`tkinter.Widget.place` +La méthode :epkg:`tkinter.Widget.place` est sans doute la plus simple à comprendre puisqu'elle permet de placer chaque objet à une position définie par des coordonnées. Elle peut être utilisée en parallèle avec les méthodes -:meth:`tkinter.Widget.place` et -:meth:`tkinter.Widget.grid`. +:epkg:`tkinter.Widget.place` et +:epkg:`tkinter.Widget.grid`. :: l = tkinter.Label(text="première ligne") l.place (x=10, y=50) -La méthode :meth:`tkinter.Widget.place_forget` +La méthode :epkg:`tkinter.Widget.place_forget` permet de faire disparaître un objet placer avec cette méthode. L'inconvénient de cette méthode survient lorsqu'on cherche à modifier l'emplacement d'un objet : il faut en général revoir les positions de tous les autres éléments de la fenêtre. On procède souvent par tâtonnement pour construire une fenêtre et disposer les objets. Ce travail est beaucoup -plus long avec la méthode :meth:`tkinter.Widget.place`. +plus long avec la méthode :epkg:`tkinter.Widget.place`. .. _interf_fraph_sous_gene: @@ -982,7 +982,7 @@ C'est aussi la seule façon de réutiliser un groupe de contrôle ou widgets dans plusieurs fenêtres sans avoir à dupliquer le code. La figure suivante montre deux objets regroupés dans un rectangle avec à sa gauche une zone de texte. Les boîtes sont des instances de la classe -:class:`tkinter.Frame`. +:epkg:`tkinter.Frame`. .. image:: images/frame.png @@ -990,7 +990,7 @@ Les deux premiers objets, une zone de texte au-dessus d'une zone de saisie, sont regroupés dans une boîte rectangle rouge, invisible à l'écran. A droite et centrée, une dernière zone de texte. Cet alignement est plus simple à réaliser en regroupant les deux premiers objets dans un object -:class:`tkinter.Frame`. +:epkg:`tkinter.Frame`. Pour créer une boîte, il suffit d'écrire la ligne suivante : :: @@ -1022,7 +1022,7 @@ la fenêtre de la figure ci-dessus. e.pack (side = tkinter.RIGHT) # positionne e à l'intérieur # de la fenêtre principale -L'utilisation de ces blocs :class:`tkinter.Frame` +L'utilisation de ces blocs :epkg:`tkinter.Frame` est pratique lorsque le même ensemble de contrôles apparaît dans plusieurs fenêtres différentes ou au sein de la même fenêtre. Cette possibilité est envisagée au paragraphe @@ -1070,12 +1070,12 @@ Une fenêtre peut contenir plusieurs zones de saisie, toutes capables d'intercepter la pression d'une touche du clavier et d'ajouter la lettre correspondante à la zone de saisie. Or la seule qui ajoute effectivement une lettre à son contenu est celle qui a le -:meth:`tkinter.Widget.focus`. +:epkg:`tkinter.Widget.focus`. La pression de la touche tabulation fait passer le focus d'un objet à l'autre. La figure ci-dessous montre un bouton qui a le focus. Lorsqu'on désire qu'un objet en particulier ait le focus, il suffit d'appeler la méthode -:meth:`tkinter.Widget.focus_set`. +:epkg:`tkinter.Widget.focus_set`. .. image:: images/focus.png @@ -1161,7 +1161,7 @@ fonctions à des événements liés à leur apparence. Toutefois, pour un jeu par exemple, il est parfois nécessaire d'avoir accès au mouvement de la souris et il faut revenir aux événements *bruts*. Un événement est décrit par la classe -:class:`tkinter.Event` +:epkg:`tkinter.Event` dont les attributs listés par la table suivante décrivent l'événement qui sera la plupart du temps la pression d'une touche du clavier ou le mouvement de la souris. @@ -1197,10 +1197,10 @@ La liste complète est accessible avec l'instruction suivante : import tkinter help(tkinter.Event) -La méthode :meth:`tkinter.Widget.bind` +La méthode :epkg:`tkinter.Widget.bind` permet d'exécuter une fonction lorsqu'un certain événement donné est intercepté par un objet donné. La fonction exécutée accepte un seul -paramètre de type :class:`tkinter.Event` +paramètre de type :epkg:`tkinter.Event` qui est l'événement qui l'a déclenchée. Cette méthode a pour syntaxe : :: @@ -1211,7 +1211,7 @@ qui est l'événement qui l'a déclenchée. Cette méthode a pour syntaxe : caractères ``ev`` dont les valeurs possibles sont décrites ci-dessous. ``fonction`` est la fonction qui est appelée lorsque l'événement survient. Cette fonction ne prend qu'un paramètre de type -:class:`tkinter.Event`. +:epkg:`tkinter.Event`. .. list-table:: :widths: 5 10 @@ -1248,7 +1248,7 @@ La liste complète est accessible avec l'instruction suivante : help(tkinter.Label.bind) L'exemple suivant utilise la méthode -:meth:`tkinter.Widget.bind` +:epkg:`tkinter.Widget.bind` pour que le seul bouton de la fenêtre intercepte toute pression d'une touche, tout mouvement et toute pression du premier bouton de la souris lorsque le curseur est au dessus de la zone graphique du bouton. @@ -1334,9 +1334,9 @@ suivantes qui signifie que l'événement ```` n'existe pas. Il arrive parfois qu'un événement ne doive pas être associé à un seul objet mais à tous ceux que la fenêtre contient. C'est -l'objectif de la méthode :meth:`tkinter.Widget.bind_all`. +l'objectif de la méthode :epkg:`tkinter.Widget.bind_all`. Sa syntaxe est exactement la même que la méthode -:meth:`tkinter.Widget.bind`. +:epkg:`tkinter.Widget.bind`. :: @@ -1348,9 +1348,9 @@ On utilise peu cette fonction, on préfère construire des objets propres De la même manière qu'il est possible d'associer un événement à un objet d'une fenêtre, il est possible d'effectuer l'opération inverse qui consiste à supprimer cette association. -La méthode :meth:`tkinter.Widget.unbind` +La méthode :epkg:`tkinter.Widget.unbind` désactive un événement associé à un objet. -La méthode :meth:`tkinter.Widget.unbind_all` +La méthode :epkg:`tkinter.Widget.unbind_all` désactive un événement associé pour tous les objets d'une fenêtre. :: @@ -1380,7 +1380,7 @@ Menu Les menus fonctionnent de la même manière que les boutons. Chaque intitulé du menu est relié à une fonction qui sera exécutée à la condition que l'utilisateur sélectionne cet -intitulé. L'objet :class:`tkinter.Menu` +intitulé. L'objet :epkg:`tkinter.Menu` ne désigne pas le menu dans son ensemble mais seulement un niveau. Par exemple, le menu présenté par la figure suivante est en fait un assemblage de trois menus auquel on pourrait ajouter d'autres sous-menus. @@ -1390,7 +1390,7 @@ assemblage de trois menus auquel on pourrait ajouter d'autres sous-menus. La représentation d'un menu tient plus d'un graphe que d'une liste. Chaque intitulé du menu peut être connecté à une fonction ou être le point d'entrée d'un nouveau sous-menu. Pour créer un menu ou un sous-menu, il suffit de créer un objet de type -:class:`tkinter.Menu` : +:epkg:`tkinter.Menu` : :: @@ -1405,10 +1405,10 @@ le suivant : root.config (menu = m) ``root`` est ici la fenêtre principale mais ce pourrait être également -une fenêtre de type :class:`tkinter.Toplevel` +une fenêtre de type :epkg:`tkinter.Toplevel` Ce menu peut aussi être le sous-menu associé à un intitulé d'un menu existant. La méthode -:meth:`tkinter.Menu.add_cascade` +:epkg:`tkinter.Menu.add_cascade` permet d'ajouter un sous-menu associé à un label : :: @@ -1418,7 +1418,7 @@ permet d'ajouter un sous-menu associé à un label : mainmenu.add_cascade (label = "sous-menu 1", menu = msousmenu) En revanche, si on souhaite affecter une fonction à un menu, on utilisera -la méthode :meth:`tkinter.Menu.add_command`. +la méthode :epkg:`tkinter.Menu.add_command`. :: @@ -1474,7 +1474,7 @@ Ce qui donne : Chaque intitulé d'un menu est ajouté en fin de liste, il est possible d'en supprimer certains à partir de leur position avec -la méthode :meth:`tkinter.Menu.delete`. +la méthode :epkg:`tkinter.Menu.delete`. :: @@ -1503,32 +1503,32 @@ un seul bouton qui, s'il est pressé, mettra fin à l'application. La table suivante regroupe les fonctions les plus utilisées. Celles-ci s'applique à une fenêtre de type -:class:`tkinter.Toplevel` +:epkg:`tkinter.Toplevel` qui est aussi le type de la fenêtre principale. .. list-table:: :widths: 5 10 :header-rows: 0 - * - :meth:`tkinter.Toplevel.destroy` + * - :epkg:`tkinter.Toplevel.destroy` - Détruit la fenêtre. - * - :meth:`tkinter.Toplevel.deiconify` + * - :epkg:`tkinter.Toplevel.deiconify` - La fenêtre reprend une taille normale. - * - :meth:`tkinter.Toplevel.geometry` (s) + * - :epkg:`tkinter.Toplevel.geometry` (s) - Modifie la taille de la fenêtre. ``s`` est une chaîne de caractères de type ``"w x h ± x ± y"``. ``w`` et ``h`` sont la largeur et la hauteur. ``x`` et ``y`` sont la position du coin supérieur haut à l'écran. - * - :meth:`tkinter.Toplevel.iconify` + * - :epkg:`tkinter.Toplevel.iconify` - La fenêtre se réduit à un icône. - * - :meth:`tkinter.Toplevel.resizable` (w, h) + * - :epkg:`tkinter.Toplevel.resizable` (w, h) - Spécifie si la fenêtre peut changer de taille. ``w`` et ``h`` sont des booléens. - * - :meth:`tkinter.Toplevel.title` (s) + * - :epkg:`tkinter.Toplevel.title` (s) - Change le titre de la fenêtre, ``s`` est une chaîne de caractères. - * - :meth:`tkinter.Toplevel.withdraw` + * - :epkg:`tkinter.Toplevel.withdraw` - Fait disparaître la fenêtre. La fonction inverse est - :meth:`tkinter.Toplevel.deiconify`. + :epkg:`tkinter.Toplevel.deiconify`. D'autres fenêtres et contrôles ------------------------------ @@ -1539,15 +1539,15 @@ Deux extensions complètent cette liste :mod:`tkinter.ttk` et :mod:`tkinter.tix`. On trouve notamment : -* :class:`tkinter.ttk.Combobox` -* :class:`tkinter.ttk.Notebook` -* :class:`tkinter.ttk.Progressbar` -* :class:`tkinter.ttk.Treeview` +* :epkg:`tkinter.ttk.Combobox` +* :epkg:`tkinter.ttk.Notebook` +* :epkg:`tkinter.ttk.Progressbar` +* :epkg:`tkinter.ttk.Treeview` :mod:`tkinter.tix` propose des widgets un peu plus complexes : -* :class:`tkinter.tix.DirTree` -* :class:`tkinter.tix.FileSelectBox` +* :epkg:`tkinter.tix.DirTree` +* :epkg:`tkinter.tix.FileSelectBox` Cette liste n'est pas exhaustive. @@ -1556,7 +1556,7 @@ Créer une seconde boîte de dialogues Lorsqu'un programme doit utiliser plusieurs fenêtres et non pas une seule, l'emploi de l'objet -:class:`tkinter.Toplevel` +:epkg:`tkinter.Toplevel` est inévitable. L'instruction ``root = tkinter.Tk()`` crée la fenêtre principale, l'instruction ``win = tkinter.Toplevel()`` crée une seconde fenêtre qui fonctionne exactement comme la fenêtre @@ -1572,16 +1572,16 @@ messages via la méthode ``mainloop``. Un cas d'utilisation simple est par exemple un bouton pressé qui fait apparaître une fenêtre permettant de sélectionner un fichier, cette seconde fenêtre sera un objet -:class:`tkinter.Toplevel`. +:epkg:`tkinter.Toplevel`. Il n'est pas nécessaire de s'étendre plus sur cet objet, son comportement est identique à celui de la fenêtre principale, les fonctions décrites au paragraphe :ref:`fonction_predefeinies_toot` s'appliquent également -aux objets :class:`tkinter.Toplevel`. +aux objets :epkg:`tkinter.Toplevel`. Il reste néanmoins à préciser un dernier point. Tous les objets précédemment décrits au paragraphe :ref:`interface_graphique_objet_s` doivent inclure un paramètre supplémentaire dans leur constructeur pour signifier qu'ils appartiennent à un objet -:class:`tkinter.Toplevel` +:epkg:`tkinter.Toplevel` et non à la fenêtre principale. Par exemple, pour créer une zone de texte, la syntaxe est la suivante : @@ -1590,7 +1590,7 @@ une zone de texte, la syntaxe est la suivante : # zone_texte appartient à la fenêtre principale zone_texte = tkinter.Label (text = "premier texte") -Pour l'inclure à une fenêtre :class:`tkinter.Toplevel`, +Pour l'inclure à une fenêtre :epkg:`tkinter.Toplevel`, cette syntaxe devient : :: @@ -1601,20 +1601,20 @@ cette syntaxe devient : Lors de la définition de chaque objet ou *widget*, si le premier paramètre est de type -:class:`tkinter.Toplevel`, +:epkg:`tkinter.Toplevel`, alors ce paramètre sera affecté à la fenêtre passée en premier argument et non à la fenêtre principale. Ce principe est le même que celui de la sous-fenêtre -:class:`tkinter.Frame` +:epkg:`tkinter.Frame` (voir paragraphe :ref:`interf_fraph_sous_gene`). La seule différence provient du fait que l'objet -:class:`tkinter.Toplevel` +:epkg:`tkinter.Toplevel` est une fenêtre autonome qui peut attendre un message grâce à la méthode ``mainloop``, ce n'est pas le cas de l'objet -:class:`tkinter.Frame`. +:epkg:`tkinter.Frame`. Toutefois, il est possible d'afficher plusieurs fenêtres -:class:`tkinter.Toplevel` simultanément. +:epkg:`tkinter.Toplevel` simultanément. Le programme suivant en est un exemple : :: @@ -1669,20 +1669,19 @@ affiche une fenêtre qui permet de sélectionner un fichier. import os class FileSelection(object) : - """classe permettant de sélectionner un fichier - ou un répertoire à travers une boîte de dialogue""" - - def __init__(self, parent, titre = "Sélection de fichier", \ - chemin = None, file = True, exist= True) : - """ - initialise la classe - - @param parent parent - @param titre titre de la fenêtre - @param chemin fichier ou répertoire par défaut - @param file True : fichier, False : répertoire - @param exist True : le répertoire ou le fichier - sélectionné doit exister""" + """ + Classe permettant de sélectionner un fichier + ou un répertoire à travers une boîte de dialogue. + + :param parent: parent + :param titre: titre de la fenêtre + :param chemin: fichier ou répertoire par défaut + :param file: True, fichier, False, répertoire + :param exist: True, le répertoire ou le fichier sélectionné doit exister + """ + + def __init__(self, parent, titre="Sélection de fichier", + chemin=None, file=True, exist=True) : self.parent = parent self.titre = titre self.chemin = chemin @@ -1890,7 +1889,7 @@ Compte à rebours Il est possible de demander à un objet d'appeler une fonction après un certains laps de temps exprimé un millisecondes. Le programme suivant crée un objet de type -:class:`tkinter.Label`. +:epkg:`tkinter.Label`. Il contient une fonction qui change son contenu et lui affecte un compte à rebours qui impose à l'objet de rappeler cette fonction 1000 millisecondes plus tard. Le résultat est un programme qui crée @@ -1924,7 +1923,7 @@ L'intitulé de l'objet ``Label`` change toutes les secondes. La méthode `tkinter.Label.after` retourne un entier permettant d'identifier le compte à rebours qu'il est possible d'interrompre en utilisant la méthode -:meth:`tkinter.Label.after_cancel` +:epkg:`tkinter.Label.after_cancel` Dans l'exemple précédent, il faudrait utiliser l'instruction suivante : @@ -1941,14 +1940,14 @@ On peut personnifier un contrôle. Par exemple, on peut mettre en évidence l'intitulé d'une liste sous le curseur de la souris. Le moyen le plus simple est de créer une nouvelle classe qui se substituera au classique -:class:`tkinter.ListBox`. +:epkg:`tkinter.ListBox`. Il suffit que cette nouvelle classe hérite de -:class:`tkinter.ListBox` +:epkg:`tkinter.ListBox` en prenant soin de lui donner un constructeur reprenant les mêmes paramètres que celui de la classe -:class:`tkinter.ListBox`. +:epkg:`tkinter.ListBox`. De cette façon, il suffit de remplacer -:class:`tkinter.ListBox` +:epkg:`tkinter.ListBox` par ``MaListbox`` pour changer l'apparence d'une liste. :: @@ -2045,8 +2044,8 @@ Ce programme crée trois boutons et attache à chacun d'entre eux une méthode de la classe ``MaFenetre``. Le constructeur de la classe prend comme unique paramètre un pointeur sur un objet qui peut être la fenêtre principale, un objet de type -:class:`tkinter.Frame` ou -:class:`tkinter.Toplevel`. +:epkg:`tkinter.Frame` ou +:epkg:`tkinter.Toplevel`. Cette construction permet de considérer cet ensemble de trois boutons comme un objet à part entière ; de ce fait il peut être inséré plusieurs fois comme le montre l'exemple suivant illustré par la figure qui suit. @@ -2168,7 +2167,7 @@ Le programme suivant utilise ce concept. La pression d'un bouton appelle une fonction ``event_generate`` qui génère un message personnalisé ``<>`` avec comme paramètre ``rooty=-5``. A son tour, celui-ci est attrapé et dirigé vers la fonction ``perso`` qui affiche l'attribut -``y_root`` de la classe :class:`tkinter.Event` +``y_root`` de la classe :epkg:`tkinter.Event` qui a reçu la valeur \codes{-5} lors de l'appel de la fonction ``event_generate``. Ce procédé ne permet toutefois que de renvoyer que quelques résultats entiers. diff --git a/_doc/c_lang/collections.rst b/_doc/c_lang/collections.rst index 3bf6c3cb..27f3d844 100644 --- a/_doc/c_lang/collections.rst +++ b/_doc/c_lang/collections.rst @@ -89,7 +89,7 @@ le rend plus lisible. Counter ======= -:class:`collection.Counter` est un dictionnaire spécifique dans les valeurs +:class:`collections.Counter` est un dictionnaire spécifique dans les valeurs sont entières. Il est très pratique pour compter les éléments. L'exemple :ref:`comptage ` s'écrit en une ligne. @@ -105,7 +105,7 @@ L'exemple :ref:`comptage ` s'écrit en une ligne. deque ===== -:class:`collection.deque` est une liste qui supporte l'insertion +:class:`collections.deque` est une liste qui supporte l'insertion d'éléments en bout de liste et au début également (`liste chaînée `_). diff --git a/_doc/c_lang/syntaxe.rst b/_doc/c_lang/syntaxe.rst index 1d582d54..ec1b937d 100644 --- a/_doc/c_lang/syntaxe.rst +++ b/_doc/c_lang/syntaxe.rst @@ -138,7 +138,7 @@ Définition et syntaxe .. mathdef:: :title: test :tag: Définition - :lid: test_test + :label: test_test Les tests permettent d'exécuter des instructions différentes selon la valeur d'une condition logique. @@ -617,7 +617,7 @@ qui réduit l'exemple suivant en trois lignes: La boucle la plus répandue est celle qui parcourt des indices entiers compris entre *0* et *n-1*. On utilise pour cela la boucle ``for`` et la fonction -:func:`range` comme dans l'exemple qui suit. +:epkg:`range` comme dans l'exemple qui suit. .. runpython:: :showcode: @@ -1053,7 +1053,7 @@ elles ont un identificateur et une valeur qui est dans ce cas un morceau de code. Cette précision explique certaines syntaxes du chapitre :ref:`chap_interface` sur les interfaces graphiques ou celle introduite en fin de chapitre au -paragraphe :ref:`paragraphe_fonction_variable`. +paragraphe :ref:`fonction comme paramètre `. .. _par_fonction_syntaxe: @@ -1151,8 +1151,7 @@ les résultats de la première pour tout couple de valeurs def affichage (x,y): r, t = coordonnees_polaires(x, y) - print("cartésien (%f,%f) --> polaire (%f,%f degrés)" \ - % (x,y,r,math.degrees(t))) + print("cartésien (%f,%f) --> polaire (%f,%f degrés)" % (x,y,r,math.degrees(t))) affichage(1,1) affichage(0.5,1) @@ -1738,8 +1737,8 @@ L'appel à cette fonction suit quant à lui la syntaxe suivante : :: - fonction (valeur_1, ..., valeur_n, \ - liste_valeur_1, ..., liste_valeur_p, \ + fonction (valeur_1, ..., valeur_n, + liste_valeur_1, ..., liste_valeur_p, nom_1 = v_1, ..., nom_q = v_q) Où ``fonction`` est un nom de fonction, ``valeur_1`` à @@ -1908,7 +1907,7 @@ l'ensemble des entiers compris entre 0 et *n* exclu # fonction fonction_yield, elle simule la liste # [0,1,2] -Le programme affiche tous les entiers compris entre~0 et 4 inclus ainsi que le +Le programme affiche tous les entiers compris entre 0 et 4 inclus ainsi que le texte ``"yield 1"`` ou ``"yield 2"`` selon l'instruction ``yield`` qui a retourné le résultat. Lorsque la fonction a finalement terminé son exécution, le prochain appel agit comme si c'était la première @@ -2019,6 +2018,8 @@ un exemple d'utilisation de la fonction ``compile`` avec la fonction ``eval``. .. _par_indentation: +.. _fonction_sorted_enumerate: + Indentation =========== @@ -2113,8 +2114,6 @@ pour obtenir l'équivalent de la fonction .. index:: sorted -.. _fonction_sorted_enumerate: - Comme pour les dictionnaires, la fonction `sorted `_ permet de parcourir les éléments d'une liste de façon ordonnée. @@ -2136,9 +2135,8 @@ la liste ``li`` demeure inchangée alors qu'elle est triée dans le premier prog .. index:: enumerate -La fonction `enumerate `_ -permet d'éviter l'emploi de la fonction -`range `_ +La fonction :func:`enumerate` +permet d'éviter l'emploi de la fonction :epkg:`range` lorsqu'on souhaite parcourir une liste alors que l'indice et l'élément sont nécessaires. .. runpython:: diff --git a/_doc/c_lang/types.rst b/_doc/c_lang/types.rst index a43c8356..2ec2e25f 100644 --- a/_doc/c_lang/types.rst +++ b/_doc/c_lang/types.rst @@ -96,9 +96,9 @@ du programme mais n'en faisant pas partie comme dans l'exemple qui suit. .. index:: backslash, \ -Le *python* impose une instruction par ligne. Il n'est pas possible d'utiliser -deux lignes pour écrire une affectation à moins de conclure chaque ligne qui -n'est pas la dernière par le symbole ``\`` +Le *python* privilégie une instruction par ligne mais il n'est pas possible d'utiliser +plusieurs lorsqu'il n'y a aucune ambiguïté. +Dans le cas contraire, le symbole ``\`` permet d'indiquer que la ligne n'est pas finie. L'exemple suivant est impossible. :: @@ -113,6 +113,13 @@ Il devrait être rédigé comme suit : x = \ 5.5 +Mais les parenthèses sont à privilégier : + +:: + + x = ( + 5.5) + Avec ce symbole, les longues instructions peuvent être écrites sur plusieurs lignes de manière plus lisibles, de sorte qu'elles apparaissent en entier à l'écran. Si le dernier caractère est une virgule, il est implicite. @@ -395,7 +402,7 @@ Ces deux opérateurs seront utilisés ultérieurement, (paragraphe :ref:`boucle_for`), ``is`` lors de l'étude des listes (paragraphe :ref:`par_liste_copie` et des :ref:`classes `). Bien souvent, les booléens sont utilisés de manière implicite lors -de tests (paragraphe :ref:`test_test`) ce qui n'empêche pas de les +de tests (paragraphe :ref:`test `) ce qui n'empêche pas de les déclarer explicitement. :: @@ -458,15 +465,13 @@ lorsque le texte contient plusieurs lignes, il suffit de les encadrer entre deux symboles ``"""`` ou ``'''`` pour que l'interpréteur *python* considère l'ensemble comme une chaîne de caractères et non comme une série d'instructions. -.. _extra_caractere: - Par défaut, le *python* ne permet pas l'insertion de caractères tels que les accents dans les chaînes de caractères, le paragraphe :ref:`par_intro_accent_code` explique comment résoudre ce problème. De même, pour insérer un guillemet dans une chaîne de caractères encadrée elle-même par des guillemets, il faut le faire précéder du symbole ``\``. La séquence ``\`` est appelée un extra-caractère -(voir table :ref:`extra_caractere`) ou un caractère d'échappement. +(voir table suivante) ou un caractère d'échappement. .. index:: \n, \\, \%, \t, \r, extra caractère @@ -577,9 +582,7 @@ Où ``s`` est une chaîne de caractères, ``fonction`` est le nom de l'opération que l'on veut appliquer à ``s``, ``res`` est le résultat de cette manipulation. -.. _string_method: - -La table :ref:`string_method` présente une liste non exhaustive +La table suivante présente une liste non exhaustive des fonctions disponibles dont un exemple d'utilisation suit. Cette syntaxe ``variable.fonction(arguments)`` est celle des classes. @@ -680,7 +683,7 @@ de décimales fixe. Le format est le suivant : ".... %c1 .... %c2 " % (v1,v2) ``c1`` est un code choisi parmi ceux de la table -:ref:`format_print`. Il indique le format dans lequel la variable +:ref:`format print `. Il indique le format dans lequel la variable ``v1`` devra être transcrite. Il en est de même pour le code ``c2`` associé à la variable ``v2``. Les codes insérés dans la chaîne de caractères seront remplacés par les variables citées entre @@ -696,8 +699,8 @@ Voici concrètement l'utilisation de cette syntaxe : x = 5.5 d = 7 s = "caractères" - res = "un nombre réel %f et un entier %d, une chaîne de %s, \n" \ - "un réel d'abord converti en chaîne de caractères %s" % (x,d,s, str(x+4)) + res = ("un nombre réel %f et un entier %d, une chaîne de %s, \n" + "un réel d'abord converti en chaîne de caractères %s" % (x,d,s, str(x+4))) print(res) res = "un nombre réel " + str (x) + " et un entier " + str (d) + \ ", une chaîne de " + s + \ @@ -729,7 +732,7 @@ Exemple : .. _format_string: -Il existe d'autres formats regroupés dans la table :ref:`format_print`. +Il existe d'autres formats regroupés dans la table suivante. L'aide reste encore le meilleur réflexe car le langage *python* est susceptible d'évoluer et d'ajouter de nouveaux formats. @@ -984,7 +987,8 @@ que ceux présentés au paragraphe :ref:`type_nombre` et décrivant les nombres. c = complex(1,1) print(c*c) -Le langage *python* offre la possibilité de créer ses propres types immuables (voir :ref:`classe_slots_att`) +Le langage *python* offre la possibilité de créer ses propres types immuables +(voir :ref:`__slots__ `) mais ils seront définis à partir des types immuables présentés jusqu'ici. .. _l-type-bytes: @@ -1298,8 +1302,7 @@ Fonction range .. index:: range Les listes sont souvent utilisées dans des boucles ou notamment -par l'intermédiaire de la fonction -`range `_. +par l'intermédiaire de la fonction :epkg:`range`. Cette fonction retourne un `itérateur `_ sur des entiers. Nous verrons les itérateurs plus tard. Disons pour le moment les itérateurs ont l'apparence d'un ensembe mais ce n'en est pas un. @@ -1364,7 +1367,7 @@ L'instruction ``for el in x :`` se traduit littéralement par : Il existe également des notations abrégées lorsqu'on cherche à construire une liste à partir d'une autre. Le programme suivant construit la liste des -entiers de 1 à 5 à partir du résultat retourné par la fonction ``range``. +entiers de 1 à 5 à partir du résultat retourné par la fonction :epkg:`range`. .. runpython:: :showcode: @@ -1390,7 +1393,7 @@ Cette définition de liste peut également inclure des tests ou des boucles imbr y = [ i for i in range(0,5) if i % 2 == 0] # sélection les éléments pairs print(y) # affiche [0,2,4] - z = [ i+j for i in range(0,5) \ + z = [ i+j for i in range(0,5) for j in range(0,5)] # construit tous les nombres i+j possibles print(z) @@ -1442,6 +1445,8 @@ dans une liste puis de les concaténer en une seule fois grâce à la méthode .. _par_liste_copie: +.. _copy_deepopy_remarque: + Copie +++++ @@ -1518,8 +1523,6 @@ ou si l'une est une copie de l'autre comme le montre l'exemple suivant : **Fonction ``copy`` et ``deepcopy``** -.. _copy_deepopy_remarque_: - Le comportement de la fonction :func:`copy.copy` peut surprendre dans le cas où une liste contient d'autres listes. Pour être sûr que chaque élément d'une liste a été correctement recopiée, @@ -1692,7 +1695,7 @@ les boucles (voir chapitre :ref:`chap_boucle`). .. runpython:: :showcode: - d = { "un":1, "zéro":0, "deux":2, "trois":3, "quatre":4, "cinq":5, \ + d = { "un":1, "zéro":0, "deux":2, "trois":3, "quatre":4, "cinq":5, "six":6, "sept":1, "huit":8, "neuf":9, "dix":10 } key = list(d.keys()) key.sort() @@ -1706,7 +1709,7 @@ seront les clés et réciproquement. .. runpython:: :showcode: - d = { "un":1, "zero":0, "deux":2, "trois":3, "quatre":4, "cinq":5, \ + d = { "un":1, "zero":0, "deux":2, "trois":3, "quatre":4, "cinq":5, "six":6, "sept":1, "huit":8, "neuf":9, "dix":10 } dinv = { } # création d'un dictionnaire vide, on parcout @@ -1724,7 +1727,7 @@ sans créer de liste intermédiaire. Ceci explique ce qu'affiche le programme su .. runpython:: :showcode: - d = { "un":1, "zero":0, "deux":2, "trois":3, "quatre":4, "cinq":5, \ + d = { "un":1, "zero":0, "deux":2, "trois":3, "quatre":4, "cinq":5, "six":6, "sept":1, "huit":8, "neuf":9, "dix":10 } print(d.items()) print(list(d.items())) @@ -2036,7 +2039,7 @@ l'environnement dans lequel est exécuté le programme *python* : - Ce module contient tous les éléments présents dès le début d'un programme *python*, il contient entre autres les types présentés dans ce - chapitre et des fonctions simples comme ``range``. + chapitre et des fonctions simples comme :epkg:`range`. * - ``__doc__`` - C'est une chaîne commentant le fichier, c'est une chaîne de caractères insérée aux premières lignes diff --git a/_doc/c_module/files.rst b/_doc/c_module/files.rst index a73b1bde..f49239a7 100644 --- a/_doc/c_module/files.rst +++ b/_doc/c_module/files.rst @@ -453,7 +453,7 @@ proche de celui d'un spammeur. content = f.read() part.set_payload(content) encoders.encode_base64(part) - part.add_header('Content-Disposition', \ + part.add_header('Content-Disposition', 'attachment; filename="%s"' % os.path.basename(file)) msg.attach(part) diff --git a/_doc/c_module/module.rst b/_doc/c_module/module.rst index f76de6b6..eaf74565 100644 --- a/_doc/c_module/module.rst +++ b/_doc/c_module/module.rst @@ -707,5 +707,5 @@ Ce procédé marche la plupart du temps. Il échoue lorsque le module inclut des fichiers écrits dans un autre langage. L'installation dépend alors du système d'exploitation. Il est plus simple dans le cas d'installation des modules -précmopilés. Sous Windows, beaucoup sont accessibles sur cette page : -`Unofficial Windows Binaries for Python Extension Packages `_. +précompilés. La plupart sont disponibles sous cette forme +sur :epkg:`PyPi`, le site de publication des packages python. diff --git a/_doc/c_module/serialization.rst b/_doc/c_module/serialization.rst index 90e8d205..79b186d8 100644 --- a/_doc/c_module/serialization.rst +++ b/_doc/c_module/serialization.rst @@ -104,8 +104,8 @@ La conversion inverse s'effectue comme suit. from json import load from io import StringIO - seq = '{"records": [{"nom": "Xavier", "pr\\u00e9nom": "Xavier", ' + \ - '"langages": [{"nom": "C++", "age": 40}, {"nom": "Python", "age": 20}]}]}' + seq = ('{"records": [{"nom": "Xavier", "pr\\u00e9nom": "Xavier", ' + + '"langages": [{"nom": "C++", "age": 40}, {"nom": "Python", "age": 20}]}]}') buffer = StringIO(seq) read = load(buffer) @@ -335,4 +335,4 @@ où cela est néanmoins possible sans trop de développement. .. toctree:: :maxdepth: 1 - ../auto_examples/serialisation_examples + ../auto_examples/plot_serialisation_examples diff --git a/_doc/c_resume/python_sheet.rst b/_doc/c_resume/python_sheet.rst index 58f5dc0a..c7e62952 100644 --- a/_doc/c_resume/python_sheet.rst +++ b/_doc/c_resume/python_sheet.rst @@ -935,8 +935,8 @@ le langage python, ils commencent et terminent par ``__``. self.att4 = att1 * att2 * att3 def __add__ (self, a) : - return ma_classe (self.att1 + a.att1, self.att2 + a.att2, \ - self.att3 + a.att3, self.att4 + a.att4) + return ma_classe (self.att1 + a.att1, self.att2 + a.att2, + self.att3 + a.att3, self.att4 + a.att4) a = ma_classe (1,2,3) b = ma_classe (4,5,6) @@ -1391,8 +1391,10 @@ L'exemple suivant regroupe tous ces cas. self.f = f def __str__(self) : - return """exception AucunChiffre, lancée depuis la fonction """ + self.f + \ - " avec le paramètre " + self.s + return ( + f"exception AucunChiffre, lancée depuis la fonction {self.f} " + f"avec le paramètre {self.s}" + ) def conversion (s) : """conversion d'une chaîne de caractères en entier""" @@ -1430,7 +1432,7 @@ pour accéder à un caractère, on procède comme pour une liste. Guillemets ou pas ^^^^^^^^^^^^^^^^^ -Doit-on mettre des guillemets ou non~? +Doit-on mettre des guillemets ou non ? :: @@ -1462,7 +1464,7 @@ Boucles Les deux programmes suivant sont équivalents. La seule différence réside dans l'écriture dans la boucle ``for`` -qui utilise dans le premier cas la fonction ``range`` et dans l'autre non. +qui utilise dans le premier cas la fonction :epkg:`range` et dans l'autre non. :: @@ -1471,7 +1473,7 @@ qui utilise dans le premier cas la fonction ``range`` et dans l'autre non. for i in range (0, len(l)) : up.append ( l [i].upper() ) -Lorsqu'on utilise la fonction ``range``, on dispose lors +Lorsqu'on utilise la fonction :epkg:`range`, on dispose lors de la boucle de deux informations, l'indice ``i`` et l'élément ``l [i]``. Si l'indice n'est pas utile, il est possible de simplifier la boucle comme suit. @@ -1482,7 +1484,7 @@ Si l'indice n'est pas utile, il est possible de simplifier la boucle comme suit. for m in l : up.append ( m.upper() ) -En général, on se sert de la boucle qui utilise la fonction ``range`` dans deux cas : +En général, on se sert de la boucle qui utilise la fonction :epkg:`range` dans deux cas : #. On souhaite faire des opérations sur les éléments qui précèdent ou suivent l'élément en question, ce qui nécessite de connaître l'indice. diff --git a/_doc/conf.py b/_doc/conf.py index 35f52118..fd0d6837 100644 --- a/_doc/conf.py +++ b/_doc/conf.py @@ -171,7 +171,8 @@ "ACP": "https://fr.wikipedia.org/wiki/Analyse_en_composantes_principales", "AESA": "https://tavianator.com/aesa/", "algorithme": "https://fr.wikipedia.org/wiki/Algorithme", - "algortihmes de tri": "https://fr.wikipedia.org/wiki/Algorithme_de_tri", + "algorithmes de tri": "https://fr.wikipedia.org/wiki/Algorithme_de_tri", + "algorithmes numériques": "https://fr.wikipedia.org/wiki/Numerical_Recipes", "API REST": "https://fr.wikipedia.org/wiki/Representational_state_transfer", "Anaconda": "https://continuum.io/downloads", "ApproximateNMFPredictor": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/mlinsights/mlmodel/anmf_predictor.html", @@ -244,6 +245,7 @@ "QuantileLinearRegression": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/mlinsights/mlmodel/quantile_regression.html#mlinsights.mlmodel.quantile_regression.QuantileLinearRegression", "R-tree": "https://en.wikipedia.org/wiki/R-tree", "R* tree": "https://en.wikipedia.org/wiki/R*_tree", + "range": "https://docs.python.org/3/library/functions.html?highlight=map#func-range", "Regression with confidence interval": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/regression_confidence_interval.html", "relu": "https://en.wikipedia.org/wiki/Rectifier_(neural_networks)", "ROC": "https://fr.wikipedia.org/wiki/Courbe_ROC", @@ -259,6 +261,7 @@ "threads": "https://fr.wikipedia.org/wiki/Thread_(informatique)", "tkinter": "https://docs.python.org/3/library/tk.html", "tqdm": "https://tqdm.github.io/", + "ultrajson": "https://github.com/ultrajson/ultrajson", "ujson": "https://github.com/ultrajson/ultrajson", "Visual Studio Code": "https://code.visualstudio.com/", "Visualize a scikit-learn pipeline": "http://www.xavierdupre.fr/app/mlinsights/helpsphinx/notebooks/visualize_pipeline.html", @@ -268,5 +271,75 @@ "wxPython": "https://wxpython.org/", } +epkg_dictionary.update( + { + "tkinter.Button": "https://tkdocs.com/tutorial/button.html", + "tkinter.Button.config": "https://tkdocs.com/tutorial/button.html", + "tkinter.Canvas": "https://tkdocs.com/tutorial/canvas.html", + "tkinter.Canvas.create_line": "https://tkdocs.com/tutorial/canvas.html", + "tkinter.Canvas.create_rectangle": "https://tkdocs.com/tutorial/canvas.html", + "tkinter.Canvas.create_text": "https://tkdocs.com/tutorial/canvas.html", + "tkinter.CheckButton": "https://tkdocs.com/tutorial/widgets.html#checkbutton", + "tkinter.CheckButton.config": "https://tkdocs.com/tutorial/widgets.html#checkbutton", + "tkinter.Entry": "https://tkdocs.com/pyref/entry.html", + "tkinter.Entry.delete": "https://tkdocs.com/pyref/entry.html", + "tkinter.Entry.config": "https://tkdocs.com/pyref/entry.html", + "tkinter.Entry.get": "https://tkdocs.com/pyref/entry.html", + "tkinter.Entry.insert": "https://tkdocs.com/pyref/entry.html", + "tkinter.Event": "https://tkdocs.com/tutorial/eventloop.html", + "tkinter.Frame": "https://tkdocs.com/tutorial/widgets.html#frame", + "tkinter.IntVar": "https://tkdocs.com/pyref/intvar.html", + "tkinter.Label": "https://tkdocs.com/tutorial/widgets.html#label", + "tkinter.Label.after_cancel": "https://tkdocs.com/tutorial/widgets.html#label", + "tkinter.ListBox": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.ListBox.config": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.ListBox.curselection": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.ListBox.delete": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.ListBox.get": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.ListBox.insert": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.ListBox.itemconfig": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.ListBox.select_all": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.ListBox.select_clear": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.ListBox.select_get": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.ListBox.select_set": "https://tkdocs.com/tutorial/widgets.html#listbox", + "tkinter.Menu": "https://tkdocs.com/tutorial/widgets.html#menu", + "tkinter.Menu.add_command": "https://tkdocs.com/tutorial/widgets.html#menu", + "tkinter.Menu.add_cascade": "https://tkdocs.com/tutorial/widgets.html#menu", + "tkinter.Menu.delete": "https://tkdocs.com/tutorial/widgets.html#menu", + "tkinter.RadioButton": "https://tkdocs.com/tutorial/widgets.html#radiobutton", + "tkinter.Text": "https://tkdocs.com/tutorial/text.html", + "tkinter.Text.config": "https://tkdocs.com/tutorial/text.html", + "tkinter.Text.delete": "https://tkdocs.com/tutorial/text.html", + "tkinter.Text.get": "https://tkdocs.com/tutorial/text.html", + "tkinter.Text.insert": "https://tkdocs.com/tutorial/text.html", + "tkinter.Toplevel": "https://tkdocs.com/pyref/toplevel.html", + "tkinter.Toplevel.deiconify": "https://tkdocs.com/pyref/toplevel.html", + "tkinter.Toplevel.destroy": "https://tkdocs.com/pyref/toplevel.html", + "tkinter.Toplevel.geometry": "https://tkdocs.com/pyref/toplevel.html", + "tkinter.Toplevel.iconify": "https://tkdocs.com/pyref/toplevel.html", + "tkinter.Toplevel.resizable": "https://tkdocs.com/pyref/toplevel.html", + "tkinter.Toplevel.title": "https://tkdocs.com/pyref/toplevel.html", + "tkinter.Toplevel.withdraw": "https://tkdocs.com/pyref/toplevel.html", + "tkinter.tix.DirTree": "https://pythonbasics.org/tkinter-filedialog/", + "tkinter.tix.FileSelectBox": "https://pythonbasics.org/tkinter-filedialog/", + "tkinter.ttk.Combobox": "https://tkdocs.com/pyref/ttk_combobox.html", + "tkinter.ttk.Notebook": "https://tkdocs.com/pyref/ttk_notebook.html", + "tkinter.ttk.Progressbar": "https://tkdocs.com/pyref/ttk_progressbar.html", + "tkinter.ttk.Treeview": "https://tkdocs.com/pyref/ttk_treeview.html", + "tkinter.Widget.bind": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.bind_all": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.focus": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.focus_set": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.grid": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.grid_forget": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.pack": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.pack_forget": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.place": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.place_forget": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.unbind": "https://tkdocs.com/tutorial/index.html", + "tkinter.Widget.unbind_all": "https://tkdocs.com/tutorial/index.html", + } +) + imgmath_latex_preamble = preamble latex_elements["preamble"] = imgmath_latex_preamble diff --git a/_doc/examples/plot_gil_example.py b/_doc/examples/plot_gil_example.py index b50b9c7b..935cf4c6 100644 --- a/_doc/examples/plot_gil_example.py +++ b/_doc/examples/plot_gil_example.py @@ -1,5 +1,8 @@ # coding: utf-8 """ + +.. _gilexamplerst: + ====== Le GIL ====== diff --git a/_doc/examples/plot_hypercube.py b/_doc/examples/plot_hypercube.py index 73762548..c1c06fb0 100644 --- a/_doc/examples/plot_hypercube.py +++ b/_doc/examples/plot_hypercube.py @@ -1,5 +1,8 @@ # coding: utf-8 """ + +.. _hypercuberst: + ============================= Hypercube et autres exercices ============================= diff --git a/_doc/examples/plot_partie_dame.py b/_doc/examples/plot_partie_dame.py index bec48d78..aca73568 100644 --- a/_doc/examples/plot_partie_dame.py +++ b/_doc/examples/plot_partie_dame.py @@ -1,5 +1,8 @@ # coding: utf-8 """ + +.. _partiedamerst: + ================ Parties de dames ================ diff --git a/_doc/examples/plot_tarabiscote.py b/_doc/examples/plot_tarabiscote.py index e66191eb..f7bce5dc 100644 --- a/_doc/examples/plot_tarabiscote.py +++ b/_doc/examples/plot_tarabiscote.py @@ -1,5 +1,8 @@ # coding: utf-8 """ + +.. _tarabiscoterst: + ==================================== Exercices expliqués de programmation ==================================== diff --git a/_doc/glossary.rst b/_doc/glossary.rst deleted file mode 100644 index 0ec5a94e..00000000 --- a/_doc/glossary.rst +++ /dev/null @@ -1,29 +0,0 @@ - -.. index:: glossary - -======== -Glossary -======== - -.. glossary::>`_ - - cheatsheet - - Quelque chose comme pense-bête en français, - terme clé qui permet de retrouver des pages assez courtes qui - résume tout ce qu'il faut savoir sur un sujet précis comme - `Python 3 Cheat Sheet `_, - `Python For Data Science - A Cheat Sheet For Beginners `_. - La dernière est complète sur de nombreux sujets : - `Beginner's Python Cheat Sheet `_. - - format - - Le formatage de données est utilisé dès qu'une information est - affichée à l'écran, le plus souvent pour débugger ou pour logger. - - ml - Raccourci pour `Machine Learning `_. - - NLP - Raccourci pour `Natural Language Processing `_. diff --git a/_doc/index.rst b/_doc/index.rst index ab555a2a..1659002a 100644 --- a/_doc/index.rst +++ b/_doc/index.rst @@ -30,8 +30,9 @@ Il est aussi disponible en c_parallelisation/index c_gui/index c_data/index - i_examples c_resume/index + i_ex + i_faq auto_examples/index defthe_index license @@ -43,6 +44,7 @@ n'ont pas été spécifiquement conçus. Le site `Xavier Dupré `_ contient beaucoup d'exemples sur beaucoup de sujets, souvent reliés au machine learning. +Le contenu est sur `github `_. .. only:: html @@ -75,16 +77,3 @@ souvent reliés au machine learning. :target: https://github.com/sdpython/teachpyx/ :alt: size -+----------------------+---------------------+---------------------+--------------------+------------------------+------------------------------------------------+ -| :ref:`l-modules` | :ref:`l-functions` | :ref:`l-classes` | :ref:`l-methods` | :ref:`l-staticmethods` | :ref:`l-properties` | -+----------------------+---------------------+---------------------+--------------------+------------------------+------------------------------------------------+ -| :ref:`modindex` | :ref:`l-EX2` | :ref:`search` | :ref:`l-license` | :ref:`l-changes` | :ref:`l-README` | -+----------------------+---------------------+---------------------+--------------------+------------------------+------------------------------------------------+ -| :ref:`genindex` | :ref:`l-FAQ2` | :ref:`l-notebooks` | | :ref:`l-statcode` | `Unit Test Coverage `_ | -+----------------------+---------------------+---------------------+--------------------+------------------------+------------------------------------------------+ - -**Links:** `github `_, -`documentation `_, -:ref:`l-README`, -:ref:`blog `, -:ref:`l-issues-todolist` diff --git a/_doc/introduction.rst b/_doc/introduction.rst index 4ba9ecca..750254a2 100644 --- a/_doc/introduction.rst +++ b/_doc/introduction.rst @@ -53,8 +53,7 @@ il est préférable d'essayer d'abord : conda install -Les exemples de codes sont d'ailleurs disponibles sous la forme d'un module python -et des :ref:`notebooks ` accessibles sur le site. +Des exemples de codes sont d'ailleurs disponibles sous la forme d'un module python. :: diff --git a/teachpyx/__init__.py b/teachpyx/__init__.py index fc4def5a..c7d881ba 100644 --- a/teachpyx/__init__.py +++ b/teachpyx/__init__.py @@ -5,47 +5,8 @@ Materials for a book about programming with :epkg:`Python`. """ -__version__ = "0.2.335" +__version__ = "0.3.0" __author__ = "Xavier Dupré" __github__ = "https://github.com/sdpython/teachpyx" -__url__ = "http://www.xavierdupre.fr/app/teachpyx/helpsphinx/index.html" +__url__ = "https://sdpython.github.io/doc/teachpyx/dev/" __license__ = "MIT License" -__blog__ = """ - - - - blog - - - - - -""" - - -def check(log=False): - """ - Checks the library is working. - It raises an exception. - If you want to disable the logs: - - @param log if True, display information, otherwise - @return 0 or exception - """ - return True - - -def _setup_hook(use_print=False): - """ - if this function is added to the module, - the help automation and unit tests call it first before - anything goes on as an initialization step. - """ - # we can check many things, needed module - # any others things before unit tests are started - if use_print: - print("Success: _setup_hook") diff --git a/teachpyx/examples/classiques.py b/teachpyx/examples/classiques.py index d07b9404..fbbe24b1 100644 --- a/teachpyx/examples/classiques.py +++ b/teachpyx/examples/classiques.py @@ -247,9 +247,8 @@ def str2date(s, format="%d/%m/%Y"): """ convertit une chaîne de caractères en datetime - @param s chaîne de caractères - @param format format de la conversion - + :param s: chaîne de caractères + :param format: format de la conversion .. exref:: :title: conversion d'une chaîne de caractère en datetime diff --git a/teachpyx/examples/construction_classique.py b/teachpyx/examples/construction_classique.py index b7f3a941..43fd2677 100644 --- a/teachpyx/examples/construction_classique.py +++ b/teachpyx/examples/construction_classique.py @@ -8,9 +8,9 @@ def recherche(li, c): """ Retourne l'index d'un élément ou -1 si non trouvé. - @param li liste - @param c élément à trouver - @return position + :param li: liste + :param c: élément à trouver + :return: position .. exref:: :tag: Base @@ -63,9 +63,8 @@ def minindex(li): """ Retourne l'index du minimum et le minimum. - @param li liste - @return tuple (minimum,position) - + :param li: liste + :return: tuple (minimum, position) .. exref:: :tag: Base @@ -112,9 +111,9 @@ def recherche_dichotomique(li, c): """ Effectue une recherche dichotomique. - @param li tableau - @param c élément à chercher - @return position + :param li: tableau + :param c: élément à chercher + :return: position .. exref:: :tag: Base @@ -162,10 +161,10 @@ def text2mat(s, sep_row="\n", sep_col="\t"): ( = liste de listes), réciproque de la fonction @see fn mat2text. - @param s texte à convertir - @param sep_row séparation de ligne - @param sep_col séparateur de colonnes - @return liste de liste + :param s: texte à convertir + :param sep_row: séparation de ligne + :param sep_col: séparateur de colonnes + :return: liste de liste .. exref:: :tag: Base @@ -215,10 +214,10 @@ def mat2text(mat, sep_row="\n", sep_col="\t"): Convertit une matrice en une chaîne de caractères, réciproque de la fonction @see fn text2mat. - @param mat matrice à convertir (liste de listes) - @param sep_row séparation de ligne - @param sep_col séparateur de colonnes - @return liste de liste + :param mat: matrice à convertir (liste de listes) + :param sep_row: séparation de ligne + :param sep_col: séparateur de colonnes + :return: liste de liste .. exref:: :tag: Base @@ -242,8 +241,8 @@ def somme(li): """ Calcule la somme des éléments d'un tableau. - @param li tableau - @return somme + :param li: tableau + :return: somme .. exref:: :tag: Base @@ -310,8 +309,8 @@ def triindex(li): """ Trie une liste, retourne la liste triée et les positions initiales. - @param li tableau - @return liste triée + :param li: tableau + :return: liste triée .. exref:: :tag: Base @@ -383,13 +382,13 @@ def compte(li): """ Compte le nombre d'occurrences de chaque élément d'une liste. - @param li tableau - @return dictionnaire + :param li: tableau + :return: dictionnaire .. exref:: :tag: Base :title: comptage - :lid: l-ex-comptage + :label: l-ex-comptage On souhaite ici compter le nombre d'occurrences de chaque élément d'un tableau. @@ -475,8 +474,8 @@ def mat2vect(mat): Convertit une matrice en un tableau à une seule dimension, réciproque de la fonction @see fn vect2mat. - @param mat matrice - @return liste + :param mat: matrice + :return: liste .. exref:: :tag: Base @@ -519,9 +518,9 @@ def vect2mat(vect, ncol): Convertit un tableau à une dimension en une matrice, réciproque de la fonction @see fn mat2vect. - @param vect vecteur - @param ncol nombre de colonnes - @return matrice + :param vect: vecteur + :param ncol: nombre de colonnes + :return: matrice .. exref:: :tag: Base @@ -555,16 +554,16 @@ def integrale(fonction, a, b, n): Calcule l'intégrale d'une fonction avec la `méthode de Rienmann `_. - @param fonction fonction - @param a borne inférieure de l'intervalle - @param b borne supérieure de l'intervalle - @param n nombre de division de l'intervalle - @return valeur + :param fonction: fonction + :param a: borne inférieure de l'intervalle + :param b: borne supérieure de l'intervalle + :param n: nombre de division de l'intervalle + :return: valeur .. exref:: :tag: Base :title: fonction comme paramètre - :lid: paragraphe_fonction_variable + :label: paragraphe_fonction_variable Une fonction peut aussi recevoir en paramètre une autre fonction. L'exemple suivant inclut la fonction ``calcul_n_valeur`` @@ -605,7 +604,7 @@ def construit_matrice_carree(n): Cette fonction construit une matrice carrée remplie de zéro sous la forme d'une liste de listes. - @param n dimension de la matrice carrée + :param n: dimension de la matrice carrée """ return [[0 for i in range(n)] for j in range(n)] @@ -614,8 +613,8 @@ def enumerate_permutations_recursive(ensemble): """ Enumère les permutations d'un ensemble de façon récursive. - @param ensemble ensemble à permuter - @return itérateur sur les permutations + :param ensemble: ensemble à permuter + :return: itérateur sur les permutations """ if len(ensemble) == 1: @@ -633,8 +632,8 @@ def enumerate_permutations(ensemble): """ Enumère les permutations d'un ensemble de façon non récursive. - @param ensemble ensemble à permuter - @return itérateur sur les permutations + :param ensemble: ensemble à permuter + :return: itérateur sur les permutations """ if len(ensemble) == 1: yield ensemble diff --git a/teachpyx/examples/numpysex.py b/teachpyx/examples/numpysex.py index 54460ac4..f4e1dc5b 100644 --- a/teachpyx/examples/numpysex.py +++ b/teachpyx/examples/numpysex.py @@ -10,8 +10,8 @@ def numpy_matrix2list(mat): """ Convertit une matrice `numpy `_ en list. - @param mat matrix - @return liste de listes + :param mat: matrix + :return: liste de listes .. exref:: :title: opérations avec numpy.matrix diff --git a/teachpyx/faq/faq_python.py b/teachpyx/faq/faq_python.py index a041cc28..bf5cb1a1 100644 --- a/teachpyx/faq/faq_python.py +++ b/teachpyx/faq/faq_python.py @@ -601,15 +601,6 @@ def information_about_package(name): simple d'installer des modules précompilés avec l'instruction :: conda install - - L'autre option est d'utilser le site - `Unofficial Windows Binaries for Python Extension Packages `_ - qui propose des versions compilées sous Windows d'un grand nombre de modules. - Il faut télécharger le fichier *.whl* puis l'installer avec l'instruction - ``pip install ``. - La différence entre les deux ooptions tient aux environnements virtuels, voir - `Python virtual environments - `_. """ from pyquickhelper.pycode.pip_helper import ( get_package_info, From b484bb23d6cf8af93c2c16b9138d7085e374d1fe Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Wed, 2 Aug 2023 09:53:40 +0200 Subject: [PATCH 23/26] intro --- _doc/index.rst | 51 +++++++++++++++++++------------------------ _doc/introduction.rst | 30 ++++++++++++++++++------- 2 files changed, 44 insertions(+), 37 deletions(-) diff --git a/_doc/index.rst b/_doc/index.rst index 1659002a..aa1c8fae 100644 --- a/_doc/index.rst +++ b/_doc/index.rst @@ -38,42 +38,35 @@ Il est aussi disponible en license CHANGELOGS -Les ordinateurs font principalement des calculs. Ils permettent -aussi d'automatiser de nombreuses tâches pour lesquelles ils -n'ont pas été spécifiquement conçus. Le site -`Xavier Dupré `_ +L'intelligence artificielle est entrée dans le quotidien. +Machine learning, deep learning, la porte d'entrée se fait +par la programmation et principalement avec le langgage python. +Le site `Xavier Dupré `_ contient beaucoup d'exemples sur beaucoup de sujets, souvent reliés au machine learning. Le contenu est sur `github `_. -.. only:: html +.. image:: https://ci.appveyor.com/api/projects/status/5jl303wl14dtesl0?svg=true + :target: https://ci.appveyor.com/project/sdpython/teachpyx + :alt: Build Status Windows - .. image:: https://travis-ci.com/sdpython/teachpyx.svg?branch=master - :target: https://app.travis-ci.com/github/sdpython/teachpyx - :alt: Build status +.. image:: https://circleci.com/gh/sdpython/teachpyx/tree/master.svg?style=svg + :target: https://circleci.com/gh/sdpython/teachpyx/tree/master - .. image:: https://ci.appveyor.com/api/projects/status/5jl303wl14dtesl0?svg=true - :target: https://ci.appveyor.com/project/sdpython/teachpyx - :alt: Build Status Windows +.. image:: https://badge.fury.io/py/teachpyx.svg + :target: https://pypi.org/project/teachpyx/ - .. image:: https://circleci.com/gh/sdpython/teachpyx/tree/master.svg?style=svg - :target: https://circleci.com/gh/sdpython/teachpyx/tree/master +.. image:: https://img.shields.io/badge/license-MIT-blue.svg + :alt: MIT License + :target: http://opensource.org/licenses/MIT - .. image:: https://badge.fury.io/py/teachpyx.svg - :target: https://pypi.org/project/teachpyx/ +.. image:: https://codecov.io/github/sdpython/teachpyx/coverage.svg?branch=master + :target: https://codecov.io/github/sdpython/teachpyx?branch=master - .. image:: https://img.shields.io/badge/license-MIT-blue.svg - :alt: MIT License - :target: http://opensource.org/licenses/MIT - - .. image:: https://codecov.io/github/sdpython/teachpyx/coverage.svg?branch=master - :target: https://codecov.io/github/sdpython/teachpyx?branch=master - - .. image:: http://img.shields.io/github/issues/sdpython/teachpyx.svg - :alt: GitHub Issues - :target: https://github.com/sdpython/teachpyx/issues - - .. image:: https://img.shields.io/github/repo-size/sdpython/teachpyx - :target: https://github.com/sdpython/teachpyx/ - :alt: size +.. image:: http://img.shields.io/github/issues/sdpython/teachpyx.svg + :alt: GitHub Issues + :target: https://github.com/sdpython/teachpyx/issues +.. image:: https://img.shields.io/github/repo-size/sdpython/teachpyx + :target: https://github.com/sdpython/teachpyx/ + :alt: size diff --git a/_doc/introduction.rst b/_doc/introduction.rst index 750254a2..ae57b8ce 100644 --- a/_doc/introduction.rst +++ b/_doc/introduction.rst @@ -4,8 +4,9 @@ Introduction ============ Ceci est une relecture du livre que j'ai écrit en 2009 -`Programmation avec le langage Python `_ -et disponible au format `PDF `_. +`Programmation avec le langage Python +`_ +écrit en 2011 avec une version de Python que plus personne n'utilise. La transcription du livre sous la forme d'un site web et d'un module python a permis d'automatiser la vérification des exemples pour assurer que ceux-ci fonctionnent encore avec les dernières @@ -16,7 +17,8 @@ Installation de Python Pour ceux qui débutent, je recommande l'utilisation de la distribution :epkg:`Anaconda`. Elle fonctionne sous Windows, -Linux et MacOS. Pour ceux qui souhaitent réduire la taille +Linux, MacOS. +Pour ceux qui souhaitent réduire la taille du premier téléchargement (> 500 Mo), elle existe en version allégée :epkg:`Miniconda`. Avec cette distribution, il est quasiment possible de tout faire grâce à une interface graphique. @@ -27,7 +29,7 @@ par rapport à cette dernière. C'est rarement un problème. En ce qui me concerne, je préfère la version officielle de :epkg:`Python`. Elle est moins gourmande sur le disque mais parfois plus difficile à maîtriser lors de l'installation de certaines -extensions. +extensions. Elle est installée par défault sur les distributions Linux. Installation d'extensions ou modules ou packages ================================================ @@ -67,7 +69,8 @@ Accents Le langage :epkg:`python` est conçu pour un monde anglophone et l'utilisation des accents ne va pas de soi. Le programme suivant qui demande d'afficher un message -contenant un accent provoque l'apparition d'une erreur : +contenant un accent peut provoquer l'apparition d'une erreur +selon les caractéristiques de votre machine. :: @@ -80,7 +83,7 @@ L'erreur est la suivante : File "essai.py", line 1 SyntaxError: Non-ASCII character '\xe9' in file i.py on line 1, but no encoding declared; - see http://www.python.org/peps/pep-0263.html for details + see https://peps.python.org/pep-0263/ for details Dans ce cas, il faut ajouter une ligne placée en première position qui précise que des accents pourront être utilisés. @@ -100,17 +103,28 @@ réservations d'hôtels, de trains ou d'avions même si aujourd'hui ce problème ne devrait plus en être un. Dans le cas contraire, cela donne une indication du côté vieillot voire obsolète d'une implémentation. -A cause des accents, la plupart des exemples cités dans ce -livre ne fonctionnent pas sans cette première ligne qui a +A cause des accents, les exemples cités dans ce +livre ne fonctionnent pas toujours sans cette première ligne qui a parfois été enlevée pour des questions de lisibilité. Il faut penser à l'ajouter pour reproduire les exemples. +Les dernières versions du langage Python autorisent maintenant la +présence de lettres accentuées dans les noms des variables, de fonctions +ou de classes. Néanmoins, c'est une mauvaise habitude à prendre +car beaucoup de langages ne le permettent pas. + L'instruction ``print(...)`` ordonne à l'ordinateur d'afficher un message à l'écran. Il n'a aucun impact sur son fonctionnement. Elle est beaucoup utilisée pour vérifier que le programme fait bien ce qu'il est supposé faire. +Une nouvelle version du langage Python est maintenant publiée chaque année. +L'ensemble des modifications est tenue à jour sur la page +`Python Enhancement Proposals (PEP) `_. +Chaque version est maintenue environ cinq ans selon un calendrier +précisé au moment de la sortie. + Trois concepts, séquence, test, boucle ====================================== From bfe03f76a0c4fb562f0963169c4a25a204699c0e Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Wed, 2 Aug 2023 10:06:18 +0200 Subject: [PATCH 24/26] requirements --- .local.jenkins.lin.yml | 2 +- pyproject.toml | 1 + requirements-dev.txt | 3 +-- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.local.jenkins.lin.yml b/.local.jenkins.lin.yml index aa3babbc..f50eca8b 100644 --- a/.local.jenkins.lin.yml +++ b/.local.jenkins.lin.yml @@ -9,7 +9,7 @@ virtualenv: install: - $PYINT -m pip install --upgrade pip - - $PYINT -m pip install --upgrade --no-cache-dir --no-deps --index http://localhost:8067/simple/ jyquickhelper pyquickhelper pandas_streaming --extra-index-url=https://pypi.python.org/simple/ + - $PYINT -m pip install --upgrade --no-cache-dir --no-deps --index http://localhost:8067/simple/ pyquickhelper pandas_streaming --extra-index-url=https://pypi.python.org/simple/ - $PYINT -m pip install -r requirements-dev.txt - $PYINT --version - $PYINT -m pip freeze diff --git a/pyproject.toml b/pyproject.toml index 981ebdc4..8763799c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,6 +10,7 @@ ignore_directives = [ "blogpostagg", "exref", "exreflist", + "faqref", "faqreflist", "gdot", "image-sg", diff --git a/requirements-dev.txt b/requirements-dev.txt index e800a2b3..79667a8a 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -4,7 +4,6 @@ blockdiag cloudpickle coverage jupyter -jyquickhelper matplotlib mutagen # mp3 nbsphinx @@ -15,7 +14,7 @@ pydata_sphinx_theme pytest pytest-cov ruff -scikit-learn>=1.1 +scikit-learn>=1.2 sphinx sphinx-gallery sphinx-issues From 04a53d0f489043cbcf24a0cb05b8be8cbab753e2 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Wed, 2 Aug 2023 10:14:16 +0200 Subject: [PATCH 25/26] add missing directive --- _doc/conf.py | 1 + 1 file changed, 1 insertion(+) diff --git a/_doc/conf.py b/_doc/conf.py index fd0d6837..385610f5 100644 --- a/_doc/conf.py +++ b/_doc/conf.py @@ -21,6 +21,7 @@ "sphinx_gallery.gen_gallery", "sphinx_issues", "sphinx_runpython.blocdefs.sphinx_exref_extension", + "sphinx_runpython.blocdefs.sphinx_faqref_extension", "sphinx_runpython.blocdefs.sphinx_mathdef_extension", "sphinx_runpython.epkg", "sphinx_runpython.gdot", From 8fb6cce5fe048ef037c91e826c51f2aa423df998 Mon Sep 17 00:00:00 2001 From: Xavier Dupre Date: Wed, 2 Aug 2023 11:03:06 +0200 Subject: [PATCH 26/26] push --- .gitignore | 3 ++- _doc/api/classique.rst | 5 +++++ _doc/api/index.rst | 6 ++++++ _doc/c_data/dataframes.rst | 5 +++++ _doc/c_data/matrices.rst | 6 ++++++ _doc/conf.py | 1 + _doc/index.rst | 1 + 7 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 _doc/api/classique.rst create mode 100644 _doc/api/index.rst create mode 100644 _doc/c_data/dataframes.rst create mode 100644 _doc/c_data/matrices.rst diff --git a/.gitignore b/.gitignore index ece1510f..3187bf20 100644 --- a/.gitignore +++ b/.gitignore @@ -19,8 +19,9 @@ essai.txt .ipynb_checkpoints _doc/CHANGELOGS.rst _doc/LICENSE.txt -_doc/examples/*.proto _doc/auto_examples/* +_doc/examples/*.proto +_doc/examples/schema_pb2.py _doc/examples/plot_*.png _doc/examples/plot_*.xlsx _doc/examples/data/*.optimized.onnx diff --git a/_doc/api/classique.rst b/_doc/api/classique.rst new file mode 100644 index 00000000..13461ee4 --- /dev/null +++ b/_doc/api/classique.rst @@ -0,0 +1,5 @@ +examples.construction_classique +=============================== + +.. automodule:: teachpyx.examples.construction_classique + :members: diff --git a/_doc/api/index.rst b/_doc/api/index.rst new file mode 100644 index 00000000..ddc7589b --- /dev/null +++ b/_doc/api/index.rst @@ -0,0 +1,6 @@ +Code inclus dans cette librairie +================================ + +.. toctree:: + + classique diff --git a/_doc/c_data/dataframes.rst b/_doc/c_data/dataframes.rst new file mode 100644 index 00000000..6d19cfeb --- /dev/null +++ b/_doc/c_data/dataframes.rst @@ -0,0 +1,5 @@ +========== +Dataframes +========== + +*à compléter* diff --git a/_doc/c_data/matrices.rst b/_doc/c_data/matrices.rst new file mode 100644 index 00000000..a892a1a7 --- /dev/null +++ b/_doc/c_data/matrices.rst @@ -0,0 +1,6 @@ +================ +Calcul matriciel +================ + +*à compléter* + diff --git a/_doc/conf.py b/_doc/conf.py index 385610f5..40354cce 100644 --- a/_doc/conf.py +++ b/_doc/conf.py @@ -107,6 +107,7 @@ "examples_dirs": os.path.join(os.path.dirname(__file__), "examples"), # path where to save gallery generated examples "gallery_dirs": "auto_examples", + "ignore_pattern": "schema_pb.*[.]py", } # next diff --git a/_doc/index.rst b/_doc/index.rst index aa1c8fae..c095402c 100644 --- a/_doc/index.rst +++ b/_doc/index.rst @@ -31,6 +31,7 @@ Il est aussi disponible en c_gui/index c_data/index c_resume/index + api/index i_ex i_faq auto_examples/index