模块导入的方式:
模块的概念:一个.py文件就称为一个模块
导入模块中函数的方式:
方式一:import 模块名
使用时:模块名.函数名()
方式二 :from 模块名 import 函数名
使用时:函数名()
方式三: from 模块名 import *
使用时:函数名()
方式四:from 模块名 import 函数名 as tt(自定义) 注意原来的函数名将失效
使用时:tt()
可以在模块当中定义一个变量__all__:
使用__all__的影响: 后面的[]里面写什么函数名,使用from 模块名 import *方式导入时导入什么 __all__如果没有这个变量将全部导入(__all__仅限 于from 模块名 import *这种导入方式)
加__all__示例:
1 __all__=["demo"]
2 def demo():
3
4 print("demo")
5
6 def demo1():
7 print("demo1")
运行结果:
In [1]: from TT import *
In [2]: demo()
demo
In [3]: demo1()
-----------------------------------------------------------------------
NameError Traceback (most recent call last)
in
()
----> 1 demo1()
NameError: name 'demo1' is not defined
In [4]:
不加__all__示例:
1 def demo():
2
3 print("demo")
4
5 def demo1():
6 print("demo1")
运行结果:
In [1]: from TT import *
In [2]: demo()
demo
In [3]: demo1()
demo1
包的导入方式
概念:包含了几个py文件....里面在创建一个__init__文件就是包
导入包中函数,以及模块的方式:
方式一:from 包名 import 模块名
使用时:模块名.函数名()
方式二:from 包名.模块名 import 函数名
使用时:函数名()
方式三 :import 包名.模块名
使用的时候 包名.模块名.函数名()
方式四:from 包名 import *
前提是:将 __init__.py 文件中写入__all__变量(写入方式同模块导入的写入方式) 变量当中写入哪个模块则导入哪个模块,不写则什么都不导入
使用时:模块名.函数名()
方式五:import 包名
前提是:在包里面的__init__.py 文件里写入 from . import 模块名 __init__.py里面导入哪个模块 通过本方式就能使用哪个模块
使用时:模块名.函数名()
方式六:import 包名
Python2当中可以在__init__.py文件中写入 Import 模块名 通过import 包名 就可以导入__Init__.py文件中写入的那个模块名(此方法仅限python2)