conda和pip的理解

在安装一些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()



猜你喜欢

转载自blog.csdn.net/weixin_40458355/article/details/80036581
今日推荐