Python笔记_第二篇_面向过程_第二部分_6.包

1. 包

  思考:如果不同人的编写模块同名了怎么办?

  解决:为了解决模块命名的冲突,引入了按目录来组织模块的方法,这个目录成为“包”

  特点:引入了包以后,只要丁顶层的包,不与其他人发生冲突,那么模块都不会与别人的发生冲突
  注意:目录只有一个包含“__init__.py”的文件才被认作是一个包,主要是为了避免一些滥竽充数的名字,但是基本上目前这个文件中什么也不用写。

  

  包 ————下面有一个__init__.py
  import a.sunck # 包名.模块
  import b.sunck

  图示:

  注意:一般在IDE的方式底下,自动回添加这么一个文件名

 

2. 入口编写之__name__属性

  模块就是一个可执行的.py文件,一个模块被另一个程序引用。我们不想让模块中的某些代码执行,可以用_name_属性来使程序仅调用模块中的一部分每一个模块都有一个__name__属性。

  其实包的概念非常简单,就是比模块再进行更高一级的模块分类后面在讲到面向对象的时候我们再进行详细的讲解。

  举例说明:

  我们可以定义一个跟C#一样的main函数,这种方法跟C#的方式很像。在IDE中可以打印main,可以自动补齐

def main():
    c = Child(300,100)
    print(c.money,c.faceValue)
    c.play()
    c.eat()
    c.func()

if __name__ == '__main__':
    main()

  这样程序可以直接从main这个函数开始运行,表示一整段程序的入口

posted @ 2019-05-12 20:33  时海涛|Thomas  阅读(147)  评论(0编辑  收藏  举报