我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:万喜彩票 > 泛型编程 >

python基础教程 10-11例子如何执行

归档日期:07-22       文本归类:泛型编程      文章编辑:爱尚语录

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  导入模块多次和导入一次的效果是一样的。如果坚持重新载入模块,可以使用内建的reload函数。

  为 “告知” 模块本身是作为程序运行还是导入到其他程序,需要使用__name__变量:

  除了编辑sys.path外,更通用的方法是设置环境变量PYTHONPATH

  当模块存储在文件中时(扩展名.py),包就是模块所在的目录。为了让Python将其作为包对待,它必须包含一个命名为__init__py的文件(模块)。如果将它作为普通模块导入的话,文件的内容就是包的内容。

  查看模块包含的内容,它会将对象(以及模块的所有函数、类、变量等)的所有特性列出。

  import copy# 列表推导式是个包含dir(copy)中所有不以下划线开头的名字的列表。

  它定义了模块的共有接口,在编写模块的时候,像设置__all__这样的技术是相当有用的。

  sys这个模块能够访问与Python解释器联系紧密的变量和函数。部分重要函数和变量如下:

  exit([arg]) 退出当前的程序,可选参数为给定的返回值或错误信息

  os模块提供了访问多个操作系统服务的功能。下表列出一些最有用的函数和变量。另外,os和它的子模块os.path还包含一些用于检查、构造、删除目录和文件的函数,以及一些处理路径的函数(例如,os.path.split和os.path.join让你在大部分情况下都可以忽略os.pathsep)。

  堆(heap)是优先队列的一种。使用优先队列能够以任意顺序增加对象,并且能在任何时间找到最小的元素,也就是说它比用于列表的min方法要有效率得多。下面是heapq模块中重要的函数:

  heapify(heap) 将heap属性强制应用到任意一个列表,将其转换为合法的堆

  元素虽然不是严格排序的,但是也有规则:i位置处的元素总比2*i以及2*i+1位置处的元素小。这是底层堆算法的基础,而这个特性称为堆属性(heap property)。

  双端队列(Double-ended queue)在需要按照元素增加的顺序来移除元素时非常有用。它能够有效地在开头增加和弹出元素,这是在列表中无法实现的,除此之外,使用双端队列的好处还有:能够有效地旋转(rotate)元素。deque类型包含在collections模块。

  time模块所包含的函数能够实现以下功能:获得当前时间、操作时间和日期、从字符串读取时间以及格式化时间为字符串。日期可以用实数或者包含有9个整数的元组。元组意义如下:

  random模块包括返回随机数的函数,可以用于模拟或者用于任何产出随机输出的程序。

  如果需要真的随机数,应该使用os模块的urandom函数。random模块内的SystemRandom类也是基于同样功能。

  提供一个存储方案。shelve的open函数返回一个Shelf对象,可以用它来存储内容。只需要把它当做普通的字典来操作即可,在完成工作之后,调用close方法。

  可选项(在子模式后面加上问号)和重复子模式:例如r(,问号表示出现一次或根本不出现。

  所有的重复运算符都可以通过在其后面加上一个问号变成非贪婪版本,例如:r\*\*(.+?)\*\*

  对于re模块中那些能够对字符串进行模式匹配的函数而言,当能找到匹配项时,返回MatchObject对象。包含了哪个模式匹配了子字符串的哪部分的信息。——这些“部分”叫做组。

  组就是放置在圆括号内的子模式。组的序号取决于它左侧的括号数。组0就是整个模式。

  end([group]) 返回给定组的匹配项的结束位置(和分片一样,不包括组的结束位置)

  functools:能够通过部分参数来使用某个函数(部分求值),稍后再为剩下的参数提供数值。

  difflib:可以计算两个序列的相似程度。还能从一些序列中(可供选择的序列列表)找出和提供的原始序列“最像”的那个。可以用于创建简单的搜索程序。

  timeit、profile和trace:timeit(以及它的命令行脚本)是衡量代码片段运行时间的工具。它有很多神秘的功能,应该用它代替time模块进行性能测试。profile模块(和伴随模块pstats)可用于代码片段效率的全面分析。trace模块(和程序)可以提供总的分析(覆盖率),在写测试代码时很有用。

  itertools:有很多工具用来创建和联合迭代器(或者其他可迭代对象),还包括实现以下功能的函数:将可迭代的对象链接起来、创建返回无限连续整数的迭代器(和range类似,但没有上限),从而通过重复访问可迭代对象进行循环等等。

  getopt和optparse:在UNIX中,命令行程序经常使用不同的选项或开关运行。getopt为解决这个问题的。optparse则更新、更强大。

  open函数的第三个参数(可选)控制文件的缓冲。有缓冲时,只有使用flush或close时才会更新硬盘上的数据。

本文链接:http://apps-n-tabs.com/fanxingbiancheng/827.html

上一篇:python基础在线求解

下一篇:没有了