在Python中从内部类函数调用全局函数

在Python中从内部类函数调用全局函数,python,python-2.7,Python,Python 2.7,这是我代码的要点 def global_func(text): ..do something with text.. class Data(): def inner_func(some_text): # do something analysed_data = global_func("something") # do something else 我已经问了很多问题,但都是关于从另一个类调用一个类函数的。我只想从内部类调用一个全局函数 问题是我无法从内部函数

这是我代码的要点

def global_func(text):
  ..do something with text..

class Data():
  def inner_func(some_text):
    # do something
    analysed_data = global_func("something")
    # do something else
我已经问了很多问题,但都是关于从另一个类调用一个类函数的。我只想从内部类调用一个全局函数

问题是我无法从内部函数访问全局函数


如何实现它?

只要您使用类内函数发送
self
,应该没有问题。例如,这可以起到以下作用:

def global_func(text):
  print("Global function prints %s" % text)

class Data():
  def inner_func(self):
    # do something
    analysed_data = global_func("something")
    # do something else

Data().inner_func()

是的,你能做到

def addOne(x):
    return x+1
class Number():
    def __init__(self, value):
        self.value = value
    def printAddedValue(self,x):
        print("Value inside is: ", self.value)
        print("Here we called the global function")
        print(addOne(x))

num = Number(3)
num.printAddedValue(6)
输出:

Value inside is:  3
Here we called the global function
7

... 就像你有它一样。你可以用你在(不完整的)代码片段中的方式来调用全局函数。您遇到的详细问题是什么?寻求调试帮助的问题(“为什么此代码不工作?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现此问题所需的最短代码。没有明确答案的问题。如果内部函数使用参数呢?那么您只需在self之后应用参数。如果您一直遇到类似的问题,请查看此项: