Tim*_*ijk 3 python import module packages
假设我们有一个模块m:
var = None
def get_var():
return var
def set_var(v):
var = v
Run Code Online (Sandbox Code Playgroud)
这将无法按预期工作,因为set_var()不会存储v在模块范围内var.它将创建一个局部变量var.
所以我需要一种m从内部引用模块的方法set_var(),它本身就是模块的成员m.我该怎么做?
Jef*_*rth 10
def set_var(v):
global var
var = v
Run Code Online (Sandbox Code Playgroud)
global关键字允许您在函数中从内部更改全局变量.
正如Jeffrey Aylesworth的回答所示,您实际上并不需要参考本地模块来实现OP的目标.该global关键字可以达到这个目的.
但是为了回答OP标题,如何在Python中引用本地模块?:
import sys
var = None
def set_var(v):
sys.modules[__name__].var = v
def get_var():
return var
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
720 次 |
| 最近记录: |