Phthon八、模块

1.为了在其他程序中重用模块,模块的文件名必须以.py为扩展名。模块使用前用import导入
2.sys模块是标准模块,包含了与Python解释器和它的环境有关的函数。
  当Python执行import sys语句的时候,它在sys.path变量所列目录中寻找sys.py模块。如果找到了这个文件,这个模块的主块中的语句将被运行,然后这个模块将能够被使用 。注意,初始化过程仅在第一次import模块的时候进行。
  sys模块中的argv变量通过使用点号指明(sys.argv)这种方法的一个优势是这个名称不会与任何在你的程序中使用的argv变量冲突。另外,它也清晰地表明了这个名称是sys模块的一部分。sys.argv变量是一个字符串的列表,sys.argv包含了命令行参数的列表,即使用命令行传递给程序的参数。
  我们使用python命令运行using_sys.py模块,后面跟着的内容被作为参数传递给程序。Python把它存储在sys.argv变量中。
  脚本的名称总是sys.argv列表的第一个参数。sys.argv[0]是using_sys.py.Python从0开始计数,而非从1开始。
  sys.path包含输入模块的目录名列表。sys.path的第一个字符串是空的,这个空的字符串表示当前目录也是sys.path的一部分,这与PYTHONPATH环境变量是相同的。这意味着你可以直接输入位于当前目录的模块。否则,你得把你的模块放在sys.path所列的目录之一。
3.字节编译的.pyc文件
  输入一个模块相对来说是一个比较费时的事情,所以Python创建字节编译的文件,这些文件以.pyc作为扩展名。字节编译的文件与Python变换程序的中间状态有关。当你在下次从别的程序输入这个模块的时候,.pyc文件会快得多,因为一部分输入模块所需的处理已经完成了。另外,这些字节编译的文件也是与平台无关的。
4.from..import语句
  如果你想要直接输入argv变量到你的程序中(避免在每次使用它时打sys.),那么可以使用from sys import argv语句。如果想要输入所有sys模块使用的名字,那么你可以使用from sys import *语句。这对于所有模块都适用。一般说来,避免使用而直接使用import
5.模块的_name_
  每个模块都有一个名称,在模块中可以通过语句来找出模块的名称。当一个模块被第一次输入的时候,这个模块的主块将被运行。假如我们只想在程序本身被使用的时候运行主块,而在它被别的模块输入的时候不运行主块,就可以通过模块的__name__属性完成。
  每个Python模块都有它的__name__,如果它是'__main__',这说明这个模块被用户单独运行,如果不是,说明这个模块是被别的模块引用的
  if __name__=='__main__':
print 'This program is being run by itself'
  else:
print 'I am being imported from another module'
6.自定义模块
  确保后缀名是.py
  模块应该和使用它的程序在同一个目录中,或者在sys.path所列目录之一。
  使用点号来使用模块的成员:模块名.成员名
7.dir方法
  你可以使用内建的dir函数来列出模块定义的标识符。标识符有函数、类和变量
  当你为dir()提供一个模块名的时候,它返回模块定义的名称列表。如果不提供参数,它返回当前模块中定义的名称列表。
  使用执行时,定义一个新的变量,变量名=变量值,调用一次dir(),发现加入了,调用del 变量名,再调用dir(),发现被删掉了,再也不能使用了,好像没有存在过一样

你可能感兴趣的:(python,脚本)