zoukankan      html  css  js  c++  java
  • python导入模块和包的使用

    做项目的时候经常会要求做到模块化管理,即同样功能的代码放到同一个文件夹下,以便于方便管理,相信很多人对模块的引用都模糊不清,今天鄙人在这里就总结下。

    一、模块导入的使用

      在同一个文件夹下有两个文件分别是main.py和module_file.py

      module_file.py文件的内容

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    
    name = 'Eric.yue'
    
    def running():
        print 'I am is running'
    
    
    def watching():
        
        print 'I am watching'
    

     那么在main中调用module_file的方法有几种:

     1 #1、直接导入使用,导入的其实是模块(或者说赋给module_file这个变量),所以访问的时候要加模块名
     2 
     3 import module_file
     4 
     5 #访问其属性
     6 print module_file.name  #Eric.yue
     7 
     8 #访问其方法
     9 module.running()
    10 module.watching()
    11 
    12 #2、如果要直接调用
    13 from module_file import *
    14 #如果只想导入部分模块
    15 from module_file import name,watching
    16 
    17 running()
    18 watching()
    19 
    20 #如果有方法和main中的方法有冲突那么需要这么做
    21 from module_file import running as mod_running
    22 
    23 mod_running()

    二、导入包的使用

      python中的包 本质上就一个文件夹,里面必须包含一个__init__.py的文件。其实就是用来从逻辑上组织代码

      创建一个包文件夹,package  里面包含一个__init_.py文件,在创建一个文件pack.py

    #!/usr/bin/env python
    #-*-coding:utf-8-*-
    
    def pack_func():
        print 'the first pack_func'
    

     那么如果在main中调用package包的内容(导入包的本质就是执行该包下的__init__.py文件)

    1 #!/usr/bin/env python
    2 # -*- coding:utf-8 -*-
    3 
    4 from package import pack
    5 
    6 pack.pack_func()

    如果该包在多级目录下那么调用的时候,需要用点来做目录连接

    1 #!/usr/bin/env python
    2 # -*- coding:utf-8 -*-
    3 
    4 from package.package_second import second
    5 
    6 second.func_second()
  • 相关阅读:
    SQL中使用WITH AS提高性能
    电子邮件原理
    DirectoryEntry 活动目录的使用
    Entity Framework 教程(转)
    用sp_addlinkedserver建立链接服务器(sql server2008中通过测试)
    SQL2008和SQL2000可以跨服务器连接查询的测试实例
    Linq快速入门——扩展方法
    easyui 很好很强大
    【转】Jmeter内存溢出处理方式记录
    【转】Jmeter安装成功后的目录介绍
  • 原文地址:https://www.cnblogs.com/gide/p/6069592.html
Copyright © 2011-2022 走看看