1.import 模块名

2.from 模块名 import 类名(或方法名或全局变量)

3.from 模块名 import *   导入模块名下的所有类名,方法,全局变量

4.from 模块名 import 类名(或方法名或全局变量) as 别名    原来的名称太长,给它起个别名

5.定位模块:

  当你导入一个模块,Python解析器对模块位置的搜索顺序是:

  1. 当前目录
  2. 如果不在当前目录,Python则搜索在shell变量PYTHONPATH下的每个目录。
  3. 如果都找不到,Python会察看默认路径。UNIX下,默认路径一般为/usr/local/lib/python/
  4. 模块搜索路径存储在system模块的sys.path变量中。变量里包含当前目录,PYTHONPATH和由安装过程决定的默认目录。

6.自定义模块方法一

(1)首先认识一个变量 __name__

  __name__这个系统变量显示了当前模块执行过程中的名称,如果当前程序运行在这个模块中,__name__ 的名称就是__main__如果不是,则为这个模块的名称。
  __main__一般作为函数的入口,类似于C语言,尤其在大型工程中,常常有if __name__ == "__main__":来表明整个工程开始运行的入口。

使用这个变量的结果可以判断是直接执行的python脚本还是被引入执行的,从而能够有选择性的执行测试代码

例子:

# 加法运算
def my_sum(a,b):
return a+b # 1.开发完成之后需要自测
# 1.1一般需要创建一个函数 来完成自测
def main():
# 定义一个变量
ret=my_sum(10,20)
print(ret) # 书写格式一般都会这么些(开发常用于测试或者作为程序的入口)
# 默认情况下,在本模块内执行这个模块,当前的这个python的变量__name__的值为__main__
if __name__ == '__main__':
main()

7.自定义模块方法二:

(1)使用__all__,只有使用from xxx import * 的时候__all__才能产生作用。如果在一个模块中,定义了很多的类,方法,全局变量,如果使用from xxx import * 的方法使用该模块,而又不想让使用模块中的某些类,方法或者全局变量,那么就需要在该模块里写上__all__=[],在列表里写上允许导入的类,方法,全局变量,如果不在这个列表里注册,就不能使用该类,方法或者全局变量了。

__all__=["name","sum","Student"]

==================================

python中的包

(1)python中的包会有一个__init__.py模块。在python3.x没有__init__.py也可以正常使用,但是在python2.x中必须有__init__.py

(2)在包中的__init__.py中定义all=[在这里面添加你想要导入的模块名]

(3)同理在每个模块下__all__=[]添加你允许导入的类名,方法名,全局变量

(4)使用from 包名.模块名 import *    导入模块(1)(2)(3)才能生效

其他导入方法:import 包名.模块名

最新文章

  1. kafka源码分析之二客户端分析
  2. yii 核心类classes.php详解(持续更新中...)
  3. 学韩顺平老师linux教程--笔记
  4. FIleText转换为JSONObject对象
  5. Linux学习笔记-Ubuntu添加右键菜单打开终端
  6. hdu 1029
  7. windows 7 打开控制面板的命令
  8. ASP.NET从数据库中取出数据,有数据的复选框为选中
  9. 详细理解 > /dev/null 2>&1
  10. Android混淆打包配置总结
  11. jquery获取value值
  12. Enabling Active Directory Authentication for VMWare Server running on Linux《转载》
  13. JavaScript的实现
  14. Ant Design UI组件
  15. jboss7.1.1相关error及解决办法
  16. 【codeforces 983E】NN country
  17. leetcode — symmetric-tree
  18. C#序列化与反序列化。
  19. Firefly-RK3399笔记
  20. delphi 中OutputDebugString 函数的妙用(转载)

热门文章

  1. v:bind指令对于传boolean值的注意之处
  2. Android学习14
  3. Go_type
  4. JS高级---原型的简单的语法
  5. 操作word
  6. sqlserver查询使用with(nolock)详解
  7. java中对象的初始化问题
  8. mui 获取本地APP本版号的两种方式
  9. 2.2.FastDFS-单机拆分版-存储器安装配置
  10. jquery--获取input radio单选框的值