20161220py学习笔记:模块/标准库/set/heapq
1 模块

1.1引入外部模块
import sys
sys.path.append('位置')
import 所需模块
1.2使用条件测试代码的模块
__name__的值就是__main__
if __name__='__main__':这个代码的意思是,如果该模块当做程序独立运行,那if句子为True,if句子被执行。如果当做模块,if句子为False,不被执行。
1.3 查找路径
>>>import sys,pprint
>>>pprint.pprint(sys.path)
1.4包
也就是文件夹,文件夹内包含__init__.py的文件
1.5探究模块
dir(model)
model.__all__,__all__定义了公共接口,from model import *,并不是引入dir(model)中所有的函数,而是引入了model.__all__中显示的函数。

2 标准库
2.1 os
os.system('C:\Foxmail\Foxmail.exe')
webbrowser
webbrowser更适合启动浏览器。
>>>import webbrowser
>>>webbrowser.open('url')
3 set/heapq/double—ended queue
3.1 heap property(堆属性)
定义:i位置处的元素总比2*i 以及2*i+1位置处的元素小。
#heap应该和二叉树有关。
3.2 nlargest和nsmallest
>>>heap=[1,2,3,4,5,6,7,8]
>>>heap_new=heapify(heap)
>>>nlargest(len(heap_new),heapnew)
通过这串代码,我发现nlargest和nsmallest的作用实则相当于切片加sorted。

浙公网安备 33010602011771号