老男孩第十四期Python学习班之Day05

2017-01-09 14:11:12来源:oschina作者:Asktao人点击

一、小鸡汤推荐各种电影 — —!大概有20几部。


二、ATM作业分析设计思想 —— 解耦


三、定义模块的定义:用来从逻辑上组织python代码(变量、函数、类、逻辑:实现一个功能)。本质就是一个*.py文件。包的定义:用逻辑上组织模块,本质是一个目录(必须带有一个__init__.py的文件)


四、模块的导入

import module_name # 调用时,module_name.func()
import module_name1, module_name2
from module_name import * # 导入模块下所有代码,调用时不再用module_name.func()
from module_name import say_hello # 导入模块中的say_hello方法。调用时say_hello()
from module_name import func1, func2, func3 # 多个导入
module_name import say_hello as m1_sayhello # 调用时m1_sayhello()。 as 别名。

五、import的本质(路径搜索,搜索路径)本质:就是把python文件解释一遍。导入包的本质:就是执行包里面的 __init__.py 文件


六、优化尽量使用from xx import xxx的方式,这样不会多次查找。


七、模块的分类

标准库
第三方模块
自定义模块

八、标准库


1、time与datetime:表示是时间的方式:1、时间戳;2、格式化;3、元祖(struct_time)九个元素。


2、random


3、os


4、sys


5、shutil


6、json与pickle


用于序列化的两个模块

json,用于字符串 和 python数据类型间进行转换
pickle,用于python特有的类型 和 python的数据类型间进行转换

Json模块提供了四个功能:dumps、dump、loads、load


pickle模块提供了四个功能:dumps、dump、loads、load


7、shelve


8、XML


9、ConfigParser


10、hashlib


11、re


作业:


开发一个简单的python计算器

实现加减乘除及拓号优先级解析
用户输入1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568/14 )) - (-4*3)/ (16-3*2) )等类似公式后,必须自己解析里面的(),+,-,*,/符号和公式(不能调用eval等类似功能偷懒实现),运算后得出结果,结果必须与真实的计算器所得出的结果一致

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台