<div dir="ltr"><div><div><div><div><div><div>Hi Michel,<br><br></div>That's exactly why I proposed a `pip` function available from the Python prompt.<br></div>I suppose you could still tell your students to copy/paste the following into their<br></div>Python interpreter.<br><br>def pip(args):<br>    import sys<br>    import subprocess<br>    subprocess.check_call([sys.executable, "-m", "pip"] + args.split())<br>    print("Please restart Python now to use installed or upgraded packages.")<br><br></div>I suppose an alternative is to set up jupyterhub<br><br><a href="https://jupyterhub.readthedocs.io/en/latest/">https://jupyterhub.readthedocs.io/en/latest/</a><br><br></div>and let all your students just access that from a webbrowser.<br><br></div>Stephan<br><div><div><div><br></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-11-06 7:47 GMT+01:00 Michel Desmoulin <span dir="ltr"><<a href="mailto:desmoulinmichel@gmail.com" target="_blank">desmoulinmichel@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
Today I'm going to give a training in Python again.<br>
<br>
And again it will go the same way.<br>
<br>
On Mac I will have to make people install python, then tell them to use<br>
pip3.<br>
<br>
On Windows, I will have to warn them about checking the "add python<br>
executable to system path" (that one of them will ALWAYS miss anyway).<br>
Then tell them to use py -3.x -m pip because some of them will have<br>
several versions of Python installed.<br>
<br>
Then on linux, I will tell them to install python-pip and python-venv<br>
and use python3 -m pip.<br>
<br>
I'll talk about --user, but commands won't be usable on some machine<br>
where the Scripts or bin dir is not in the system path.<br>
<br>
Then I will make them create a virtualenv so that they can avoid messing<br>
with their system python and finally can just use "pip install" like in<br>
most tutorials on the Web.<br>
<br>
And eventually I'll talk about pipenv and conda. The first one so they<br>
don't have to think about activating the virtualenv everytime, or pip<br>
freeze, or create the venv, or add it to gitignore, etc. The second<br>
because anaconda is very popular on windows.<br>
<br>
There is no way a beginner is going to get any that by themselves<br>
without a lot of time and pain. They will read some tutorial on the web<br>
and struggle to make sens of what pip is and why "pip install" doesn't<br>
work and why "python sucks".<br>
<br>
I think Python is offering an incredible experience for first timer.<br>
However, the whole "where is walpip" shenanigans is not one of them.<br>
<br>
I really want some people from this list to discuss here so we can find<br>
a way to either unify a bit the way we install and use pip, or find a<br>
way to express a tutorial that always works for people on the most<br>
popular platforms and spread the word so that any doc uses it.<br>
<br>
Michel<br>
<br>
______________________________<wbr>_________________<br>
Python-ideas mailing list<br>
<a href="mailto:Python-ideas@python.org">Python-ideas@python.org</a><br>
<a href="https://mail.python.org/mailman/listinfo/python-ideas" rel="noreferrer" target="_blank">https://mail.python.org/<wbr>mailman/listinfo/python-ideas</a><br>
Code of Conduct: <a href="http://python.org/psf/codeofconduct/" rel="noreferrer" target="_blank">http://python.org/psf/<wbr>codeofconduct/</a><br>
</blockquote></div><br></div>