zoukankan      html  css  js  c++  java
  • 从0开始的Python学习011模块

    简介


    你已经学习了如何在你的程序中定义一次函数而重用代码。如果你想要在其他程序中重用很多函数,那么你该如何编写程序呢?你可能已经猜到了,答案是使用模块。模块基本上就是一个包含了所有你定义的函数和变量的文件。为了在其他程序中重用模块,模块的文件名必须.py为扩展名。

    模块可以从其他程序 输入 以便利用它的功能。这也是我们使用Python标准库的方法。首先,我们将学习如何使用标准库模块

    使用sys模块


    import sys
    
    print('The command line atguments are:')
    
    for i in sys.argv:
        print(i)
    
    print('
    
    The PYTHONPATH is',sys.path,'
    ')

    运行结果

    如何工作

    首先,我们利用import语句 输入 sys模块。基本上,这句语句告诉Python,我们想要使用这个模块。sys模块包含了与Python解释器和它的环境有关的函数。

    当Python执行import sys语句的时候,它在sys.path变量中所列目录中寻找sys.py模块。如果找到了这个文件,这个模块的主块中的语句将被运行,然后这个模块将能够被你 使用 。注意,初始化过程仅在我们 第一次 输入模块的时候进行。另外,“sys”是“system”的缩写。

    sys模块中的argv变量通过使用点号指明——sys.argv——这种方法的一个优势是这个名称不会与任何在你的程序中使用的argv变量冲突。另外,它也清晰地表明了这个名称是sys模块的一部分。

    from...import语句


    如果你想要直接输入argv变量到你的程序中(避免在每次使用它时打sys.),那么你可以使用from sys import argv语句。如果你想要输入所有sys模块使用的名字,那么你可以使用from sys import *语句。这对于所有模块都适用。一般说来,应该避免使用from..import而使用import语句,因为这样可以使你的程序更加易读,也可以避免名称的冲突。

    模块的__name__


    if __name__ == '__main__':
        print ('This program is being run by itself')
    else:
        print ('I am being imported from another module' )

    运行结果

    每个Python模块都有它的__name__,如果它是'__main__',这说明这个模块被用户单独运行,我们可以进行相应的恰当操作。

    创建自己的模块


    创建你自己的模块是十分简单的,你一直在这样做!每个Python程序也是一个模块。你已经确保它具有.py扩展名了。下面这个例子将会使它更加清晰。

    要使用的模块studyPython015_doc.py

    def printMax(x,y):
        '''Prints the maximum of two numbers.
        The two values must be integers.'''
        x=int(x) # convert to integers, if possible
        y=int(y)
        if x>y:
                print(x,'is maximum')
        else:
                print(y,'is maximum')
    printMax(3,5)
    print (printMax.__doc__)

    使用模块

    import studyPython015_doc
    
    studyPython015_doc.printMax(1,2)

    运行结果

    记住这个模块应该被放置在我们输入它的程序的同一个目录中,或者在sys.path所列目录之一。

    dir()函数


    你可以使用内建的dir函数来列出模块定义的标识符。标识符有函数、类和变量。

    当你为dir()提供一个模块名的时候,它返回模块定义的名称列表。如果不提供参数,它返回当前模块中定义的名称列表

    import studyPython015_doc
    
    studyPython015_doc.printMax(1,2)
    
    print(dir(studyPython015_doc))

    运行结果

    概括


    模块的用处在于它能为你在别的程序中重用它提供的服务和功能。Python附带的标准库就是这样一组模块的例子。我们已经学习了如何使用这些模块以及如何创造我们自己的模块。

    接下来,我们将学习一些有趣的概念,它们称为数据结构。

  • 相关阅读:
    云之家技术文档下载
    原始MAC地址
    如何创建数据中心
    获取金蝶云试用许可
    【分享】工作流支持邮件提醒相关配置
    调试K3网页版需要注意的问题
    excel2010冻结行列
    Delphi 泛型 接口约束的实例 转
    delphi 各新版本特性收集
    Delphi XE Refactor重构功能简单说明 转
  • 原文地址:https://www.cnblogs.com/liuhappy/p/10612973.html
Copyright © 2011-2022 走看看