2025年3月26日 星期三 甲辰(龙)年 月廿五 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > Python

Python包的使用

时间:10-01来源:作者:点击数:45

包对应的是一个目录而不是一个源文件,包目录下一定要存在一个名为 __init__.py 的文件。如我们可以创建下面的目录结构:

$ tree pkgDemo1/
pkgDemo1/
└── __init__.py

这里 pkgDemo1 目录就是一个包。

  • >>> import pkgDemo1
  • >>> pkgDemo1
  • <module 'pkgDemo1' from '/pkgDemo1/__init__.py'>

__init__.py 现在就是一个模块,可以使用前面介绍的方法来使用其定义的内容。如修改 __init__.py 的内容,让其包含以下内容:

  • """ this is the pakage demo file
  • """
  • name = "pkgDemo1"
  • author = "love.pythoh"

现在就可以访问这些新加的内容了:

  • >>> import pkgDemo1
  • >>> pkgDemo1.name
  • 'pkgDemo1'
  • >>> pkgDemo1.author
  • 'love.pythoh'
  • >>> pkgDemo1.__doc__
  • ' this is the pakage demo file\n'

一般来说,一个包包含多个模块。例如在同一个目录下放入两个文件 mod1.py 和 mod2.py,它们的结构如下:

  • $ tree pkgDemo1/
  • pkgDemo1/
  • ├── __init__.py
  • ├── mod1.py
  • └── mod2.py

mod1.py 的内容如下:

  • """ this is mod1.py
  • """
  • name = "pkgDemo1.mod1"
  • def hello():
  • print("hello from pkgDemo1.mod1")

mod2.py 的内容如下:

  • """ this is mod2.py
  • """
  • name = "pkgDemo1.mod2"
  • def hello():
  • def hello():
  • print("hello from pkgDemo1.mod2")

下面来使用这个包的内容,代码如下:

  • >>> import pkgDemo1.mod1 # 引入mod1,注意前面的包名
  • >>> import pkgDemo1.mod2 # 引入mod2,注意前面的包名
  • >>> pkgDemo1.mod1
  • <module 'pkgDemo1.mod1' from 'pkgDemo1/mod1.py'>
  • >>> pkgDemo1.mod2
  • <module 'pkgDemo1.mod2' from '/pkgDemo1/mod2.py'>
  • >>> pkgDemo1.mod1.hello() # 带上包名和模块名
  • hello from pkgDemo1.mod1
  • >>> pkgDemo1.mod2.hello()
  • hello from pkgDemo1.mod2

 

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门