zoukankan      html  css  js  c++  java
  • 廖雪峰Python总结3

    1.模块简介

    为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件中,这样每个文件包含的代码相对来说就比较少。一个.py文件就称之为一个模块(Module)。

    使用模块的好处:

    • 提高了代码的可维护性
    • 代码不需要从零开始编写
    • 避免了函数名和变量名冲突(我们在自己编写模块时,不必考虑会和其他模块冲突,但是我们也要注意,不要与内置函数冲突)

    同时引入了包按目录来组织模块的方法。引入了包以后,只要顶层包名不与别人冲突,那么所有的模块都不会与别人冲突。比如同有abc.py,但是一个是hzw.abc.py,一个是xd.abc.py。

    每个包目录下都有一个__init__.py文件,这个文件是必须存在的,否则python就把这个目录当成普通目录,而不是一个包。__init__.py可以是空文件,也可以有Python代码。

    也可以有多级目录。

    2.使用模块

    #!/usr/bin/env python3
    # -*- conding: utf-8 -*-        #第一第二行是标准注释
    
    'a test module'                      #模块的文档注释
    
    __author__ = 'Hzw'              #作者名称

    以上的就是Python的标准文件模块。

    #!usr/bin/env python3
    # -*- coding: utf-8 -*-
    """
    Created on Sun Oct  7 20:34:27 2018
    
    @author: 18292
    """
    
    import sys
    
    def test():
        args=sys.argv
        if len(args)==1:
            print("Hello, World!")
        elif len(args)==2:
            print("Hello",args[2])
        else:
            print("Too many arguement!")
            
    if __name__=='__main__':
        test()

    用命令行运行hello.py看看:

    $ python3 hello.py
    Hello,World!
    $python hello.py Hzw
    Hello, Hzw

    3.作用域

    一个模块中,我们定义了许多函数和变量,但是有的函数和变量我们希望给别人使用,有的函数和变量我们仅仅希望自己在模块内部使用。在python中,是使用_前缀是实现。

    类似于_abc, __abc等

    4.模块搜索路径

    当我们试图加载一个模块时,Python会在指定的路径下搜索对应的.py文件,如果找不到,就会报错。python解释器会搜索当前目录,所有已安装的内置模块和第三方模块,搜索路径放在sys的path变量中:

    若想添加自己的搜索目录:

    • 直接修改sys.path,添加要搜索的目录。(这种方法是在运行时修改,运行结束后失效)。
    • 设置环境变量PYTHONPATH,该环境变量内容会被自动添加到模块搜索路径中。
  • 相关阅读:
    机器学习、图像识别方面 书籍推荐 via zhihu
    网络工具 NetCat
    CSharp读取配置文件的类(简单实现)
    about future
    Google's BBR拥塞控制算法模型解析
    对称加密与非对称加密
    windows平台下新网络库RIO ( Winsock high-speed networking Registered I/O)
    在mac os下编译android -相关文章
    [原创] linux 下上传 datapoint数据到yeelink 【golang版本】同时上传2个数据点
    在 树莓派上使用 c++ libsockets library
  • 原文地址:https://www.cnblogs.com/pythonlearing/p/9751407.html
Copyright © 2011-2022 走看看