我有三个文件:
globals.py:
value = None
reader.py:
from globals import *
def read_global():
print(value)
changer.py:
from globals import *
from reader import *
def change_global():
global value
value = 1
change_global()
read_global()
我希望对"read_global“的调用会打印1,但是值None会被打印出来。
为什么是这种情况?为什么&
如何从其他.py文件继承全局变量?
示例:
globals.py
test = 'testValue'
index.py
from globals import *
def setGlobals():
global test
test = 'new Value' # Setting new value to project global
setGlobals()
help.py
from globals import *
print test # Should print out 'new Value', but it p
我试图在一些函数中声明一些全局变量,并将包含这些函数的文件导入到另一个函数中。但是,我发现运行第二个文件中的函数不会创建全局变量。我尝试创建另一个同名的变量,但当我打印出该变量时,它打印的是第二个文件的值,而不是全局值
globals.py
def default():
global value
value = 1
main.py
from globals import *
value = 0
def main():
default()
print value
if __name__=='__main__':
main()
这将打印0。
我正在尝试从另一个python文件导入变量。
a.py -要导入
text="Hello, world"
print("imported")
b.py -工作,但我不能有静态名称a
from a import *
print(text)
c.py -不工作
import importlib
X = "a"
try:
text = ""
i = importlib.import_module(X)
print(i)
print(text)
except ImportError as err:
我可以运行API.py,但不能运行同一目录中的APP.py。错误是"NameError:名称'a‘未定义“。global()真的是全局的吗? API.py: class Entity():
def __init__(self,name,value):
globals()[name]=value
if __name__ == '__main__':
Entity('a',1)
print(a) APP.py from API import Entity
if __name__ == '__mai
我的python代码有下面的文件夹结构,我使用的是Python3。 python_lib/
model_driver/
__init__.py
globals.py
sb_driver.py
test_driver.py 在test_driver.py中,我已经导入了模块,如下所示 from .sb_driver import*
from .globals import * 当我在test_driver.py中导入sb_friver.py时,会出现以下错误。 ModuleNotFoundError: No m
我有个文件叫
server.py
另一个叫constants.py
constants.py
与server.py的级别相同。
以下是我正在做的事情:
server.py
import constants
def hello_world():
print(BUCKET_NAME)
constants.py
BUCKET_NAME = 'uw-note-share'
我发现了一个错误:
NameError: global name 'BUCKET_NAME' is not defined
即使我是正当地进口。有什么问题吗?