跨多个文件导入模块的行为

问题描述 投票:0回答:0

我很熟悉python中所有import语句只执行一次的事实。如果需要重新加载,可以手动完成。这已在 this SO 答案中进行了总结。但是,我无法理解以下导入语句的行为。

我有一个

config.py
文件,其中包含以下行:

x = 2

现在,在 python 脚本中

script_1.py
,我有以下内容:

import config
import script_2
config.x = 5
print (config.x)  # Output: 5

script_2.print_config() #Output: 5

script_2.py
是这样的:

import config
def print_config():
    print (config.x)

config.x=5
语句如何更新函数
script_2
的函数(
script_2.print_config()
) 中的值。我在这里错过了什么?

python-3.x import overwrite
© www.soinside.com 2019 - 2024. All rights reserved.