精华内容
下载资源
问答
  • python中的包和模块
    千次阅读
    2022-02-18 20:32:16

    一、Windows系统


    1、单版本安装

    如果 windows 系统只安装了一个版本的 python 的话,模块包的安装就比较简单了,只要你安装 python 的路径为默认路径就可以直接在控制终端 cmd 输入安装命令:

    >>> pip install packageName
    

    这里的 packageName 是包的名字。

    如果遇到提示没有 pip 命令的情况下(这种情况大概是旧版 python 安装没有附带 pip),可以使用 easy_install 命令进行安装:

    >>> easy_install packageName
    

    或者先使用 easy_install 安装 pip 命令:

    >>> easy_install pip
    

    然后再使用 pip 命令安装模块包。

    2、多版本安装

    如果 window 安装了多个版本的 python,这时我们想指定把模块包安装到特定版本的 python 下,那么久需要我们进入要安装模块包的 python 安装目录下,执行以下安装命令:

    C:\Python38> python.exe -m pip install packageName
    

    二、Linux 系统


    Linux 平台下安装 python 模块包很简单,就一条 pip 命令,但需要留意下使用的 pip 版本,由于 Linux 都默认安装了 2 版本的 Python 所以一般包含了指向 Python2pip 命令。

    使用一下命令检查当前所有的 pip 命令:

    $ ls -l /usr/bin/pip*
    -rwxr-xr-x. 1 root root 407 Oct 14  2020 /usr/bin/pip3
    lrwxrwxrwx. 1 root root   9 Apr 19 15:34 /usr/bin/pip-3 -> ./pip-3.6
    lrwxrwxrwx. 1 root root   8 Apr 19 15:34 /usr/bin/pip-3.6 -> ./pip3.6
    -rwxr-xr-x. 1 root root 407 Oct 14  2020 /usr/bin/pip3.6
    

    这里可以看出,我只安装了 3 版本的 python,一共有4条 pip 安装命令:pip3、pip-3、pip-3.6、pip3.6,但 pip-3 和 pip-3.6 都指向了 pip3.6,而我所安装的是 python3.6 版本,所以就使用 pip3.6 进行模块的安装:

    $ pip3.6 install requests
    

    如果安装了 2 版本的 Python 并想要安装该版本的模块包的话,使用以下命令:

    $ pip install requests
    

    三、添加国内镜像


    由于 python 安装模块默认使用的国外的镜像,所以下载会比较慢,还经常会下载失败,这种情况下我们可以指定使用国内的镜像:

    1)国内豆瓣镜像

    >>> pip install packageName -i https://pypi.douban.com/simple
    

    2)国内清华镜像

    >>> pip install packageName -i https://pypi.tuna.tsinghua.edu.cn/simple
    

    或者通过修改配置文件达到永久修改:

    Linux下,修改 ~/.pip/pip.conf (没有就创建一个), 修改 index-urltuna,内容如下:

    [global]
    index-url = https://pypi.tuna.tsinghua.edu.cn/simple
    

    windows下,直接在 user 目录中创建一个 pip 目录,如:C:\Users\xx\pip,新建文件 pip.ini,内容如下:

    [global]
    index-url = https://pypi.tuna.tsinghua.edu.cn/simple
    

    3、解决国内镜像无法识别问题

    在指定国内镜像下载模块包(比如清华镜像 https://pypi.tuna.tsinghua.edu.cn/simple)时:

    pip install packageName -i https://pypi.tuna.tsinghua.edu.cn/simple <packageName>
    

    出现以下报错:

    Cannot unpack file /tmp/pip-WY1nQb-unpack/simple.htm (downloaded from /tmp/pip-0y4s6P-build,  
    content-type:  text/html); cannot detect archive format Cannot determine archive format of /tmp/pip-0y4s6P-build
    

    这种情况基本是镜像源地址无法识别或信任问题,我们可以这样解决:

    pip install packageName -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn <packageName>
    
    更多相关内容
  • Python包和模块的区别

    千次阅读 2020-10-28 06:30:55
    Python中包(package)和模块(module)的区别是什么? 一般我们用import导入所需的或者模块的时候,我们其实是不需要区分模块和包的区别的,我自己之前也一直以为这两个词语是同一个意思。但是其实这是两个不同的...

    Python中包(package)和模块(module)的区别是什么?

    一般我们用import导入所需的包或者模块的时候,我们其实是不需要区分模块和包的区别的,我自己之前也一直以为这两个词语是同一个意思。但是其实这是两个不同的概念。

    任何以.py结尾的Python文件都是模块(package),模块的名字就是文件名(不加.py),不过有时候模块的名字也可以通过模块的__name__重新指定。

    包是多个模块的组合。如果一个文件夹下包括多个.py文件和一个__init__.py文件(对于python2需要__init__.py),那么这个文件夹就算是一个包。init.py文件就是专门用来帮助解释器区分所在文件夹到底是普通文件夹还是python包的。你可能有疑问:为什么Python3之后不需要__init__.py了呢?答案见我写的另一个文章。包可以嵌套到任何深度,只要相应的目录包含它们自己的__init__.py文件。

    当我们导入模块或包时,Python创建的相应对象始终是模块类型。也就是说无论是一个.py文件(模块)还是一个文件夹(包),一旦被导入之后,它的类型都变成了模块(读者可以通过type(module_name)来测试一下。我自己通过python的debug模式显示了一下我导入的几个包,类型都是module)。

    在这里插入图片描述
    这意味着模块和包之间的区别仅在于文件系统级别,一旦被解释器导入到python中就没有区别了,都成为了模块(module)对象。这也就是为什么我们一般使用过程中注意不到他们的区别。换句话说,当.py文件和包含多个.py文件和__init__.py文件的文件夹没有被python解释器导入的时候,它们可以被叫做python的模块和包,但是一旦被导入,它们都只能叫做模块。所以也可以说: It’s important to keep in mind that all packages are modules. Package is just a module with a path attribute.

    包也是特殊的模块,相比于普通模块,由于它是文件夹,所以多了一个__path的属性。比如读者可以自己在电脑测试一下自己numpy的__path__是什么,下图是我的numpy的路径属性测试。
    在这里插入图片描述

    自己的模块和python自带的模块重名了怎么办?

    尽量不要重名。一旦重名的话,import model_name时候到底是导入自定义的模块还是python自带的模块呢?
    答案:具体模块查询顺序查看这里。简单来讲,python解释器会先查询内置模块看是否有需要导入的模块,再从sys.path所包括的文件夹查询模块名字。所以,如果自定义模块名字与内置模块名字重合会被内置模块名字覆盖掉。但是注意内置模块和python标准库的模块还是不一样的,具体请看这个文章

    Reference

    1. What is the difference between a python module and a python package?
    展开全文
  • python中模块、库、有什么区别

    千次阅读 2020-12-19 08:46:25
    关系图: 2.python包是:包是一个有层次的文件目录结构,它定义了由n个模块或n个子包组成的python应用程序执行环境。通俗一点:包是一个包含__init__.py 文件的目录,该目录下一定得有这个__init_...

    1.python模块是:

    python模块:包含并且有组织的代码片段为模块。

    表现形式为:写的代码保存为文件。这个文件就是一个模块。sample.py 其中文件名smaple为模块名字。

    关系图:

    2.python包是:

    包是一个有层次的文件目录结构,它定义了由n个模块或n个子包组成的python应用程序执行环境。通俗一点:包是一个包含__init__.py 文件的目录,该目录下一定得有这个__init__.py文件和其它模块或子包。

    常见问题:

    引入某一特定路径下的模块

    使用sys.path.append(yourmodulepath)

    将一个路径加入到python系统路径下,避免每次通过代码指定路径

    利用系统环境变量 export PYTHONPATH=$PYTHONPATH:yourmodulepath,

    直接将这个路径链接到类似/Library/Python/2.7/site-packages目录下

    好的建议:

    经常使用if __name__ == '__main__',保证写包既可以import又可以独立运行,用于test。

    多次import不会多次执行模块,只会执行一次。可以使用reload来强制运行模块,但不提倡。

    常见的包结构如下:

    package_a├── __init__.py├── module_a1.py└── module_a2.pypackage_b├── __init__.py├── module_b1.py└── module_b2.py

    main.py

    如果main.py想要引用packagea中的模块modulea1,可以使用:

    from package_a import module_a1

    import package_a.module_a1

    如果packagea中的modulea1需要引用packageb,那么默认情况下,python是找不到packageb。我们可以使用sys.path.append('../'),可以在packagea中的__init__.py添加这句话,然后该包下得所有module都添加* import __init_即可。

    关系图:

    3.库(library)

    库的概念是具有相关功能模块的集合。这也是Python的一大特色之一,即具有强大的标准库、第三方库以及自定义模块。

    展开全文
  • 如图所示,对于python,有一个自定义parent,它里面还有一个子child,当你在parent.module1import child.module2时,vscode会给你报错,说找不到这个。 当你单独运行module1.py的时候,可以正常运行,但是当...

    本文在憧憬少的个人博客的链接

    问题描述

    如图所示,对于python,有一个自定义包parent,它里面还有一个子包child,当你在parent.module1import child.module2时,vscode会给你报错,说找不到这个包。

    当你单独运行module1.py的时候,可以正常运行,但是当你在parent包外层的main.pyimport parent.module1时,就会报错。

    vscode中python自定义包的模块如何导入其子包模块

    详细说明

    目录结构为:

    • main.py

    • parent

      • __init__.py
      • module1.py
      • child
        • __init__.py
        • module2.py

    其中:

    main.py

    # main.py
    import parent.module1
    

    parent.__init__.py

    # parent.__init__.py
    print('导入了parent包')
    

    child.__init__.py

    # child.__init__.py
    print('导入了child包')
    

    module1.py

    # module1.py
    import child.module2
    print('导入了module1模块')
    

    module2.py

    # module2.py
    print('导入了module2模块')
    

    分析原因

    当你单独运行module1.py的时候,可以正常运行,并输出:

    导入了child包
    导入了module2模块
    导入了module1模块
    

    这是因为vscode此时将module1.py作为相对路径的起点,从而找到了child.module2的位置。

    但是当你在parent包外层的main.pyimport parent.module1时,就会报错。

    这是因为vscode此时将main.py作为相对路径的起点,对于main.py来说,它所在目录下是没有child包的,只有parent包,所以找不到,报错。

    解决方案

    parent.__init__.py中添加三行代码,添加完之后如下所示:

    # parent.__init__.py
    import sys
    import os
    sys.path.append(os.path.dirname(os.path.realpath(__file__)))
    
    print('导入了parent包')
    

    python找包会在当前路径和sys.path中去查找,所以可以在导入parent包的时候,将它的路径加入sys.path当中,这样就可以找到parent包的子包了。

    同时,因为是在__init__.py中加的,包内文件就不必每次都将粘贴一次这部分代码。

    其中,os.path.realpath(__file__)获取本文件即parent.__init__.py的真实路径,os.path.dirname()将完整路径中的目录名提取出来,去掉其中的文件名。

    添加后main.py运行结果:

    导入了parent包
    导入了child包
    导入了module2模块
    导入了module1模块
    
    展开全文
  • python中的logging模块

    千次阅读 2022-01-07 13:51:37
    1. python中的内置模块 logging 2. logging模块的基本应用:四大组件 1. 日志器 logger 给所有的应用程序提供入口 2. 处理器 handler 决定在不同端实现输出 3. 格式器 formater 决定日志内容(日志包含事件,...
  • Python中模块是什么

    千次阅读 2021-01-29 05:55:53
    一、python中模块有过C语言编程经验的朋友都知道在C语言如果要...在Python中有一个概念叫做模块(module),这个C语言的头文件以及Java很类似,比如在Python中要调用sqrt函数,必须用import关键字引入...
  • Python 库、模块

    千次阅读 多人点赞 2018-09-23 16:23:42
    文章目录库库定义标准库第三方库python第三方库如何寻找自定义库包包的概念**python `_init_.py`文件的作用模块模块定义导入模块import 语句from-import 语句问题:python 解释器如何查找要引入的模块python目录...
  • Python中模块、库、的概念

    千次阅读 2019-10-08 20:37:05
    文章目录一、模块(Moudule)1.模块的概念2.模块的导入3....每一个python脚本都是一个可执行.py文件,也就是一个模块,每一个模块包含着许多方法,也就是函数。模块是一个有组织的代码片段。 创建一个模块...
  • python模块和python包有什么区别?

    千次阅读 2021-01-14 16:45:33
    python模块和python包有什么区别?另请参见:"package""module"(其他语言)之间的区别是什么?我可能错了,但对我来说:模块基本上是一个python文件。包是一个文件夹,其中包含一组模块(python文件)。要被视为包,...
  • DATE: 2020.2.9 1、参考 2、Python中库、模块、函数使用方法 3、库、模块和函数之间的关系
  • 查看Python包模块中的函数

    千次阅读 2021-09-06 18:45:19
    使用dir() 函数help()函数来查询模块函数相关信息 help 函数的时候,括号要去掉
  • Python中模块

    千次阅读 2020-11-21 01:26:14
    函数的优点之一是,使用它们可...import 语句允许在当前运行的程序文件中使用模块中的代码。实际工作中也是如此,这样可以隐藏程序代码的细节,将重心放在程序的高层逻辑上。而且重用性也会提高,也能让其他程序员使...
  • 正如我们将要看到的那样,Python鼓励模块化的程序结构,将功能相近的可重用单元组织在一个模块中,这种方式符合直觉,同时也合乎直觉。在这个过程中,我们也会探索Python模块、导入以及对象属性这三个核心概念。 ...
  • python中threading模块详解

    千次阅读 2021-02-03 10:03:40
    python中threading模块详解,threading提供了一个比thread模块更高层的API来提供线程的并发性。这些线程并发运行并共享内存。下面来看threading模块的具体用法:一、Thread的使用 目标函数可以实例化一个Thread对象...
  • Python中模块和包的区别

    千次阅读 2018-01-26 17:03:02
    自从面向对象的思想在二十世纪八十年代左右被提出之后,其经历了雨后春笋般的发展,类,命名空间,Python中包和模块都是生在在它上面的。 类对象是OOP的核心成员,Python在类对象的基础上,为了程序更好的...
  • Python中常见的模块——OS time 模块

    千次阅读 多人点赞 2021-06-01 09:13:38
    (2)导入模块中的函数 from 模块 import 函数 注意:import导入的时候模块是要在当前目录的 取别名as:模块名过长可以通过as取别名 二. 常见模块 2.1 os模块 作用:常用于对文件进行重命名、删除等一
  • Python中模块

    千次阅读 2016-03-09 16:46:51
    Python环境变量在通过ArcGIS安装Python之后,也许不能通过cmd命令行运行,那是因为系统找不到python.exe。 这个时候,只需在配置系统环境变量,把python.exe所在的目录(如C:\Python27\ArcGIS10.2\)添加入PATH目录...
  • 模块与包模块与包的含义模块导入操作制作包与模块相对导入模块的查找 模块与包的含义 一,什么是模块 1.模块就是python文件,里面定义了很多函数,类,变量, 一个完整大型的python程序是由模块和包的形式组成起来...
  • Python-最详细模块/的(动态)导入

    万次阅读 2021-03-27 14:24:57
    你是否会出现下图模块时找不到的情况呢? ModuleNotFoundError,也就是模块没有找到,不要慌,今天总结导包的所有问题。 模块导入 什么是模块? 容器->数据的封装 函数->语句的.
  • python模式下,有时候需要导入 import某些模块或者。明明这个模块/是存在的,却提示导入错误,比如,“ImportError: No module named lxml”。但是当你在命令行下,通过 “pip install lxml” 时,却提示该模块...
  • 详解Python模块化——模块(Modules)和包(Packages)

    千次阅读 多人点赞 2021-08-02 09:43:54
    Python中模块(Module)、库(Package),都是为了实现模块化引用,让程序的组织更清晰有序。
  • 如何在python中安装torch模块

    千次阅读 2021-05-19 09:07:37
    具体见如下博文,不再搬砖: https://www.cnblogs.com/andrew-address/p/12733669.html
  • Python模块——os模块详解

    千次阅读 2021-02-09 05:01:13
    本着只讲最有用的态度,下方我将os模块中一些我经常用的的方法,给大家详细列举出来了,希望减少大家的学习负担。 知识串讲1)模块的安装导入# 导入import os12122)os.getcwd() 作用:获取当前的工作路径; os....
  • python中导入matplotlib模块

    千次阅读 2021-04-04 12:37:36
    matplotlib模块是一个强大的画图模块。为了后续画图分析这个模块必须要导入。 以下是亲测有效的导入方式: ...(4)查看验证安装是否成功的方法cmd输入python -m pip list或者打开python IDLEimport mat
  • Python中import包和模块实例

    千次阅读 2017-10-15 16:51:04
    Python中import包和模块实例
  • python库、模块的关系

    千次阅读 2020-04-23 17:52:40
    所以:python中真正使用的是包和模块,库是抽象意义上的统称。 由此可见,zhon其实是一个名,为此要使用某一个模块的功能,必须在导入模块名称是明确指明模块名称。为此,中文标点符号使用例子的代码应该修改为:...
  • python打包生成的exe文件运行时提示缺少模块的解决方法事情是这样的我用打包命令:pyinstaller -F E:\python\clpicdownload\mypython.py打包了一个exe程序,但是运行时提示我缺少bs4模块然后我就去查pyinstaller的...
  • Python模块——shutil模块详解

    万次阅读 多人点赞 2020-08-17 21:12:58
    shutil模块详解
  • 1. Python(package)和模块(module)的区别 首先分清python中模块、库、之间的概念差异: 模块(module)其实就是py文件,里面定义了一些函数、类、变量等 (package)是多个模块的聚合体形成的文件夹,里面可以...
  • 这篇文章主要介绍一个ROS功能包中python模块如何导入并使用另外一个ROS功能包中python模块

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 482,576
精华内容 193,030
关键字:

python中的包和模块