python如何引用其他模块中类的方法中的变量?

2024-11-29 11:38:10
推荐回答(4个)
回答1:

没法实现。
原因:
你的tmp,只是class a中的一个函数fun内的临时变量
所以无法直接被外部调用。
并且只有fun函数执行时才存在,函数结束时,就不存在了。

关于变量的作用范围,你可以参考:
【整理】Python中变量的作用域(variable scope)

想要可以被调用,可以试试:
改为:

#A.py
Class a()
tmp='123'
def fun()
。。。。。。

然后再去:

import A
print A.tmp

注意:
此时,tmp就是class a中的全局变量了。

回答2:

你的原始代码有若干语法错误,现已帮你修正并做好注释,参考下列代码:

# -*- coding: cp936 -*-
#A.py
class a(): #后面要有冒号
tmp='123' #直接在a类里定义tmp变量,不用写方法

# -*- coding: cp936 -*-
#B.py
import A #导入A模块
class b(): #后面要有冒号
def fun1(self): #类方法要有一个默认self参数
print A.a.tmp #输出A模块中a类的tmp值
tb=b() #需要把b类实例化,才可以使用里面的fun1方法
tb.fun1() #直接输出tmp值
A.a.tmp='321' #修改tmp的值
tb.fun1() #看到tmp值已被修改

input('完成,按任意键退出')

以上代码在python2.6环境测试通过
希望对你有所帮助~

回答3:

(1)方法1

import 模块
模块.变量名

(2)方法2

from 模块 import 变量名

回答4:

import xx 然后就可以通过xx.yy来使用,如xx.yy='abc' 进行修改