zoukankan      html  css  js  c++  java
  • day 023-python 包

    包 :

     我 们创建的每个文件夹都可以被称之为包. 但是我们要注意, 在python2中规定.中包内必须存在 __init__.py文件.  python3可有可无,但一般要求写上.创建包的目的不是为了运行, ⽽是被导入使⽤. 包只是⼀种形式而已. 包的本 质就是一种模块 

     为何要使⽤用包?

    包的本质就是一个⽂件夹, 那么文件夹唯一的功能就是将文件组织起来, 随着功能越写越多, 我们无法将所有功能都放在一个文件中, 于是我们使用模块去组织功能, 随着模块越来越多, 我们就需要用文件夹将模块文件组织起来, 以此来提高程序的结构性和可 维护性

      文件夹内包含了__init__.在导入包的时候, 默认执行__init__.py

      查找的顺序: 内存 -> 内置 -> sys.path

     sys.path有坑: 根据你启动的脚本所在的位置确定查找包, 模块的路径

     sys.path.insert(0, "你想加入的位置") #不建议用

    例如 
    # from urllib.request import urlopen # 点 前面的一定是包
     包其实就是文件夹  引用文件下的模块, 模块里是一个函数
    # 也是一种导包的方式
    from urllib import request # request.urlopen() 导入包要根据你的实际情况 # 包就是一个文件夹, 文件夹内部要有一个__init__.py # 在py2中这个__init__.py是强制的. py3里面可以没有这个文件 # 自己定义一个包的话. 一定要给出__init__.py

    包是对模块的封装

    导入一个包(文件夹)时 默认执行的是__init__.py文件

    导包 :

    import xxx     (是按顺序加载, 得全部导一遍,好处是可以避免重名)

    from xxx import xxx (指向某一个模块,

    绝对路径 :

    从 sys.path找 (根)

    相对路径:

    相对于当前文件所在的文件夹

    .  点  当前

    .. 点点 上一层

    启动脚本不能在包内 

    # 待续...

  • 相关阅读:
    [SCOI2005]骑士精神
    [SCOI2005]超级格雷码
    [SDOI2013]淘金
    [SCOI2014]方伯伯的商场之旅
    P4317 花神的数论题
    RSA算法原理(一)
    PKI 笔记
    字符串解析运用-将字符串分解为多个整数,求各整数之和(华为oj)
    pycharm快捷键、常用设置、配置管理
    启动ipython notebook(jupyter)
  • 原文地址:https://www.cnblogs.com/systemsystem/p/9780919.html
Copyright © 2011-2022 走看看