一,模块,模块导入

模块    import    from ... import ...    循环导入    相对导入    绝对导入    软件开发目录规范    重点:*********************************************        模块的查找顺序:            1,先从内存中找            2,内置中找            3,sys.path中找(环境变量):                    要分清楚谁是执行文件,谁是被导入文件        注意:它里面是一个大列表,里面放了一堆文件路径,第一个路径永远是执行文件。    ***************************************************************    一:模块基础知识:        定义:一系列方法或者功能的结合体            模块的三种来源:                1:内置(python解释器自带的)                2:第三方(别人写的)                3:自定义的(自己写的)            模块的四种表现形式:                1, 文件也可以作为模块(一个py文件也可作为一个模块)                2,把一系列的模块组织在一起的文件夹                    文件夹下有一个__init__.py文件,包:就是一系列py文件的结合体                3,被编译为共享库或DLL的C或C++扩展(了解)                4.使用C编写并连接到python解释器的内置模块            使用模块的意义:                1,拿来主义,极大的提高开发效率                 2,使用自定义模块:重新内容较大时,可以分为不同的模块                                    便于查找,修改,调用,维护 ,降低成本            如何使用:(注意)                一定要区分那个是执行文件,那个是被导入文件    二:import        1,导入模块:(import.模块名)                import.time            注意:导入多个模块时,import os,time,md   (不推荐)                推荐用下面这种:(几个模块没有联系的情况下 应该分多次导入)                import time                import os                import sys                              1,通常导入模块的句式会写在文件的开头                2,当模块名字比较复杂的情况下 可以给该模块名取别名         ***   1.只要你能拿到函数名 无论在哪都可以通过函数加括号来调用这个函数(会回到函数定义阶段 依次执行代码)         ***   2.函数在定义阶段 名字查找就已经固定死了 不会因为调用位置的变化而改变    三:from ...import...        from md import money,read,change        from md import money         注意:第二次又导入模块money,或者多次导入时,会沿用第一次导入时创建的名称空间去直接查找结果(沿用第一次的结果)            1,首先会创建执行文件md1.py的名称空间                首次导入md.py文件的模块时                    1,运行md.py                    2,将产生的名字存放到md.py 名称空间中                    3,直接拿到指向模块md.py名称空间中某个值得名字        # 补充            from md1 import *  # 一次性将md1模块中的名字全部加载过来 不推荐使用 并且你根本不知道到底有哪些名字可以用            print(money)            print(read)            print(change)        注意:            __all__可以指定当所在py文件被当做模块导入的时候            可以限制导入者能够拿到的名字个数            money = 1000            def read1():              print(‘md‘,money)            def read2():              print(‘md模块‘)              read1()            def change():              global money              money = 0            __all__ = [‘money‘,‘read1‘,‘read2‘]    四:循环导入:        1,循环导入在程序实际阶段就应该避免        2,解决循环导入的问题:                1,将循环导入的句式写在文件最下方                2,函数内导入模块    五:绝对导入和相对导入:*******        绝对导入必须依据执行文件所在的文件夹路径为准            1.绝对导入无论在执行文件中还是被导入文件都适用

        相对导入            .代表的当前路径            ..代表的上一级路径            ...代表的是上上一级路径

            注意相对导入不能再执行文件中使用*******            相对导入只能在被导入的模块中使用,使用相对导入 就不需要考虑            执行文件到底是谁 只需要知道模块与模块之间路径关系    六:项目目录规范:            1,bin>>start   (执行>>>启动文件)            2,conf>> settings (公共>>>配置文件)            3,core>> src      (主程序>>功能逻辑文件)            4,lib>> common    公共的资源方法            5, db>> header     数据库   数据资源文件            6,log             日志补存:    print(__name__)    当文件被当做执行文件执行的时候__name__打印的结果是__main__    当文件被当做模块导入的时候__name__打印的结果是模块名(没有后缀)    def func1():        print(‘1243243‘)    def func2():        print(‘你最帅‘)    if __name__ == ‘__main__‘:        func1()        func2()

原文地址:https://www.cnblogs.com/Fzhiyuan/p/11196462.html

时间: 2024-11-11 12:29:27

一,模块,模块导入的相关文章

python模块以及导入出现ImportError: No module named 'xxx'问题

python模块以及导入出现ImportError: No module named 'xxx'问题 python中,每个py文件被称之为模块,每个具有__init__.py文件的目录被称为包.只要模 块或者包所在的目录在sys.path中,就可以使用import 模块或import 包来使用 如果你要使用的模块(py文件)和当前模块在同一目录,只要import相应的文件名就好,比 如在a.py中使用b.py:  import b 但是如果要import一个不同目录的文件(例如b.py)该怎么做

python模块的导入以及模块简介

一.模块的定义及类型 1.定义 模块就是用一堆的代码实现了一些功能的代码的集合,通常一个或者多个函数写在一个.py文件里,而如果有些功能实现起来很复杂,那么就需要创建n个.py文件,这n个.py文件的集合就是模块 2.类型 1)自定义模块,自己写的实现自己某些功能需求的.py文件集合 2)导入的模块 在你安装python之后,它自己内部的lib文件下就有很多模块可以用,导入后就可以使用,通常路径是C:\Python27\Lib   (27是版本号,如果是3.5的版本就是C:\Python35\L

cacti安装和第三方模块的导入

Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具.Cacti是通过 snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数.它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构.host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善.界面友好.软件 Cacti 的发展是基于让 RRDTool 使用者更方便使用该软件,除了基本的 Snmp 流量

Python包和模块的导入问题

模块--代码封装 模块是Python组织代码的基本方式.Python的脚本都是用扩展名为py的文本文件保存,一个脚本可以单独运行,也可以导入另一个脚本中运行,当脚本被导入运行时,我们将其称为模块(module).就是说,我们在python里写的所有代码文件都可以叫模块. 导入的时候,模块名与脚本的文件名相同,例如我们编写了一个名为items.py 的脚本,则在另外一个脚本中用import item语句来导入它. windows环境下在python中查看安装有哪些模块 >>> import

python模块以及导入出现ImportError: No module named ‘xxx’问题

首先来说,这个问题是我用pycharm4.5进行开发的,我在做python的模块与函数单元的例子. 需要建一个模块名字叫myModule 于是我就写了一个,挺简单的 def arithmetic(x=1, y=1, operator="+"): result={ "+":x+y, "-":x-y, "*":x*y, "/":x/y } return result.get(operator) class My

模块的导入和使用

一 模块 3.1 import 3.2 from ... import... 3.3 把模块当做脚本执行 3.4 模块搜索路径 3.5 编译python文件 二 包 2.2 import 2.3 from ... import ... 2.4 __init__.py文件 2.5  from glance.api import * 2.6 绝对导入和相对导入 2.7 单独导入包 一 模块 1 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py

ParisGabriel:Python全栈工程师(0基础到精通)教程 第二十课(包、模块 的导入)

$ pip3 install tensorflow : 第三方模块 tensorflow 的安装 电脑必须有网 命令行自动下载安装dir(模块名): 查看模块所有属性 自定义模块导入 示例: 自定义模块的实现方法 def myfac(n): print('正在计算', n, '的阶乘') def mysum(n): print("正在计算1+2+3+...+%d的和" % n) name1 = "Audi" name2 = "TESLA" pri

Learning-Python【16】:模块的导入使用

一.什么是模块 模块就是一系列功能的集合体,一个模块就是一个包含了Python定义和声明的文件,文件名就是模块名字加上.py的后缀. 模块有三种来源: 1.内置的模块 2.第三方的模块 3.自定义模块 模块的四种通用类别: 1.使用Python编写的代码(.py文件) 2.已被编译为共享库或DLL的C或C++扩展 3.把一系列模块组织到一起的文件夹(注:文件夹下有一个__init__.py文件,该文件夹称之为包) 4.使用C编写并链接到Python解释器的内置模块 二.为何要用模块 1.使用内置

模块的导入

from_import.py #import my_module from my_module import login #不是python解释权发现的错误,而是pycharm根据他的一些判断而得出的结论 #from my_module import login # 1.找到my_module模块 #2. 开辟一块属于这个模块的命名空间 #3.执行这个模块 #------from my_module执行完了 #import login知道了要import的是login这个名字,那么就会在本文件中

requests模块的导入

01 利用pycharm自己提供的模块库导入(优点:好理解易操作 缺点:有小部分的模块导入不成功)如图:file -----> settings -----> project:(这里的字是你当前Python代码所在的文件夹名)按照第5步的install Package就可以安装完成;02 cmd下的操作(是个好方法,但会出现好多问题) 其他模块的安装同理,(程序猿很无聊多多指教交流) 原文地址:http://blog.51cto.com/13747953/2321389