zoukankan      html  css  js  c++  java
  • day24 包

     1 # 把解决一类问题的模块会被放在一个文件夹里面,即包
     2 
     3 # import os
     4 # os.makedirs('glance/api')
     5 # os.makedirs('glance/cmd')
     6 # os.makedirs('glance/db')
     7 # l = []
     8 # l.append(open('glance/__init__.py','w'))
     9 # l.append(open('glance/api/__init__.py','w'))
    10 # l.append(open('glance/api/policy.py','w'))
    11 # l.append(open('glance/api/versions.py','w'))
    12 # l.append(open('glance/cmd/__init__.py','w'))
    13 # l.append(open('glance/cmd/manage.py','w'))
    14 # l.append(open('glance/db/models.py','w'))
    15 # map(lambda f:f.close() ,l)
    16 
    17 # 导入包的原则:.的左边必须是一个包
    18 # 导入包的方法和模块的引入一致
    19 # 但是如果使用from的方式在最后的import后面不能再有点
    20 # import glance.api.policy as police
    21 # police.get()
    22 # from glance.api import policy
    23 # # from glance import api.policy        # 报错
    24 # policy.get()
    25 # 导入一个模块相当于执行了这个模块
    26 # 如果导入了包,就会执行包里面的__init__.py
    27 # 如果在python2里面没有init就不能导入包,python3不需要init但是功能不健全
    28 # import glance
    29 # glance.api.policy.get()
    30 # # glance.cmd.manage.get()
    31 # glance.db.models.register_models("mysql")
    32 
    33 # 绝对路径,不能挪动,但是直观,常规来说最好还是用绝对导入
    34 # 相对路径,可以随意移动包,只要找得到包的位置,就可以用
    35     # 代价:不能在包里面使用模块,但是在外部是可以调用内部的
    36     # 我们很少会考虑去包内部进行操作
    37 
    38 # 最终极的解决方法,将父目录导入到path里面,这样父目录的路径就全部都可以获取到了。
  • 相关阅读:
    URL vs. HTML 录制模式
    多机联合产生负载
    浏览器打开URL的方式和加载过程
    与前端性能相关的头信息
    HTTP协议结构
    前端优化
    前端性能测试工具
    Apache 服务器
    java回调机制
    不允许用大于号小于号,比较任意两个数字大小
  • 原文地址:https://www.cnblogs.com/shijieli/p/9913180.html
Copyright © 2011-2022 走看看