python 利用from ... import * 的特性实现文件的覆盖

在Python中, 如果使用 from module import * 这样方式进行导包, 就会把module模块里所有的变量导入进来, 并且可以直接使用(其实导包时 module 模块已经被从头到尾执行一遍了), 但是如果当前文件存在和模块里相同的变量名称, 那么就会使用当前文件的变量值, 在项目中可以利用这个特性, 将配置文件进行拆分, 然后进行按序的导入, 从而实现开发环境和生产环境相同配置项不同值的变量覆盖.

 

tes1.py文件中

a = 1

test2.py文件中

from test1 import *
a=2 b=3

test3.py文件中

from test2 import *
print(a)
print(b)

执行test3.py文件,输出的结果为:

2
3

 

posted @ 2018-12-04 22:40  lowmanisbusy  阅读(594)  评论(0编辑  收藏  举报