Python中的包

什么是python的包与模块

  • 就是文件夹中还可以有,也就是文件夹
  • 一个个python文件就是模块

包的身份证

  • __init__.py每一个python包必须存在的文件

如何创建包

  • 要有一个主题,明确功能,方便使用
  • 层次分明,调用清晰

包的导入 import

功能
  • 将python中的某个包(或模块),导入到当前的py文件中
用法
  • import package
参数
  • package:被导入的包的名字
要求
  • 只会拿到对应包__init__中的功能当前模块下的功能

模块的导入 form..import..

功能
  • 通过从某个包找到对应的模块
用法
  • form package import module
参数
  • package:来源的包名
  • module:包中的目标模块
1
2
3
4
举例:
form animal import dog
dog.run

  • 我们通过 form import 直接找到了dog模块

  • 所以只需要使用dog模块用.的方式找到里面的方法并执行

  • as可以取别名

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# coding:utf-8

from animal import dog_run, cat_run
# from animal import cat_run
from animal.cat.action import cat_name
# from animal.cat.action import Cat
#
# cat = Cat()
# cat.run()

dog_run_result = dog_run()
cat_run_result = cat_run()

print(dog_run_result)
print(cat_run_result)
print(cat_name)

1
2
3
4
5
# coding:utf-8

def animal():
return 'i am animal module function'

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# coding:utf-8

cat_name = '米粒儿'

def roar():
return 'cat roar'


def dump():
return 'cat jump'


def run():
return 'cat running'

1
2
3
4
5
6
7
8
9
10
11
12
13
# coding:utf-8

def roar():
return 'dog roar'


def dump():
return 'dog jump'


def run():
return 'dog running'

1
# 空
1
# 空
1
2
3
4
5
# coding:utf-8

from .cat.action import run as cat_run
from .dog.action import run as dog_run