Python 语言及其应用 Chapter_5_Note_2 包


我们已使用过单行代码、多行函数、独立程序以及同一目录下的多个模块。为了使Python
应用更具可扩展性,你可以把多个模块组织成文件层次,称之为包。
也许我们需要两种类型的天气预报:一种是次日的,一种是下周的。一种可行的方式是新
建目录sources,在该目录中新建两个模块daily.py 和weekly.py。每一个模块都有一个函数
forecast。每天的版本返回一个字符串,每周的版本返回包含7 个字符串的列表。
下面是主程序和两个模块(函数enumerate() 拆分一个列表,并对列表中的每一项通过for
循环增加数字下标)。
主程序是boxes/weather.py
from sources import daily, weekly
print("Daily forecast:", daily.forecast())
print("Weekly forecast:")
for number, outlook in enumerate(weekly.forecast(), 1):
print(number, outlook)


模块1 是boxes/sources/daily.py
def forecast():
'fake daily forecast'
return 'like yesterday'


模块2 是boxes/sources/weekly.py


def forecast():
"""Fake weekly forecast"""
return ['snow', 'more snow', 'sleet',
'freezing rain', 'rain', 'fog', 'hail']


还需要在sources 目录下添加一个文件:init.py。这个文件可以是空的,但是Python 需要
它,以便把该目录作为一个包。
运行主程序weather.py:

$ python weather.py
Daily forecast: like yesterday
Weekly forecast:
1 snow
2 more snow
3 sleet
4 freezing rain
5 rain
6 fog
7 hail

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值