Hi Antoine, 2017-10-29 20:31 GMT+01:00 Antoine Rozo <antoine.r...@gmail.com>:
> Hi, > > What would be the difference with current pip module? > pip.main(['install', 'some_package']) > My understanding is that direct use of the `pip` module is explicitly not recommended. Stephan > > 2017-10-29 20:26 GMT+01:00 Alex Walters <tritium-l...@sdamon.com>: > >> I have a somewhat better, imo, implementation of a pip object to be >> loaded into the repl. >> >> >> >> class pip: >> >> def __call__(self, *a, **kw): >> >> sys.stderr.write(str(self)) >> >> >> >> def __repr__(self): >> >> return str(self) >> >> >> >> def __str__(self): >> >> return “Please run pip from your system command prompt” >> >> >> >> >> >> >> >> *From:* Python-ideas [mailto:python-ideas-bounces+tritium-list= >> sdamon....@python.org] *On Behalf Of *Stephan Houben >> *Sent:* Sunday, October 29, 2017 3:19 PM >> *To:* Python-Ideas <python-ideas@python.org> >> *Subject:* [Python-ideas] install pip packages from Python prompt >> >> >> >> Hi all, >> >> Here is in somewhat more detail my earlier proposal for >> >> having in the interactive Python interpreter a `pip` function to >> >> install packages from Pypi. >> >> Motivation: it appears to me that there is a category of newbies >> >> for which "open a shell and do `pip whatever`" is a bit too much. >> >> It would, in my opinion, simplify things a bit if they could just >> >> copy-and-paste some text into the Python interpreter and have >> >> some packages from pip installed. >> >> That would simplify instructions on how to install package xyz, >> >> without going into the vagaries of how to open a shell on various >> >> platforms, and how to get to the right pip executable. >> >> I think this could be as simple as: >> >> def pip(args): >> import sys >> import subprocess >> subprocess.check_call([sys.executable, "-m", "pip"] + args.split()) >> >> print("Please re-start Python now to use installed or upgraded >> packages.") >> >> Note that I added the final message about restarting the interpreter >> >> as a low-tech solution to the problem of packages being already >> >> imported in the current Python session. >> >> I would imagine that the author of package xyz would then put on >> >> their webpage something like: >> >> To use, enter in your Python interpreter: >> >> pip("install xyz --user") >> >> As another example, consider prof. Baldwin from Woolamaloo university >> >> who teaches a course "Introductory Python programming for Sheep Shavers". >> >> In his course material, he instructs his students to execute the >> >> following line in their Python interpreter. >> >> pip("install woolamaloo-sheepshavers-goodies --user") >> >> which will install a package which will in turn, as dependencies, >> >> pull in a number of packages which are relevant for sheep shaving but >> >> which have nevertheless irresponsibly been left outside the stdlib. >> >> Stephan >> >> >> >> >> >> _______________________________________________ >> Python-ideas mailing list >> Python-ideas@python.org >> https://mail.python.org/mailman/listinfo/python-ideas >> Code of Conduct: http://python.org/psf/codeofconduct/ >> >> > > > -- > Antoine Rozo > > _______________________________________________ > Python-ideas mailing list > Python-ideas@python.org > https://mail.python.org/mailman/listinfo/python-ideas > Code of Conduct: http://python.org/psf/codeofconduct/ > >
_______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/