import pip command = 'install' parameter = 'selenium' second_param = 'numpy' # You can give as many package names as needed switch = '--upgrade' pip.main([command, parameter, second_param, switch])
Only needed parameters are obligatory, so both
pip.main(['freeze', '', '']) are aceptable.
It is possible to pass many package names in one call, but if one install/upgrade fails, whole installation process stops and ends with status '1'.
import pip installed = pip.get_installed_distributions() list =  for i in installed: list.append(i.key) pip.main(['install']+list+['--upgrade'])
If you don't want to stop when some installs fail, call installation in loop.
for i in installed: pip.main(['install']+i.key+['--upgrade'])