zoukankan      html  css  js  c++  java
  • python 教程 第六章、 模块

    第六章、 模块

    1) 模块

    sys模块

    字节编译的.pyc文件,优化编译后生成pyo文件

    2) from..import语句

    import sys 
    print 'The command line arguments are:' 
    for i in sys.argv: 
        print i 
    print '\n\nThe PYTHONPATH is', sys.path, '\n' 

    3) __name__

    只想在程序本身被使用的时候运行主块,而在它被别的模块输入的时候不运行主块

    from sys import * 
    print 'The command line arguments are:' 
    for i in argv: 
        print i 
    print '\n\nThe PYTHONPATH is', path, '\n'

    4) 制造自己的模块

    #!/usr/bin/python 
    # Filename: mymodule.py 
    def sayhi(): 
        print 'Hi, this is mymodule speaking.' 
    version = '0.1' 
    # End of mymodule.py 
    #!/usr/bin/python 
    # Filename: mymodule_demo.py 
    import mymodule 
    mymodule.sayhi() 
    print 'Version', mymodule.version 

    5) reload模块重载

    >>> import changer    #导入模块changer.py文件 
    >>> changer.printer() # No effect: uses loaded module 
    First version

    ##修改changer.py的代码##

    >>> from imp import reload 
    >>> reload(changer)   # Forces new code to load/run 
    <module 'changer' from 'changer.py'> 
    >>> changer.printer() # Runs the new version now 
    reloaded: After editing

    6) dir()函数

    列出模块定义的标识符。标识符有函数、类和变量。

    >>> import sys 
    >>> dir(sys) 
    ['__displayhook__', '__doc__', '__excepthook__', '__name__', '__package__', '__stderr__', '__stdin__', '__stdout__', '_clear_type_cache', '_current_frames', '_getframe', 'api_version', 'argv', 'builtin_module_names', 'byteorder', 'call_tracing', 'callstats', 'copyright'…] 
    >>> 

    如果不提供参数,它返回当前模块中定义的名称列表。

    >>> dir() 
    ['__builtins__', '__doc__', '__name__', '__package__', 'sys'] 
    >>> a = 1 
    >>> dir() 
    ['__builtins__', '__doc__', '__name__', '__package__', 'a', 'sys'] 
    >>> del a 
    >>> dir() 
    ['__builtins__', '__doc__', '__name__', '__package__', 'sys'] 
    >>> 

    列出数据类型的可使用的函数,help函数的简体版

    >>> dir(dict) 
    ['__class__', '__cmp__', '__contains__', '__delattr__', '__delitem__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values', 'viewitems', 'viewkeys', 'viewvalues']

    7) 包导入

    import dir1.dir2.mod #from dir1.dir2.mod import x

    dir1在PYTHONPATH路径中

    dir1目录/dir2目录/mod.py文件

    dir1目录和dir2目录下都必须含有__init__.py

    8) 修改模块搜索路径

    sys.path.append('c:\\lp4e\\examples')
    服务项目 技术咨询 微信图书 微信视频 微信代码 定制开发 其他福利
    服务入口 QQ群有问必答
    查看详情
    一本书解决90%问题
    查看详情
    微信开发视频
    小程序开发视频
    免费代码
    ¥1888阿里云代金券
    查看详情
    营销工具
    微信特异功能
  • 相关阅读:
    解决Navicat导出Excel数字为科学计数法问题
    maven pom.xml文件中properties标签介绍
    Maven中配置maven-compiler-plugin 插件
    使用Spring Boot 优雅地发送邮件
    Intellij IDEA 设置JDK版本
    MySQL order by if()或order by in()条件排序
    Eclipse工具的简单使用
    Java中的四种权限修饰符及六种非访问修饰符(简识)
    原来你的电脑就是这样被木马远控了!!!(转载)
    记Java中有关内存的简单认识
  • 原文地址:https://www.cnblogs.com/txw1958/p/2209987.html
Copyright © 2011-2022 走看看