zoukankan      html  css  js  c++  java
  • Python3入门(七)——模块

      在Python中,一个.py文件就称之为一个模块(Module)。(例如main.py就称之为main模块)

      为了避免模块名冲突,Python又引入了按目录来组织模块的方法,称为(Package)。

      每一个包目录下面都会有一个__init__.py的文件,这个文件是必须存在的(使用pycharm建包时会自动创建),可以为空,也可以有代码

    一、使用模块

      一个模块定义的模板如下:

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    """这是一个测试模块"""
    __author__ = '江北'
    
    import sys
    
    
    def test():
        args = sys.argv
        if len(args) == 1:
            print("hello world!")
    
    
    if __name__ == "__main__":
        test()

      第一行/第二行:注释,分别用于Linux下直接执行以及指定编码

      第三行:文档注释,任何模块的第一个字符串都视为文档注释。根据pycharm的提示,建议使用三引号(triple)

       第四行:亮明身份,表明作者。当然和其他IDE一样,以上几行都可以通过设置为模板,在新建时自动生成(将在pycharm使用教程中介绍)

       以上是推荐使用的模板

       使用模块的第一步,是导入模块

    import sys

      导入后便可以使用变量sys来指向并使用该模块了。

    形如from...import可以只引入模块中的部分name:

    from modname import name1[, name2[, ... nameN]]

      相关细节可以参考https://www.cnblogs.com/lidagen/p/7090777.html

      python模块中变量的作用域:

        1.普通变量是公开的,例如abc,age

        2.形如"__name__"的是特殊变量,可以直接引用,自己的变量一般不要使用这种变量

        3.形如"_count"和"__count"(一个和两个下划线)的变量是私有变量,一般不应该被公开直接访问(但python中没有强制限制不能访问,为了规范,请不要公开访问私有变量)私有变量和私有函数都不应该被公开访问,模块公开普通公开函数即可

    二、安装第三方模块

      1.python包管理工具

        Python中的包管理工具,叫pip

        unix系统中不用再次安装pip了,直接运行pip即可(python3请尝试pip3)

        windows中在安装时确保勾选了pip(默认是安装了的,自定义安装时不要勾掉即可):

        

      如果没有。恭喜。。卸载重装吧。重装时记得勾选pip和add to path了!

      2.python库在哪

       第三方库一般来说会在https://pypi.org/注册(有点儿像maven中央仓库了)

        配置pip源,和配置maven仓库类似:https://www.cnblogs.com/microman/p/6107879.html

      3.Python如何安装库

        例如,安装一个图像处理库Pillow的命令如下:

    pip install Pillow

        // 静待安装完成即可

      4.anaconda

      这是一个基于Python的数据处理和科学计算平台,它已经内置了许多非常有用的第三方库,我们装上Anaconda,就相当于把数十个第三方模块自动安装好了,非常简单易用。

      可以去它的官网下载(或者廖老师分享的百度云下载)

      下载好后再次在命令行运行python可以看到anaconda的信息。这个时候可以直接使用例如numpy等第三方库了!

      更多介绍,参考知乎

      5.模块搜索路径

        使用Import导入模块时:

    import mymodule

        默认会在当前路径、内置模块、已安装第三方模块中搜索模块,内置模块的路径在sys模块的path中:

      pycahrm的console:

    import sys
    sys.path
    ['F:\Program Files\JetBrains\PyCharm 2018.1.1\helpers\pydev', 

    'F:\Program Files\JetBrains\PyCharm 2018.1.1\helpers\pydev',

    'C:\Users\zcc\AppData\Local\Programs\Python\Python36\python36.zip',

    'C:\Users\zcc\AppData\Local\Programs\Python\Python36\DLLs',

    'C:\Users\zcc\AppData\Local\Programs\Python\Python36\lib',

    'C:\Users\zcc\AppData\Local\Programs\Python\Python36',

    'C:\Users\zcc\AppData\Local\Programs\Python\Python36\lib\site-packages',

    'F:\Program Files\JetBrains\PyCharm 2018.1.1\helpers\pycharm_matplotlib_backend',

    'F:\py\lenarPy', 'F:/py/lenarPy']

      cmd命令行

    >>> import sys
    >>> sys.path
    ['', 'C:\Users\zcc\AppData\Local\Programs\Python\Python36\python36.zip', 

    'C:\Users\zcc\AppData\Local\Programs\Python\Python36\DLLs',

    'C:\Users\zcc\AppData\Local\Programs\Python\Python36\lib',

    'C:\Users\zcc\AppData\Local\Programs\Python\Python36',

    'C:\Users\zcc\AppData\Local\Programs\Python\Python36\lib\site-packages'] >>>

        添加自定义搜索路径有两种方式:

      1.临时修改,运行时有效,结束后失效

    >>> import sys
    >>> sys.path.append('/Users/michael/my_py_scripts')

      2.永久修改

      添加环境变量  PYTHONPATH  ,注意只添加自己的路径即可!

     

  • 相关阅读:
    随笔1
    模块
    文件输入流
    一次javaweb登陆实验
    s7八进4
    jdbc连接数据库
    自己找茬
    用栈来求解汉诺塔问题
    用一个栈实现另一个栈的排序
    猫狗队列
  • 原文地址:https://www.cnblogs.com/jiangbei/p/8927708.html
Copyright © 2011-2022 走看看