通過pycharm創建Django項目是出現如下錯誤
AttributeError: module 'pip' has no attribute 'main'

環境信息:pycharm2017.3.1(Professional Edition)、python3.6.5 (64位)、pip10.0.1、Django2.0.5
錯誤原因:由於pip 10版本中沒有main(),如果在不降級的情況下,修改這個文件
找到pycharm安裝目錄下的packaging_tool.py
找到如下代碼
def do_install(pkgs): try: import pip except ImportError: error_no_pip() return pip.main(['install'] + pkgs) def do_uninstall(pkgs): try: import pip except ImportError: error_no_pip() return pip.main(['uninstall', '-y'] + pkgs)
修改成如下內容
def do_install(pkgs): try: # import pip try: from pip._internal import main except Exception: from pip import main except ImportError: error_no_pip() return main(['install'] + pkgs) def do_uninstall(pkgs): try: # import pip try: from pip._internal import main except Exception: from pip import main except ImportError: error_no_pip() return main(['uninstall', '-y'] + pkgs)
另外一種方式,降級pip的版本
python -m pip install --upgrade pip==9.0.3
---------------------
找到安裝目錄下 helpers/packaging_tool.py文件,找到如下代碼:
def do_install(pkgs):
try:
import pip
except ImportError:
error_no_pip()
return pip.main(['install'] + pkgs) def do_uninstall(pkgs): try: import pip except ImportError: error_no_pip() return pip.main(['uninstall', '-y'] + pkgs)
修改為如下,保存即可。
def do_install(pkgs):
try:
# import pip try: from pip._internal import main except Exception: from pip import main except ImportError: error_no_pip() return main(['install'] + pkgs) def do_uninstall(pkgs): try: # import pip try: from pip._internal import main except Exception: from pip import main except ImportError: error_no_pip() return main(['uninstall', '-y'] + pkgs)
