在安装一些python的安装包时,我们会使用conda install ~或者pip install ~
网上说conda是安装到云端,而pip是安装到本地,那二者究竟有什么区别,可以参考下这个点击打开链接
下面是我的理解:
如果我们专注于只是安装Python包,conda和pip服务不同的受众和不同的目的。 如果你想在现有的系统Python安装中管理Python包,conda不能帮助你:通过设计,它只能在conda环境中安装包。 如果你想说,使用依赖于外部依赖的许多Python包(NumPy,SciPy和Matplotlib是常见的例子),同时以一种有意义的方式跟踪这些依赖,pip不能帮助你:它 管理Python包和只有Python包。
Conda和pip不是竞争对手,而是侧重于不同用户组和使用模式的工具。Conda是一个通用的包管理器,当初设计来管理任何语言的包。所以用来管理python包当然也是绰绰有Conda 和 pip 目标并不相同, 只有小部分子集有交集有竞争关系:比如python包的安装和环境隔离。pip可以允许你在任何环境中安装python包,而conda允许你在conda环境中安装任何语言包(包括c语言或者python)。
例子:我在练习外星人入侵这个2D游戏时需要用到pygame这个安装包,直接在cmd或者anaconda prompt输入conda install pygame或者pip install pygame都不行。因为我的anaconda集成了python3.6和python3.5(tensorflow)所以刚刚使用的两个方法都不会直接把pygame的安装包自动识别安装到本地环境中,也就是需要你指定一个本地安装环境,在我激活tensorflow之后输入pip install pygame,就把pygame安装成功了。下面是测试代码:
import sys import pygame def run_game(): # 初始化游戏并创建一个屏幕对象 pygame.init() screen = pygame.display.set_mode((1200, 800)) pygame.display.set_caption("Alien Invasion") # 开始游戏的主循环 while True: # 监视键盘和鼠标事件 for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() # 让最近绘制的屏幕可见 pygame.display.flip() run_game()