官术网_书友最值得收藏!

How to do it...

  1. When making a package, follow the normal filesystem hierarchy in terms of directory structure; that is, modules that relate to each other should be placed in their own directory.
  2. A possible package for a video file handler is shown in package_tree.py:
      video/                  # Top-level package
__init__.py # Top-level initialization
formats/ # Sub-package for file formats
__init__.py # Package-level initialization
avi_in.py
avi_out.py
mpg2_in.py
mpg2_out.py
webm_in.py
webm_out.py
effects/ # Sub-package for video effects
specialFX/ # Sub-package for special effects
__init__.py
sepia.py
mosaic.py
old_movie.py
glass.py
pencil.py
tv.py
transform/ # Sub-package for transform effects
__init__.py
flip.py
skew.py
rotate.py
mirror.py
wave.py
broken_glass.py
draw/ # Sub-package for draw effects
__init__.py
rectangle.py
ellipse.py
border.py
line.py
polygon.py
  1. But, what happens if you were already in the specialFX/ directory and wanted to import from another package? Use relative paths to walk the directory and import using dots, just like changing directories on the command-line:
      from . import mosaic
      from .. import transform
      from .. draw import rectangle
主站蜘蛛池模板: 基隆市| 胶南市| 平南县| 德格县| 陈巴尔虎旗| 呈贡县| 诏安县| 六枝特区| 巢湖市| 双桥区| 阿尔山市| 梁平县| 东城区| 耒阳市| 大足县| 康乐县| 大足县| 瑞昌市| 玛纳斯县| 绥中县| 勃利县| 京山县| 泸州市| 舟曲县| 屏东县| 巴彦淖尔市| 永仁县| 宁远县| 兰州市| 崇文区| 华宁县| 开远市| 商南县| 仁化县| 浏阳市| 铜陵市| 广丰县| 辽宁省| 宜兰市| 翁源县| 江都市|