Modular Programming with Python 第一章
来源:互联网 发布:mac如何切换任务 编辑:程序博客网 时间:2024/06/07 07:03
重点知识点是包结构的创建和理解
案例一:理解模块和如何引入模块,创建一个文件,命名为stats.py ,具体代码如下:
def init():
global _stats
_stats = {}
def event_occurred(event):
global _stats
try:
_stats[event] = _stats[event] + 1
except:
_stats[event] = 1
def get_status():
global _stats
return sorted(_stats.items())
另外创建一个测试文件,命名为test_stats.py,具体代码如下:
import stats
stats.init()
stats.event_occurred("meal_eaten")
stats.event_occurred("snack_eaten")
stats.event_occurred("meal_eaten")
stats.event_occurred("snack_eaten")
stats.event_occurred("meal_eaten")
stats.event_occurred("diet_started")
stats.event_occurred("meal_eaten")
stats.event_occurred("meal_eaten")
stats.event_occurred("meal_eaten")
stats.event_occurred("diet_abandoned")
stats.event_occurred("snack_eaten")
for event, num_times in stats.get_status():
print("{} occurred {} times".format(event, num_times))
则可以看到输出结果如下:
diet_abandoned occurred 1 times
diet_started occurred 1 times
meal_eaten occurred 6 times
snack_eaten occurred 3 times
知识点总结:我们创建了一个模块stats.py,另外在测试文件中,我们使用关键字import引入模块。
案例二:创建一个具体的包和理解包的结构
下面是一张包的图片
1、在此处我们创建了一个名为animals的包,里面含有6个模块,分别是初始化模块__init__.py,cat.py,cow.py,dog.py,horse.py,sheep.py。其中的初始化模块__init__.py是一个包结构中所必须存在的,可以为空,也可以进行一些初始化的设置。(注意:从py3.3开始可以没有初始化的模块,但是大家的习惯上和保证程序的兼容上考虑,都会使用此模块)
2、我们如何引用此包里面的模块呢?
如:
import animals.cow
animals.cow.speak()
即可。
或者使用:from...import的方法
经典的前端、中间组件、后端模式:
使用模块化编程可以带的好处,包括模块的增加和修改的易用,代码的重复使用率提高。
- Modular Programming with Python 第一章
- Modular Programming with JavaScript-Packt Publishing 2016(读书笔记)
- 2.4 Modular Programming
- Introduction to Concurrent Programming with Stackless Python
- Tutorial on Threads Programming with Python
- Rapid GUI Programming with Python and Qt
- GUI Programming with Python: QT Edition
- Beginning Game Programming for Teens with Python
- Beginning Game Programming for Teens with Python
- learn with python-第一章:编程方法
- 《Object-Oriented Programming With ANSI-C》之第一章(抽象数据类型—信息隐藏)
- Programming F# 第一章(1)
- Windows Programming 第一章 起步
- Premier.Press.Game.Programming.with.Python.Lua.and.Ruby
- Professional Python Frameworks: Web 2.0 Programming with Django and Turbogears
- Getting Started with Python Programming for Mac Users
- 【读书笔记】A primer on scientific programming with python
- Programming Computer Vision with Python (学习笔记一)
- springMVC常用注解
- 支付宝红包地址 每日可领一次 人人可领
- 同步与异步的区别
- unity之C#学习记录
- 深入理解比特币中非强化密钥的不安全原因
- Modular Programming with Python 第一章
- 在docker中部署 oracle
- HashMap源码阅读笔记
- redis-sentinel集群安装
- caffe + matlab2014a安装心得
- 位运算的异或来交换变量
- Android:读取assets目录下文件(二)
- docker入门
- 网络中数据传输过程的分析