导入类未定义的全局名称

时间:2012-04-13 03:57:37

标签: python

sample1.py

class1:

    def function(self): 

        dbcursor.execute('UPDATE Table')

main.py

from sample1 import class1

inventoryDb = inventory.connect('sample.db')

dbcursor = inventoryDb.cursor()

class = class1()

class.function()
  
    

NameError:未定义全局名称“dbcursor”

  

这里导致错误的原因是什么?而且,如何解决?谢谢!

1 个答案:

答案 0 :(得分:1)

dbcursor仅在main.py中定义。为什么不将它作为参数传递给sample1.py中的函数?像

这样的东西
def function(self, dbcursor):
    dbcursor.execute('UPDATE Table')

class_ = class1()
inventoryDb = inventory.connect('sample.db')
class_.function(inventoryDb.cursor())