From 4994abdca0de5fa473b34ad24ec5335f2ef0562f Mon Sep 17 00:00:00 2001 From: Lukas Kluft <lukas.kluft@mpimet.mpg.de> Date: Thu, 30 May 2024 21:35:12 +0200 Subject: [PATCH] Revise slide content --- slides.qmd | 123 +++++++++------- static/Python-logo-notext.svg | 265 ++++++++++++++++++++++++++++++++++ static/mamba-logo.png | Bin 0 -> 29217 bytes 3 files changed, 338 insertions(+), 50 deletions(-) create mode 100644 static/Python-logo-notext.svg create mode 100644 static/mamba-logo.png diff --git a/slides.qmd b/slides.qmd index cac1171..8b709a5 100644 --- a/slides.qmd +++ b/slides.qmd @@ -13,57 +13,79 @@ author: # Python -* Invented by Guido van Rossum in XXXX +::::{.columns} + + +:::{.column width=75%} +* Invented by Guido van Rossum in 1991 * Usually considered to have a simple syntax * Interpreted scripting lanuage * De-facto standard in many data science fields +::: -## Interpreter +:::{.column width=15%} + +::: + +:::: + +# Interpreter * Python is not compiled^[this is true but also not true] but interpreted on runtime * The interpreter can be called directly ```{raw} - python3 my_scripy.py - ``` -* Scripts can define an interpreter in the shebang + python3 my_script.py ``` +* Scripts can define an interpreter in ther [shebang](https://en.wikipedia.org/wiki/Shebang_(Unix)) + ```{.raw .python} #!/usr/bin/env python3 + print("Hello world!") ``` # Standard library -* Python organizes code in individual packages -* [Standard library](https://docs.python.org/3/library/index.html) provide extensive built-in facilities (`os`, `sys`, `datetime`, `itertools`, ...) +* Python code is organized in [modules](https://docs.python.org/3/tutorial/modules.html) and [packages](https://docs.python.org/3/tutorial/modules.html#packages) +* The [standard library](https://docs.python.org/3/library/index.html) provides extensive built-in facilities</br> + (`sys`, `re`, `datetime`, `pathlib`, ...) + + ```{python} + #| echo: true + from random import randint + + print(randint(0, 42)) + ``` # External packages {auto-animate=true} * The python package index ([PyPI](https://pypi.org)) is a centralized repository for third-party packages -* Everyone can register packages under a not yet taken name (first come first serve) -* Packages can be installed using the built-in package manager pip: +* Everyone can register packages under a not yet taken name</br> + (first come first serve) +* Packages can be installed using the built-in package manager [pip](https://docs.python.org/3/installing/index.html): ```{raw} python3 -m pip install numpy ``` # Package manager -* A package manager is a software that helps you to manage different version of packages and their dependencies +* A package manager helps you to install different versions of packages and their dependencies * General purpose package manager (`brew`, `apt-get`, `conda`, ...) * Python package manager (`pip`, `conda`, ...) -# _Virtual_ Environments +# Virtual environments -* Manage different sets of python packages -* Allows you to have a stable combination of package versions -* Pure python tools (`virtualenv`, ...) -* Tools to handle general software environments (`conda`, ...) +* Allows you to have a specific combination of libraries/binaries/packages for a project +* You can manage different environments side-by-side +* [`venv`](https://docs.python.org/3/library/venv.html) (formerly known as `virutalenv`) is shipped with the standard library +* Tools to handle general software environments (e.g. `conda`) # (Ana)conda -* `conda` is a general purpose package manager provided by Anacond Inc. -* `conda` allows you to install - 1. handle virtual environments - 2. with different python interpreters - 3. and install python packages +* `conda` is a general purpose package manager +* `conda` allows you to _i)_ create virtual environments + _ii)_ with different python interpreters, + _iii)_ install python packages, + _iv)_ and other software/libraries (e.g. ecCodes, NetCDF, ...) +* Due to restricted system permissions, `conda` became quite popular among HPC users # The amazing world of snakes {.national} @@ -97,38 +119,34 @@ author: # (micro)mamba -* `mamba` is a drop-in replacement for `conda` written in C++ -* Conflict resolution is **much** faster -* Can be installed without any pre-occupied environment (`micromamba`) +::::{.columns} -# Setting up an environment +:::{.column width=75%} +* [`mamba`](https://mamba.readthedocs.io/en/latest/index.html) is a drop-in replacement for `conda` written in C++ +* Conflict resolution is **much** faster +* Can be installed as self-contained single-file executable (`micromamba`, well-fitted for CI) +::: -```{raw} -mamba create -n my_env python=3.12 -mamba activate my_env -mamba install matplotlib numpy scipy -``` +:::{.column width=15%} + +::: -# Recreating an environment {auto-animate=true visibility="uncounted"} +:::: -Specify environment name, python version and dependencies: -```{.yaml filename=environment.yaml} -name: my_env -channels: - - conda-forge -dependencies: - - matplotlib - - numpy - - scipy -``` +# Setting up an environment -Create a new environment based on your configuration: -```{raw} -mamba env create -f environment.yaml -mamba activate my_env -``` +* Interactively create and populate a virtual environment + ```{raw} + mamba create -n my_env python=3.12 + mamba activate my_env + mamba install matplotlib numpy scipy eccodes + ``` +* Some packages might only be installable via `pip`: ^[Always un `pip` last] ^[Use the correct `pip`] + ```{raw} + python -m pip install gribscan + ``` -# Recreating an environment {auto-animate=true} +# Recreating an environment Specify environment name, python version and dependencies: ```{.yaml filename=environment.yaml} @@ -139,6 +157,7 @@ dependencies: - matplotlib - numpy - scipy + - eccodes - pip: - gribscan ``` @@ -161,10 +180,14 @@ mamba activate my_env ```{raw} python3 -m ipykernel install --name my_env ``` -* The current environment should be available as kernel in Jupyter +* The environment is now available as kernel in jupyter # Conclusions -* Use virtual environments to organize your work -* Keep track of installed packages in an `environment.yaml` file -* If in doubt, use `micromamba` to do so +* Use virtual environments to organize dependencies for your projects +* Keep track of installed packages using an `environment.yaml` file +* If in doubt, use `micromamba` + +:::{.fragment} +Python has nothing to do with snakes---it is named after "Monty Python" +::: diff --git a/static/Python-logo-notext.svg b/static/Python-logo-notext.svg new file mode 100644 index 0000000..269bbea --- /dev/null +++ b/static/Python-logo-notext.svg @@ -0,0 +1,265 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + version="1.0" + id="svg2" + sodipodi:version="0.32" + inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" + sodipodi:docname="python-logo-only.svg" + width="92.070236pt" + height="101.00108pt" + inkscape:export-filename="python-logo-only.png" + inkscape:export-xdpi="232.44" + inkscape:export-ydpi="232.44" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/"> + <metadata + id="metadata371"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <sodipodi:namedview + inkscape:window-height="2080" + inkscape:window-width="1976" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + guidetolerance="10.0" + gridtolerance="10.0" + objecttolerance="10.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" + inkscape:zoom="2.1461642" + inkscape:cx="91.558698" + inkscape:cy="47.9926" + inkscape:window-x="1092" + inkscape:window-y="72" + inkscape:current-layer="svg2" + width="210mm" + height="40mm" + units="mm" + inkscape:showpageshadow="2" + inkscape:pagecheckerboard="0" + inkscape:deskcolor="#d1d1d1" + inkscape:document-units="pt" + showgrid="false" + inkscape:window-maximized="0" /> + <defs + id="defs4"> + <linearGradient + id="linearGradient2795"> + <stop + style="stop-color:#b8b8b8;stop-opacity:0.49803922;" + offset="0" + id="stop2797" /> + <stop + style="stop-color:#7f7f7f;stop-opacity:0;" + offset="1" + id="stop2799" /> + </linearGradient> + <linearGradient + id="linearGradient2787"> + <stop + style="stop-color:#7f7f7f;stop-opacity:0.5;" + offset="0" + id="stop2789" /> + <stop + style="stop-color:#7f7f7f;stop-opacity:0;" + offset="1" + id="stop2791" /> + </linearGradient> + <linearGradient + id="linearGradient3676"> + <stop + style="stop-color:#b2b2b2;stop-opacity:0.5;" + offset="0" + id="stop3678" /> + <stop + style="stop-color:#b3b3b3;stop-opacity:0;" + offset="1" + id="stop3680" /> + </linearGradient> + <linearGradient + id="linearGradient3236"> + <stop + style="stop-color:#f4f4f4;stop-opacity:1" + offset="0" + id="stop3244" /> + <stop + style="stop-color:white;stop-opacity:1" + offset="1" + id="stop3240" /> + </linearGradient> + <linearGradient + id="linearGradient4671"> + <stop + style="stop-color:#ffd43b;stop-opacity:1;" + offset="0" + id="stop4673" /> + <stop + style="stop-color:#ffe873;stop-opacity:1" + offset="1" + id="stop4675" /> + </linearGradient> + <linearGradient + id="linearGradient4689"> + <stop + style="stop-color:#5a9fd4;stop-opacity:1;" + offset="0" + id="stop4691" /> + <stop + style="stop-color:#306998;stop-opacity:1;" + offset="1" + id="stop4693" /> + </linearGradient> + <linearGradient + x1="224.23996" + y1="144.75717" + x2="-65.308502" + y2="144.75717" + id="linearGradient2987" + xlink:href="#linearGradient4671" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(100.2702,99.61116)" /> + <linearGradient + x1="172.94208" + y1="77.475983" + x2="26.670298" + y2="76.313133" + id="linearGradient2990" + xlink:href="#linearGradient4689" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(100.2702,99.61116)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4689" + id="linearGradient2587" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(100.2702,99.61116)" + x1="172.94208" + y1="77.475983" + x2="26.670298" + y2="76.313133" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4671" + id="linearGradient2589" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(100.2702,99.61116)" + x1="224.23996" + y1="144.75717" + x2="-65.308502" + y2="144.75717" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4689" + id="linearGradient2248" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(100.2702,99.61116)" + x1="172.94208" + y1="77.475983" + x2="26.670298" + y2="76.313133" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4671" + id="linearGradient2250" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(100.2702,99.61116)" + x1="224.23996" + y1="144.75717" + x2="-65.308502" + y2="144.75717" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4671" + id="linearGradient2255" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)" + x1="224.23996" + y1="144.75717" + x2="-65.308502" + y2="144.75717" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4689" + id="linearGradient2258" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562541,0,0,0.567972,-11.5974,-7.60954)" + x1="172.94208" + y1="76.176224" + x2="26.670298" + y2="76.313133" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2795" + id="radialGradient2801" + cx="61.518883" + cy="132.28575" + fx="61.518883" + fy="132.28575" + r="29.036913" + gradientTransform="matrix(1,0,0,0.177966,0,108.7434)" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4671" + id="linearGradient1475" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562541,0,0,0.567972,-14.99112,-11.702371)" + x1="150.96111" + y1="192.35176" + x2="112.03144" + y2="137.27299" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4689" + id="linearGradient1478" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562541,0,0,0.567972,-14.99112,-11.702371)" + x1="26.648937" + y1="20.603781" + x2="135.66525" + y2="114.39767" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2795" + id="radialGradient1480" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.7490565e-8,-0.23994696,1.054668,3.7915457e-7,-83.7008,142.46201)" + cx="61.518883" + cy="132.28575" + fx="61.518883" + fy="132.28575" + r="29.036913" /> + </defs> + <path + style="fill:url(#linearGradient1478);fill-opacity:1" + d="M 54.918785,9.1927389e-4 C 50.335132,0.02221727 45.957846,0.41313697 42.106285,1.0946693 30.760069,3.0991731 28.700036,7.2947714 28.700035,15.032169 v 10.21875 h 26.8125 v 3.40625 h -26.8125 -10.0625 c -7.792459,0 -14.6157588,4.683717 -16.7499998,13.59375 -2.46181998,10.212966 -2.57101508,16.586023 0,27.25 1.9059283,7.937852 6.4575432,13.593748 14.2499998,13.59375 h 9.21875 v -12.25 c 0,-8.849902 7.657144,-16.656248 16.75,-16.65625 h 26.78125 c 7.454951,0 13.406253,-6.138164 13.40625,-13.625 v -25.53125 c 0,-7.2663386 -6.12998,-12.7247771 -13.40625,-13.9374997 C 64.281548,0.32794397 59.502438,-0.02037903 54.918785,9.1927389e-4 Z m -14.5,8.21875012611 c 2.769547,0 5.03125,2.2986456 5.03125,5.1249996 -2e-6,2.816336 -2.261703,5.09375 -5.03125,5.09375 -2.779476,-1e-6 -5.03125,-2.277415 -5.03125,-5.09375 -10e-7,-2.826353 2.251774,-5.1249996 5.03125,-5.1249996 z" + id="path1948" /> + <path + style="fill:url(#linearGradient1475);fill-opacity:1" + d="m 85.637535,28.657169 v 11.90625 c 0,9.230755 -7.825895,16.999999 -16.75,17 h -26.78125 c -7.335833,0 -13.406249,6.278483 -13.40625,13.625 v 25.531247 c 0,7.266344 6.318588,11.540324 13.40625,13.625004 8.487331,2.49561 16.626237,2.94663 26.78125,0 6.750155,-1.95439 13.406253,-5.88761 13.40625,-13.625004 V 86.500919 h -26.78125 v -3.40625 h 26.78125 13.406254 c 7.792461,0 10.696251,-5.435408 13.406241,-13.59375 2.79933,-8.398886 2.68022,-16.475776 0,-27.25 -1.92578,-7.757441 -5.60387,-13.59375 -13.406241,-13.59375 z m -15.0625,64.65625 c 2.779478,3e-6 5.03125,2.277417 5.03125,5.093747 -2e-6,2.826354 -2.251775,5.125004 -5.03125,5.125004 -2.76955,0 -5.03125,-2.29865 -5.03125,-5.125004 2e-6,-2.81633 2.261697,-5.093747 5.03125,-5.093747 z" + id="path1950" /> + <ellipse + style="opacity:0.44382;fill:url(#radialGradient1480);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:15.4174;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + id="path1894" + cx="55.816761" + cy="127.70079" + rx="35.930977" + ry="6.9673119" /> +</svg> diff --git a/static/mamba-logo.png b/static/mamba-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a2c04148c00e48cb159b64d32a8e9aad9478c5f9 GIT binary patch literal 29217 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 Sw1E8%SIUBwB&#G01OE@6QLzsI literal 0 HcmV?d00001 -- GitLab