Python基础知识:模块、包

    技术2022-07-10  139

    dir()内置函数可以查看一个模块里面的所有函数名称;导入模块的时候可以使用as关键字来给模块起一个别名(别名最好使用大驼峰命名法);from import只导入部分工具,这种方式在调用具体的函数的时候不需要指定模块名.来调用;如果使用from import导入的模块有两个相同的工具(函数),则后导入的会覆盖前面导入的函数;如果确实想要都用到这两个相同名字的函数,可以使用起别名的方式解决;

    from python.exception.测试模块1 import say_hello as Moudel_say_hello from python.exception.测试模块2 import say_hello

    say_hello()  # 调用的是模块2的say_hello() Moudel_say_hello()  # 调用的是模块1的say_hello()

    领取Python学习资料可以加小编的微信:tz2020jd

    from import *的导入方式,这样和直接import 模块名看似是一样的,但是这种方式和from import一样,调用的时候不需要指定 模块名.,还是很方便的,但是开发中不推荐使用,因为有可能多个模块之间有相同的函数,这样也会导致覆盖的问题;给文件起名千万不要和系统的文件模块名字相同,因为搜索模块的顺序是先从当前目录下搜索模块,最后才是python解释器中的模块;

    import random # 同一个目录下不要有 random.py这个文件 ,不然就会先导入同目录下的,而不会导入python库中的 print(random.__file__)

    num = random.randint(0, 10)

    print(num)

    __name__属性以及导入模块和测试的问题

    例如在python/exception包下面有两个文件测试模块3.py和py10___name__属性的使用.py两个文件: py10___name__属性的使用.py代码如下:

    def say_hello():     print("你好!")

    def main():     say_hello()  # 测试

    if __name__ == "__main__":  # 如果不加上这个,导入这个模块的时候就会从上到下依次执行代码     print(__name__)     print("小明开发的模块!")     main() 测试模块3.py文件:

    import python.exception.测试模块3

    print("*" * 5) 运行结果不会输出py10___name__属性的使用.py中的测试代码。

    包的概念: ①包是含有多个模块的特殊目录;②包下有一个__init__.py文件; 在开发中,希望导入一个包,这个包中有多个模块,这时要使用包中的某个模块,需要在__init__.py中使用from . import 模块名的方式"注册"这个模块,别人才能使用这个模块;  

    例如: python/py_message包下面有三个文件: __init__.py、send_message.py、receive_message.py三个文件,外界想使用后面两个文件: 则三个文件的代码如下 : ①__init__.py文件:

    from . import send_message from . import receive_message

    ②send_message.py文件:

    def send(text):     print("正在发送 %s" % text)

    ③receive_message.py文件:

    def receive():     return "这是来自 100XX的短信!";

    测试文件(和上面三个文件不在同一个包下):

    import python.py_message  # 导入的不是一个模块,而是一个包

    python.py_message.send_message.send("hello") txt = python.py_message.receive_message.receive() print(txt)

    制作发布压缩包三个步骤: ①创建setup.py文件,关于这个文件格式看官方文档;②构建模块,在终端执行python3 setup.py build;③生成发布压缩包,在终端执行python3 setup.py sdist;

    安装模块: 可以将包中的模块安装到python系统中,只需要两步: ①解压 tar -zxvf 压缩包名.tar.gz;②安装sudo python3 setup.py install;

    卸载模块: 直接在安装的目录删除即可(python安装的目录的模块下);

    安装第三方的包: sudo pip3 installl ...;  

    领取Python学习资料可以加小编的微信:tz2020jd

    Processed: 0.014, SQL: 9