假设您在模块中定义函数(def func)和变量(var =)。
当你将该模块导入main.py时,该函数会继承(即可以使用)但该变量不会延续(即你必须在main.py中重新分配var才能使用它在main.py)。
这是否有原因发生?并且有解决方法吗?
答案 0 :(得分:0)
将导入模块范围中的所有函数和变量。如果变量已初始化或分配给函数内部,则在执行该函数之前,您可能看不到该值。要确保获得变量的最新值,您可能必须使用Gemfile
而不仅仅是# Gemfile
platform :mswin, :mingw, :x64_mingw do
gem "tzinfo-data"
gem "win32_api"
end
。
我们假设您有两个源文件t1.py和t2.py
module_name.variable_name
variable_name
t1.py
v1 = 10
def f1():
global v1
v1 = 11
如果你运行t2.py,你仍会看到10.但是如果你改变t2.py如下:
t2.py
你会看到11。
还有一个额外的转折点。如果v1是列表或字典(或对象),则不需要额外的from t1 import f1, v1
f1()
print(v1)
限定符。它们通过引用访问,因此即使没有它,您也会看到该值。