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。

 

posted @ 2016-12-20 15:23  饶慕洵  阅读(125)  评论(0)    收藏  举报