python核心编程2 第十二章 练习

发布时间:2019-05-15 22:15:18编辑:auto阅读(2158)

    12–5. 使用 __import__().
    (a) 使用 __import__ 把一个模块导入到你的名称空间。 你最后使用了什么样的语法?

    (b) 和上边相同, 使用 __import__() 从指定模块导入特定的名字。

    1 module = __import__('sys', fromlist=['path'])
    2 path = module.path
    3 print(module.modules['sys'])
    4 print(path)

    12–6. 扩展导入。
    创建一个 importAs() 函数. 这个函数可以把一个模块导入到你的名称空间, 但使用你指定的名字, 而不是原始名字。 例如, 调用 newname=importAs('mymodule') 会导入mymodule , 但模块和它的所有元素都通过新名称 newname 或 newname.attr 访问。 这是 Python2.0 引入的扩展导入实现的功能。

    1 def importAs(module):
    2     return __import__(module)
    3 
    4 if __name__ == '__main__':
    5     sys = importAs('sys')
    6     print(sys.path)

    12–7. 导入钩子。

    研究 PEP 302 的导入钩子机制. 实现你自己的导入机制, 允许编码你的模块(encryption, bzip2, rot13, 等), 这样解释器会自动解码它们并正确导入。你可以参看 zip文件导入的实现 (参阅 第 12.5.7 节)。

     查看:https://blog.csdn.net/birdzb/article/details/50726485

关键字

上一篇: 练习

下一篇: Python爬虫入门教程 44-100